Skip to main content

Top Software Engineer Interview Questions

Review this list of 715 Software Engineer interview questions and answers verified by hiring managers and candidates.
  • Amazon logoAsked at Amazon 
    13 answers
    Video answer for 'Tell me about a time when you proposed an idea that was not agreed on.'
    +10

    "Disagreement --> persistent ---> more data insights ---> positive relationship ---> mentor/trust"

    Sam - "Disagreement --> persistent ---> more data insights ---> positive relationship ---> mentor/trust"See full answer

    Software Engineer
    Behavioral
    +2 more
  • Amazon logoAsked at Amazon 
    17 answers
    +14

    "I will divide my answer in 2 parts: Process I use for managing risks in any Project I will explain a real life situation where a Risk occurred and how I managed it Process for Risk Management can be broken down into 3 parts: Risk Identification: Risk identification is a team effort and is an ongoing process that happens throughout the Project. Technical Risks are usually identified during design/build/testing stage. I maintain a Risk register document to capture all the risks identified"

    Saket S. - "I will divide my answer in 2 parts: Process I use for managing risks in any Project I will explain a real life situation where a Risk occurred and how I managed it Process for Risk Management can be broken down into 3 parts: Risk Identification: Risk identification is a team effort and is an ongoing process that happens throughout the Project. Technical Risks are usually identified during design/build/testing stage. I maintain a Risk register document to capture all the risks identified"See full answer

    Software Engineer
    Behavioral
    +4 more
  • Adobe logoAsked at Adobe 
    44 answers
    +39

    "Was this for an entry level engineer role?"

    Yeshwanth D. - "Was this for an entry level engineer role?"See full answer

    Software Engineer
    Data Structures & Algorithms
    +4 more
  • Amazon logoAsked at Amazon 
    11 answers
    +8

    "In my time at Snapp! I was in charge of communicating the product backlog to our CEO. We had a shared Jira board that he had access to and I made specifically for him. One day he saw me in the office and said he doesn’t know anything about our backlog and that’s because I failed to communicate with him. I got upset at first because of the fact that I made the dashboard exclusively for him. But I tried to ask questions to understand his point of view in depth. He then mentioned he doesn't have t"

    Ra R. - "In my time at Snapp! I was in charge of communicating the product backlog to our CEO. We had a shared Jira board that he had access to and I made specifically for him. One day he saw me in the office and said he doesn’t know anything about our backlog and that’s because I failed to communicate with him. I got upset at first because of the fact that I made the dashboard exclusively for him. But I tried to ask questions to understand his point of view in depth. He then mentioned he doesn't have t"See full answer

    Software Engineer
    Behavioral
    +9 more
  • 76 answers
    Video answer for 'Employee Earnings.'
    +69

    "select e.firstname as firstname, m.salary as manager_salary from employees e join employees m on e.manager_id = m.id where e.salary > m.salary; `"

    Ravi K. - "select e.firstname as firstname, m.salary as manager_salary from employees e join employees m on e.manager_id = m.id where e.salary > m.salary; `"See full answer

    Software Engineer
    Coding
    +4 more
  • 🧠 Want an expert answer to a question? Saving questions lets us know what content to make next.

  • Freshworks logoAsked at Freshworks 
    12 answers
    Video answer for 'Design Twitter.'
    +9

    "In the API design, the interviewer is switching between RPC style (operation based endpoints) and REST style (resource oriented). Sticking to one convention and explaining why it is preferred over the other e.g. REST if the twitter domain maps nicely to resources e.g. /tweet or /follower or /user would help to create a more consistent and unified API. It would make it easier for clients to integrate with the API as well."

    dreamingincode - "In the API design, the interviewer is switching between RPC style (operation based endpoints) and REST style (resource oriented). Sticking to one convention and explaining why it is preferred over the other e.g. REST if the twitter domain maps nicely to resources e.g. /tweet or /follower or /user would help to create a more consistent and unified API. It would make it easier for clients to integrate with the API as well."See full answer

    Software Engineer
    System Design
    +2 more
  • Amazon logoAsked at Amazon 
    15 answers
    Video answer for 'Design a reservation and payment system for a parking garage.'
    +12

    "Since there is a need for the data to be accurate and consistent without any latency to allocate a spot, can't the data be synchronously synced to replicas after every write as the number of writes are not many per min, instead of read lock phenomena Let me know if i am on a wrong thought here."

    Chitapuram N. - "Since there is a need for the data to be accurate and consistent without any latency to allocate a spot, can't the data be synchronously synced to replicas after every write as the number of writes are not many per min, instead of read lock phenomena Let me know if i am on a wrong thought here."See full answer

    Software Engineer
    System Design
    +2 more
  • Google logoAsked at Google 
    11 answers
    Video answer for 'Redesign the airport experience.'
    +8

    "I would like to speak loud to narrow the scope of this question so I can be effective in identifying a solution to the problem on hand. Hope that is OK. You mentioned, “Re-design the airport experience”. Is there a goal for this re-design exercise? Some top goals that come to my mind are the following. Please guide me so I can set it and we can proceed from there. “Increase the number of passengers who travel to and from this airport” “Improve customer satisfaction” **“Get in"

    Tara J. - "I would like to speak loud to narrow the scope of this question so I can be effective in identifying a solution to the problem on hand. Hope that is OK. You mentioned, “Re-design the airport experience”. Is there a goal for this re-design exercise? Some top goals that come to my mind are the following. Please guide me so I can set it and we can proceed from there. “Increase the number of passengers who travel to and from this airport” “Improve customer satisfaction” **“Get in"See full answer

    Software Engineer
    Product Design
    +1 more
  • Adobe logoAsked at Adobe 
    8 answers
    +5

    "One of the most challenging situations was joining a new startup to realize that they did not figure out their core product and that customers were dissatisfied and leaving in droves. I worked together with the leaders to understand the core issue and the reasons that the customers were leaving. Then together with the team, we set out to map out those core issues and the gaps that we had in our product. We then worked towards designing a new solution to address those gaps and build an MVP. W"

    WaterBuffalo - "One of the most challenging situations was joining a new startup to realize that they did not figure out their core product and that customers were dissatisfied and leaving in droves. I worked together with the leaders to understand the core issue and the reasons that the customers were leaving. Then together with the team, we set out to map out those core issues and the gaps that we had in our product. We then worked towards designing a new solution to address those gaps and build an MVP. W"See full answer

    Software Engineer
    Behavioral
    +5 more
  • Amazon logoAsked at Amazon 
    9 answers
    +6

    "I use a data driven approach by ensuring there is a deep-dive on all alternatives. My approach to tradeoffs is around how to achieve the customer experience needed. I ensure there is an immediate path to green for a solution and a follow-up solution addressing the problem rightly."

    Syed I. - "I use a data driven approach by ensuring there is a deep-dive on all alternatives. My approach to tradeoffs is around how to achieve the customer experience needed. I ensure there is an immediate path to green for a solution and a follow-up solution addressing the problem rightly."See full answer

    Software Engineer
    Behavioral
    +1 more
  • Discord logoAsked at Discord 
    6 answers
    +3

    "Conflict is a GREAT opportunity to really demonstrate that you care about someone and, through effective conflict resolution, build stronger authentic relationships with the people you work with. When faced with conflict, I prioritize understanding all perspectives involved. I start by actively listening to the other parties: asking clarifying questions to pinpoint the source of the conflict, reflecting back what I'm hearing to make sure I understand them correctly, and ultimately identify"

    Zakery K. - "Conflict is a GREAT opportunity to really demonstrate that you care about someone and, through effective conflict resolution, build stronger authentic relationships with the people you work with. When faced with conflict, I prioritize understanding all perspectives involved. I start by actively listening to the other parties: asking clarifying questions to pinpoint the source of the conflict, reflecting back what I'm hearing to make sure I understand them correctly, and ultimately identify"See full answer

    Software Engineer
    Behavioral
    +5 more
  • Anthropic logoAsked at Anthropic 
    10 answers
    Video answer for 'Design a web crawler.'
    +7

    "I think, robots.txt file is provided by websites which web-crawler is crawling. Am I wrong somewhere or missing some context?"

    S V. - "I think, robots.txt file is provided by websites which web-crawler is crawling. Am I wrong somewhere or missing some context?"See full answer

    Software Engineer
    System Design
    +1 more
  • Google logoAsked at Google 
    15 answers
    +11

    "So here is what I would do if I had to designing a system to log messages in order involves several considerations, including the choice of software, hardware, storage mechanisms, and scalability. Here’s how I would approach this: 1. Requirements Analysis: Message Format: Define the structure of the messages to log (e.g., text, JSON). Volume: Estimate the expected volume of messages per second. This will help in determining the infrastructure requirements. **Order Guarantee"

    Theodore (teddy) W. - "So here is what I would do if I had to designing a system to log messages in order involves several considerations, including the choice of software, hardware, storage mechanisms, and scalability. Here’s how I would approach this: 1. Requirements Analysis: Message Format: Define the structure of the messages to log (e.g., text, JSON). Volume: Estimate the expected volume of messages per second. This will help in determining the infrastructure requirements. **Order Guarantee"See full answer

    Software Engineer
    System Design
  • Amazon logoAsked at Amazon 
    8 answers
    +5

    "t"

    Srikhar S. - "t"See full answer

    Software Engineer
    Behavioral
    +4 more
  • Amazon logoAsked at Amazon 
    Add answer
    Video answer for 'Describe an experience working in a cross-functional team.'
    Software Engineer
    Behavioral
    +4 more
  • Amazon logoAsked at Amazon 
    8 answers
    +5

    "In order to earn team members trust you need to show - 1- You need to show them you trust them. Treat others the way you wanted to be treated. 2- Do what you say. Keep commitments. 3- Listen 4- Admit when you make mistakes 5- Consistently make good decisions "

    Ritu G. - "In order to earn team members trust you need to show - 1- You need to show them you trust them. Treat others the way you wanted to be treated. 2- Do what you say. Keep commitments. 3- Listen 4- Admit when you make mistakes 5- Consistently make good decisions "See full answer

    Software Engineer
    Behavioral
    +1 more
  • Booking.com logoAsked at Booking.com 
    8 answers
    Video answer for 'Design a metrics and logging service.'
    +1

    "For somebody who needs accessibility accommodation, this doesn't have a transcript so it is not useful to me."

    Shivastuti K. - "For somebody who needs accessibility accommodation, this doesn't have a transcript so it is not useful to me."See full answer

    Software Engineer
    System Design
    +2 more
  • Accenture logoAsked at Accenture 
    31 answers
    +26

    "We can use dictionary to store cache items so that our read / write operations will be O(1). Each time we read or update an existing record, we have to ensure the item is moved to the back of the cache. This will allow us to evict the first item in the cache whenever the cache is full and we need to add new records also making our eviction O(1) Instead of normal dictionary, we will use ordered dictionary to store cache items. This will allow us to efficiently move items to back of the cache a"

    Alfred O. - "We can use dictionary to store cache items so that our read / write operations will be O(1). Each time we read or update an existing record, we have to ensure the item is moved to the back of the cache. This will allow us to evict the first item in the cache whenever the cache is full and we need to add new records also making our eviction O(1) Instead of normal dictionary, we will use ordered dictionary to store cache items. This will allow us to efficiently move items to back of the cache a"See full answer

    Software Engineer
    Data Structures & Algorithms
    +6 more
  • Stripe logoAsked at Stripe 
    10 answers
    Video answer for 'Design a Distributed LRU Cache'
    +7

    "One good reason for using the doubly linked list is that to remove an accessed item in the list from its existing position say in the middle of the list and move it to the head, you need to update the previous node's next pointer and the next node's previous pointer. A singly linked list only has next pointers, so removing from the middle would require traversing from the head to find the previous node which requires O(n) time. A doubly linked list allows O(1) removal from any position because w"

    Javed S. - "One good reason for using the doubly linked list is that to remove an accessed item in the list from its existing position say in the middle of the list and move it to the head, you need to update the previous node's next pointer and the next node's previous pointer. A singly linked list only has next pointers, so removing from the middle would require traversing from the head to find the previous node which requires O(n) time. A doubly linked list allows O(1) removal from any position because w"See full answer

    Software Engineer
    System Design
    +1 more
  • Amazon logoAsked at Amazon 
    13 answers
    Video answer for 'Design a rate limiter.'
    +9

    "Rate Limiter is to limit the number of request from a particular IP Address. Rate limiter will block the IP address to reduce the load on server. It should be highly available and handle concurrent requests. Blocked IP addresses should be kept in a pool which is present in shared cache. We need to keep threshold value after it reaches threshold value it should start blocking IP address. All these ip address to be kept in No SQL DB. Batch will run that will clear the cache and delete all the bloc"

    Ashish G. - "Rate Limiter is to limit the number of request from a particular IP Address. Rate limiter will block the IP address to reduce the load on server. It should be highly available and handle concurrent requests. Blocked IP addresses should be kept in a pool which is present in shared cache. We need to keep threshold value after it reaches threshold value it should start blocking IP address. All these ip address to be kept in No SQL DB. Batch will run that will clear the cache and delete all the bloc"See full answer

    Software Engineer
    System Design
    +1 more
Showing 21-40 of 715
Exponent

Get updates in your inbox with the latest tips, job listings, and more.

Follow Us

Products
Courses
Interview Questions
Interview Experiences
Popular articles
Guides
Coaching
For Partners
Company
Exponent © 2026
Terms of Service | Privacy