Software Engineer Interview Questions

Review this list of 467 software engineer interview questions and answers verified by hiring managers and candidates.
  • Amazon logoAsked at Amazon 
    Software Engineer
    System Design
  • Software Engineer
    System Design
  • Amazon logoAsked at Amazon 
    Video answer for 'Describe an experience working in a cross-functional team.'
    Software Engineer
    Behavioral
    +3 more
  • Dropbox logoAsked at Dropbox 

    "performance issues and sudden spikes on input requests by scaling techniques and optimization."

    Srini K. - "performance issues and sudden spikes on input requests by scaling techniques and optimization."See full answer

    Software Engineer
    Technical
    +5 more
  • Amazon logoAsked at Amazon 
    +3

    " The Situation A few months ago, our trading platform started experiencing significant latency issues during peak trading hours. This latency was affecting our ability to process real-time market data and execute trades efficiently, potentially leading to substantial financial losses and missed opportunities. Identifying the Problem The first step was to identify the root cause of the latency. I organized a team meeting with our data engineers, DevOps, and network specialists to gather"

    Scott S. - " The Situation A few months ago, our trading platform started experiencing significant latency issues during peak trading hours. This latency was affecting our ability to process real-time market data and execute trades efficiently, potentially leading to substantial financial losses and missed opportunities. Identifying the Problem The first step was to identify the root cause of the latency. I organized a team meeting with our data engineers, DevOps, and network specialists to gather"See full answer

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

  • Apple logoAsked at Apple 
    +15

    "function isValid(s) { const stack = []; for (let i=0; i < s.length; i++) { const char = s.charAt(i); if (['(', '{', '['].includes(char)) { stack.push(char); } else { const top = stack.pop(); if ((char === ')' && top !== '(') || (char === '}' && top !== '{') || (char === ']' && top !== '[')) { return false; } } } return stack.length === 0"

    Tiago R. - "function isValid(s) { const stack = []; for (let i=0; i < s.length; i++) { const char = s.charAt(i); if (['(', '{', '['].includes(char)) { stack.push(char); } else { const top = stack.pop(); if ((char === ')' && top !== '(') || (char === '}' && top !== '{') || (char === ']' && top !== '[')) { return false; } } } return stack.length === 0"See full answer

    Software Engineer
    Data Structures & Algorithms
    +4 more
  • "python: def justifywords(wordslist, width): result = [] currlinechar_count = 0 curr_words = [] for word in words_list: if curr_words: space_needed = len(word) + 1 # Space needed for the word and a preceding space else: space_needed = len(word) if currlinecharcount + spaceneeded > width: result.append(' '.join(curr_words)) curr_words = [word] currlinechar_count = len("

    Anonymous Unicorn - "python: def justifywords(wordslist, width): result = [] currlinechar_count = 0 curr_words = [] for word in words_list: if curr_words: space_needed = len(word) + 1 # Space needed for the word and a preceding space else: space_needed = len(word) if currlinecharcount + spaceneeded > width: result.append(' '.join(curr_words)) curr_words = [word] currlinechar_count = len("See full answer

    Software Engineer
    Coding
  • Amazon logoAsked at Amazon 
    +4

    "this assumes that the dependency among courses is in a growing order: 0 -> 1 -> 2 -> ... if not, then the code will not work"

    Gabriele G. - "this assumes that the dependency among courses is in a growing order: 0 -> 1 -> 2 -> ... if not, then the code will not work"See full answer

    Software Engineer
    Data Structures & Algorithms
    +4 more
  • Apple logoAsked at Apple 

    "You are working on a SaaS product that currently uses Basic Authentication (username/password) for API and application access. The security and compliance teams have mandated moving to a more secure, modern authentication mechanism — OIDC (OpenID Connect). Design the authentication system migration from Basic Authentication to OIDC. Discuss the architecture changes, the migration approach, and the rollout strategy. What are the technical challenges, impacts on customers, backward compatibility"

    Anonymous Stork - "You are working on a SaaS product that currently uses Basic Authentication (username/password) for API and application access. The security and compliance teams have mandated moving to a more secure, modern authentication mechanism — OIDC (OpenID Connect). Design the authentication system migration from Basic Authentication to OIDC. Discuss the architecture changes, the migration approach, and the rollout strategy. What are the technical challenges, impacts on customers, backward compatibility"See full answer

    Software Engineer
    System Design
  • "While all branches should ideally be tested, some are more critical than others based on the following factors: A. High-Risk or Business-Critical Logic Branches that handle authentication & authorization (e.g., login, role-based access control) Financial transactions or payment processing logic (e.g., tax calculations, refunds, invoice generation) Security-related branches (e.g., encryption/decryption, token verification) B. Error Handling & Exception Paths Branches that deal with error conditi"

    Adesegun K. - "While all branches should ideally be tested, some are more critical than others based on the following factors: A. High-Risk or Business-Critical Logic Branches that handle authentication & authorization (e.g., login, role-based access control) Financial transactions or payment processing logic (e.g., tax calculations, refunds, invoice generation) Security-related branches (e.g., encryption/decryption, token verification) B. Error Handling & Exception Paths Branches that deal with error conditi"See full answer

    Software Engineer
    System Design
  • Microsoft logoAsked at Microsoft 

    "Ask my manager how urgent is my task and why it should be done if needed. If its urgent enough and I can’t wait, communicate with team explaining what goals going to be achieved by implementing and why its important"

    Anonymous Starfish - "Ask my manager how urgent is my task and why it should be done if needed. If its urgent enough and I can’t wait, communicate with team explaining what goals going to be achieved by implementing and why its important"See full answer

    Software Engineer
    Behavioral
  • Visa logoAsked at Visa 
    Software Engineer
    System Design
  • Visa logoAsked at Visa 

    "There are couple of reasons for it - Kind of role : Its a product manager role loaded with analytical work, So working with data in stringent regulatory guideline make it more exciting and thrilling. Location & industry is like - Cherry on the cake, Bangalore weather and BFI is at its all time peak as people spending behavior is changing continuously, it will be interesting to see big giants like visa are managing it."

    Nidhi S. - "There are couple of reasons for it - Kind of role : Its a product manager role loaded with analytical work, So working with data in stringent regulatory guideline make it more exciting and thrilling. Location & industry is like - Cherry on the cake, Bangalore weather and BFI is at its all time peak as people spending behavior is changing continuously, it will be interesting to see big giants like visa are managing it."See full answer

    Software Engineer
    Behavioral
    +4 more
  • Meta (Facebook) logoAsked at Meta (Facebook) 
    +1

    "public class CircularBuffer { private T[] buffer; private int head; private int tail; private int size; private final int capacity; public CircularBuffer(int capacity) { this.capacity = capacity; this.buffer = (T[]) new Object[capacity]; this.head = 0; this.tail = 0; this.size = 0; } public void enqueue(T item) { if (isFull()) { throw new IllegalStateException("Buffer is full"); } buf"

    Vidhyadhar V. - "public class CircularBuffer { private T[] buffer; private int head; private int tail; private int size; private final int capacity; public CircularBuffer(int capacity) { this.capacity = capacity; this.buffer = (T[]) new Object[capacity]; this.head = 0; this.tail = 0; this.size = 0; } public void enqueue(T item) { if (isFull()) { throw new IllegalStateException("Buffer is full"); } buf"See full answer

    Software Engineer
    Coding
    +1 more
  • Amazon logoAsked at Amazon 
    +1

    "delete"

    David P. - "delete"See full answer

    Software Engineer
    Behavioral
    +1 more
  • Adobe logoAsked at Adobe 
    Video answer for 'Move all zeros to the end of an array.'
    +43

    "Initialize left pointer: Set a left pointer left to 0. Iterate through the array: Iterate through the array from left to right. If the current element is not 0, swap it with the element at the left pointer and increment left. Time complexity: O(n). The loop iterates through the entire array once, making it linear time. Space complexity: O(1). The algorithm operates in-place, modifying the input array directly without using additional data structures. "

    Avon T. - "Initialize left pointer: Set a left pointer left to 0. Iterate through the array: Iterate through the array from left to right. If the current element is not 0, swap it with the element at the left pointer and increment left. Time complexity: O(n). The loop iterates through the entire array once, making it linear time. Space complexity: O(1). The algorithm operates in-place, modifying the input array directly without using additional data structures. "See full answer

    Software Engineer
    Data Structures & Algorithms
    +4 more
  • Google logoAsked at Google 
    +6

    "I would first call out the two types of Google Doodles that are published. First would be the static doodle which just shows a picture, and users can get more information on it by hovering on it or clicking on it. Second would be the dynamic google doodles which are either short videos or games through which users engage a bit more. My top 3 metrics that covers both would be: Click-through rate and post-click CTR - Although different metrics, I clubbed them since they fall under similar"

    Rahul R. - "I would first call out the two types of Google Doodles that are published. First would be the static doodle which just shows a picture, and users can get more information on it by hovering on it or clicking on it. Second would be the dynamic google doodles which are either short videos or games through which users engage a bit more. My top 3 metrics that covers both would be: Click-through rate and post-click CTR - Although different metrics, I clubbed them since they fall under similar"See full answer

    Software Engineer
    Analytical
    +1 more
  • Meta (Facebook) logoAsked at Meta (Facebook) 

    "Functional Requirement Upload the file of any type POST v1/drive Upload the another version of file. POST v1/drive/{fileId} Delete the file. DELETE v1/drive/{fileId} Share the file. POST v1/drive/{fileId} Control the access level of the file. Provide the file accessibility following the directory structure. Non Functional Requirement Reliability: The file along with its versions uploaded should be"

    Vikash A. - "Functional Requirement Upload the file of any type POST v1/drive Upload the another version of file. POST v1/drive/{fileId} Delete the file. DELETE v1/drive/{fileId} Share the file. POST v1/drive/{fileId} Control the access level of the file. Provide the file accessibility following the directory structure. Non Functional Requirement Reliability: The file along with its versions uploaded should be"See full answer

    Software Engineer
    System Design
    +1 more
  • Adobe logoAsked at Adobe 
    Video answer for 'Find the median of two sorted arrays.'
    Software Engineer
    Data Structures & Algorithms
    +4 more
  • Amazon logoAsked at Amazon 

    "In 2019, I was given a very important problem to solve. In a team of 3 we had to build a mobility assist device. The customer segment we would go for was something we could decide. The project was very close to me as I had lost someone I loved because of cancer and I saw how reduced mobility was a huge pain point in not being able to do physical activities. My team could only think of elderly people as the main target market. As the Head of Product what I did was: 1) I helped them dive even d"

    Soumya S. - "In 2019, I was given a very important problem to solve. In a team of 3 we had to build a mobility assist device. The customer segment we would go for was something we could decide. The project was very close to me as I had lost someone I loved because of cancer and I saw how reduced mobility was a huge pain point in not being able to do physical activities. My team could only think of elderly people as the main target market. As the Head of Product what I did was: 1) I helped them dive even d"See full answer

    Software Engineer
    Behavioral
    +2 more
Showing 121-140 of 467