Interview Question Bank

Software Engineer
Interview Questions

18 essential questions across technical, system design, behavioral, and culture categories. Each includes scoring guidance and follow-up questions.

SMSarah MitchellSenior Software Engineer92%Data structures & algorithmsExplain time complexity of quicksortStrong answerSystem design approachDesign a URL shortening serviceGood answerProblem-solving & initiativeDescribe a complex bug you solvedExcellentRecommendation:Strong HireScore BreakdownTechnical Skills88%System Design76%Behavioral94%Culture FitQuestion Bank18 questions across 4 categoriesArray manipulationRate limiter designTeam conflict resolution

All Questions

18 questions

main.jsconst arr = [];arr.sort((a,b)=> a - b);// O(n log n)

A stack is LIFO (last in, first out) like a stack of plates. A queue is FIFO (first in, first out) like a line at a store. Use stacks for undo operations, recursion, and parsing. Use queues for scheduling, breadth-first search, and handling requests in order.

Dig deeper

  • How would you implement a queue using two stacks?
  • What's the time complexity of operations on each?
main.jsconst arr = [];arr.sort((a,b)=> a - b);// O(n log n)

SQL databases are relational - structured tables with defined schemas, great for complex queries and transactions. NoSQL databases are flexible - document, key-value, or graph-based, ideal for unstructured data and horizontal scaling.

Dig deeper

  • When would you use MongoDB over PostgreSQL?
main.jsconst arr = [];arr.sort((a,b)=> a - b);// O(n log n)

DNS lookup finds the IP address. Browser opens a TCP connection (TLS for HTTPS). Sends HTTP request. Server processes and returns response. Browser parses HTML, fetches resources, builds DOM, applies CSS, executes JavaScript, renders the page.

Dig deeper

  • How does caching affect this?
  • What's the role of CDNs?
main.jsconst arr = [];arr.sort((a,b)=> a - b);// O(n log n)

First, analyze with EXPLAIN to understand the execution plan. Check for missing indexes on WHERE and JOIN columns. Look for N+1 queries. Consider denormalization for read-heavy data. Add caching for frequently accessed data.

Dig deeper

  • When can indexes hurt performance?
main.jsconst arr = [];arr.sort((a,b)=> a - b);// O(n log n)

REST uses HTTP methods semantically: GET (read), POST (create), PUT/PATCH (update), DELETE (remove). URLs represent resources (/users/123). Stateless requests. Proper status codes. Versioning for backwards compatibility.

Dig deeper

  • What's the difference between PUT and PATCH?
main.jsconst arr = [];arr.sort((a,b)=> a - b);// O(n log n)

Big O describes how algorithm performance scales with input size. O(1) is constant. O(n) is linear. O(log n) is logarithmic. O(n²) is quadratic. Focus on the dominant term for large inputs.

Dig deeper

  • What's the complexity of quicksort?
APIGatewayRedisCacheDatabase

Generate unique short codes (base62 encoding or random string with collision check). Store mapping in database. Redirect by looking up full URL. Scale with read replicas and caching (URLs rarely change). Consider analytics, expiration, and abuse prevention.

Dig deeper

  • How do you handle 1 billion URLs?
APIGatewayRedisCacheDatabase

Token bucket or sliding window algorithm. Track requests per user/IP in Redis with TTL. Return 429 when limit exceeded. Consider: per-endpoint limits, burst allowance, distributed counting, and graceful degradation.

Dig deeper

  • How do you rate limit across multiple servers?
APIGatewayRedisCacheDatabase

WebSockets for real-time bidirectional communication. Message queue for delivery guarantees. Database for persistence. Presence service for online status. Push notifications for offline users.

Dig deeper

  • How do you ensure messages arrive in order?
APIGatewayRedisCacheDatabase

Two approaches: Push (fan-out on write) - precompute feeds when posts are created. Pull (fan-out on read) - compute feed on request. Hybrid works best: push for most users, pull for celebrities.

Dig deeper

  • How do you handle users with millions of followers?
STAR MethodSituation ✓Task ✓

Look for: Did they voice concerns respectfully? Did they gather data to support their position? Could they commit once a decision was made? Red flag if they can't give an example or blame others.

Dig deeper

  • What was the outcome?
  • Would you handle it differently now?
STAR MethodSituation ✓Task ✓

Look for: Structured learning approach. Resourcefulness in finding information. Practical application to cement knowledge. Self-awareness about knowledge gaps.

Dig deeper

  • What resources do you typically use?
STAR MethodSituation ✓Task ✓

Look for: Ownership without excessive blame. Quick action to mitigate impact. Clear communication with stakeholders. Systemic fixes to prevent recurrence.

Dig deeper

  • What did you do immediately after?
STAR MethodSituation ✓Task ✓

Look for: Framework for prioritization (impact, urgency). Communication with stakeholders about tradeoffs. Willingness to push back when necessary. Ability to delegate or ask for help.

Dig deeper

  • Give me a specific example.
Team SyncJDAMSK

Use this to assess alignment with your actual work. No wrong answer - but mismatch predicts unhappiness. Probe for self-awareness about preferences.

Dig deeper

  • How do you handle projects that don't excite you?
Team SyncJDAMSK

Look for: Context-dependent thinking. Understanding that 'it depends' on stakes and reversibility. Recognition that perfect is the enemy of good.

Dig deeper

  • Give an example where you chose speed.
Team SyncJDAMSK

Look for: Balance of thoroughness and respect. Focus on important issues over nitpicks. Teaching mindset. Openness to receiving feedback.

Dig deeper

  • What do you look for first?
Team SyncJDAMSK

Look for: Investment in others' growth. Patience and adapted approach. Specific examples of how they helped. Understanding that mentoring benefits both parties.

Dig deeper

  • What was challenging about it?

Let AI conduct these
interviews for you

Prepzo's AI interviews ask consistent questions, provide detailed scorecards, and work 24/7. No scheduling. No bias.

Continue reading