Skip to main content

Software Engineer Interview Questions

Review this list of 593 Software Engineer interview questions and answers verified by hiring managers and candidates.
  • Adobe logoAsked at Adobe 
    Video answer for 'Design a typeahead box for a search engine.'
    +5

    "It would have been more interesting to focus on the system design rather than the Trie DS, Interviewee could have just mentioned the Trie and passed to things more important. Interviewee should have focused on the factors on which he wants to scale the API servers, popularity of the query parts ? region may be ? A hash of many factors ? Caches should have definitely be discussed, Cache eviction policies, Cache invalidation managements... Interviewee should have mentioned which kind of API pro"

    Aymen D. - "It would have been more interesting to focus on the system design rather than the Trie DS, Interviewee could have just mentioned the Trie and passed to things more important. Interviewee should have focused on the factors on which he wants to scale the API servers, popularity of the query parts ? region may be ? A hash of many factors ? Caches should have definitely be discussed, Cache eviction policies, Cache invalidation managements... Interviewee should have mentioned which kind of API pro"See full answer

    Software Engineer
    System Design
    +1 more
  • "def findfreetime(schedules): Step 1: Flatten the list of schedules into a single list of intervals all_intervals = [interval for schedule in schedules for interval in schedule] Handle edge case of an empty schedule if not all_intervals: return [] Step 2: Sort all intervals by their start time all_intervals.sort(key=lambda x: x[0]) Step 3: Merge overlapping intervals mergedbusy = [allintervals[0]] for currentstart, currentend in"

    Himanshu P. - "def findfreetime(schedules): Step 1: Flatten the list of schedules into a single list of intervals all_intervals = [interval for schedule in schedules for interval in schedule] Handle edge case of an empty schedule if not all_intervals: return [] Step 2: Sort all intervals by their start time all_intervals.sort(key=lambda x: x[0]) Step 3: Merge overlapping intervals mergedbusy = [allintervals[0]] for currentstart, currentend in"See full answer

    Software Engineer
    Coding
  • Software Engineer
    Behavioral
  • Amazon logoAsked at Amazon 

    "I started asking some questions regarding the constrains of the system: An antena is emitting a signal that says if the tagged device was out of the room where the interview was happening. I was able to decide which would be the schema for the Antena's message. The antena is sending the info of multiple users. The system doesn't need to push notification to the users when the user left the device behind. Upon reflection, this is what I recollected doing. I propuse the json schema a"

    Eduardo C. - "I started asking some questions regarding the constrains of the system: An antena is emitting a signal that says if the tagged device was out of the room where the interview was happening. I was able to decide which would be the schema for the Antena's message. The antena is sending the info of multiple users. The system doesn't need to push notification to the users when the user left the device behind. Upon reflection, this is what I recollected doing. I propuse the json schema a"See full answer

    Software Engineer
    System Design
  • Adobe logoAsked at Adobe 
    Video answer for 'Explain how to find a target sum in an array.'
    +5

    "// C++ program to print the count of // subsets with sum equal to the given value X #include using namespace std; // Recursive function to return the count // of subsets with sum equal to the given value int subsetSum(int arr[], int n, int i, int sum, int count) { // The recursion is stopped at N-th level // where all the subsets of the given array // have been checked if (i == n) { // Incrementing the count if sum is // equal to 0 and returning the count if (sum == 0)"

    Ajay U. - "// C++ program to print the count of // subsets with sum equal to the given value X #include using namespace std; // Recursive function to return the count // of subsets with sum equal to the given value int subsetSum(int arr[], int n, int i, int sum, int count) { // The recursion is stopped at N-th level // where all the subsets of the given array // have been checked if (i == n) { // Incrementing the count if sum is // equal to 0 and returning the count if (sum == 0)"See full answer

    Software Engineer
    Data Structures & Algorithms
    +1 more
  • 🧠 Want an expert answer to a question? Saving questions lets us know what content to make next.

  • Amazon logoAsked at Amazon 

    "We will not always have all the required data to make a decision quickly. We need to work with ambiguity effectively by tying up the available facts with intuition."

    Sankar S. - "We will not always have all the required data to make a decision quickly. We need to work with ambiguity effectively by tying up the available facts with intuition."See full answer

    Software Engineer
    Behavioral
    +1 more
  • Oracle logoAsked at Oracle 
    Software Engineer
    System Design
  • Apple logoAsked at Apple 
    +2

    "To answer this, I will focus my efforts on explaining the most common type of API used in most modern software development applications - the REST API. For the purpose of simplicity, I will also keep the topics of Authorization and Authentication out of the mix. In essence, an API is a group of logic that takes in a specific set of inputs and responds with a specific set of outputs. This is analogous to going to a drive-thru and placing an order for a meal. When you give an API a bunch of"

    Pathworks P. - "To answer this, I will focus my efforts on explaining the most common type of API used in most modern software development applications - the REST API. For the purpose of simplicity, I will also keep the topics of Authorization and Authentication out of the mix. In essence, an API is a group of logic that takes in a specific set of inputs and responds with a specific set of outputs. This is analogous to going to a drive-thru and placing an order for a meal. When you give an API a bunch of"See full answer

    Software Engineer
    System Design
    +3 more
  • +2

    "class Solution { public boolean isValid(String s) { // Time Complexity and Space complexity will be O(n) Stack stack=new Stack(); for(char c:s.toCharArray()){ if(c=='('){ stack.push(')'); } else if(c=='{'){ stack.push('}'); } else if(c=='['){ stack.push(']'); } else if(stack.pop()!=c){ return false; } } return stack.isEmpty(); } }"

    Kanishvaran P. - "class Solution { public boolean isValid(String s) { // Time Complexity and Space complexity will be O(n) Stack stack=new Stack(); for(char c:s.toCharArray()){ if(c=='('){ stack.push(')'); } else if(c=='{'){ stack.push('}'); } else if(c=='['){ stack.push(']'); } else if(stack.pop()!=c){ return false; } } return stack.isEmpty(); } }"See full answer

    Software Engineer
    Data Structures & Algorithms
    +2 more
  • Software Engineer
    Data Structures & Algorithms
    +1 more
  • "Context: While working as a Senior Systems Engineer at Indra on a project for BBVA, I was primarily responsible for building ETLs and optimizing data pipelines using Spark and Scala. Action: During a critical deployment phase, our QA lead had to leave unexpectedly due to a personal emergency. With no one available to manage testing coordination, I volunteered to step in — even though it wasn’t my formal responsibility. I quickly reviewed the test cases, communicated with stakeholders, an"

    Otto yhoda A. - "Context: While working as a Senior Systems Engineer at Indra on a project for BBVA, I was primarily responsible for building ETLs and optimizing data pipelines using Spark and Scala. Action: During a critical deployment phase, our QA lead had to leave unexpectedly due to a personal emergency. With no one available to manage testing coordination, I volunteered to step in — even though it wasn’t my formal responsibility. I quickly reviewed the test cases, communicated with stakeholders, an"See full answer

    Software Engineer
    Behavioral
  • "Why this seems like a cyber-security question?"

    El hassane B. - "Why this seems like a cyber-security question?"See full answer

    Software Engineer
    System Design
    +1 more
  • "Build a counter using queue, one queue per service ("a", "b") and one with just timestamps to get the overall load. Build rate limiter service using the counter and interviewer asked if there rate limiter might use a different instance of a counter"

    Chethan N. - "Build a counter using queue, one queue per service ("a", "b") and one with just timestamps to get the overall load. Build rate limiter service using the counter and interviewer asked if there rate limiter might use a different instance of a counter"See full answer

    Software Engineer
    Coding
  • Apple logoAsked at Apple 
    +20

    " function isValid(s) { const open = []; const matcherHash = { '(': ')', '{': '}', '[': ']' } for (let char of s){ if (matcherHash[char]){ open.push(char); } else { const pending = open.pop(); if (matcherHash[pending] === char){ continue; } else { return false; } } } return !open.length; } // debug your code below con"

    Amit K. - " function isValid(s) { const open = []; const matcherHash = { '(': ')', '{': '}', '[': ']' } for (let char of s){ if (matcherHash[char]){ open.push(char); } else { const pending = open.pop(); if (matcherHash[pending] === char){ continue; } else { return false; } } } return !open.length; } // debug your code below con"See full answer

    Software Engineer
    Data Structures & Algorithms
    +4 more
  • Software Engineer
    Behavioral
  • Amazon logoAsked at Amazon 
    +3

    "Hi Team, where can I see sample answers for this question?"

    Surbhi G. - "Hi Team, where can I see sample answers for this question?"See full answer

    Software Engineer
    Behavioral
    +1 more
  • Google logoAsked at Google 
    +8

    "This is a great question! If you don't mind, I'd love to list 3 strengths and weaknesses then dive a little deeper on one of each of them. I think my three greatest strengths are: Empathy Openness to feedback Drive And three weaknesses I have been working to strengthen are: Sometimes my desire to achieve can put me at risk of overcommitting Communicating status to the right stakeholders at the appropriate time Creating detailed and strategic lists of priorities so I can meet th"

    Adam M. - "This is a great question! If you don't mind, I'd love to list 3 strengths and weaknesses then dive a little deeper on one of each of them. I think my three greatest strengths are: Empathy Openness to feedback Drive And three weaknesses I have been working to strengthen are: Sometimes my desire to achieve can put me at risk of overcommitting Communicating status to the right stakeholders at the appropriate time Creating detailed and strategic lists of priorities so I can meet th"See full answer

    Software Engineer
    Behavioral
    +3 more
  • "DNNs can learn hierarchical features, with each layer learning progressively more abstract features, and generalizes better. SNNs are better for simplier problems involving smaller datasets and if low latency is required."

    Louie Z. - "DNNs can learn hierarchical features, with each layer learning progressively more abstract features, and generalizes better. SNNs are better for simplier problems involving smaller datasets and if low latency is required."See full answer

    Software Engineer
    Concept
    +2 more
Showing 121-140 of 593