Skip to main content

Software Engineer Interview Questions

Review this list of 665 Software Engineer interview questions and answers verified by hiring managers and candidates.
  • Apple logoAsked at Apple 
    7 answers
    +4

    "Situation. Initially, my team consisted of young guys who were hired by team leaders based on hardskills. Previously, the company had just begun the transition from a process-based to a product-based approach. In the process of searching and selecting candidates, the interests of the team and the product owner were not taken into account. The candidate didn't pass a behavioral interview on soft skills. Thus, the team consisted of diverse and talented guys, but not very interested in fast wor"

    Anna D. - "Situation. Initially, my team consisted of young guys who were hired by team leaders based on hardskills. Previously, the company had just begun the transition from a process-based to a product-based approach. In the process of searching and selecting candidates, the interests of the team and the product owner were not taken into account. The candidate didn't pass a behavioral interview on soft skills. Thus, the team consisted of diverse and talented guys, but not very interested in fast wor"See full answer

    Software Engineer
    Behavioral
    +4 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
  • 2 answers
    Video answer for 'Design Weather App'

    "Good to you The addition of an intermediate "sanitization" ML is something Neeraj used in the Uber Eats design and again seems kind of outside the scope here and redundant. This can simply be built into the AI response model to save a step. It's not clear what benefit this step provides,"

    Nesru M. - "Good to you The addition of an intermediate "sanitization" ML is something Neeraj used in the Uber Eats design and again seems kind of outside the scope here and redundant. This can simply be built into the AI response model to save a step. It's not clear what benefit this step provides,"See full answer

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

  • Sierra AI logoAsked at Sierra AI 
    Add answer
    Software Engineer
    Data Structures & Algorithms
    +2 more
  • Oracle logoAsked at Oracle 
    2 answers

    " At low level: I would use two stacks: one for forward history and other for backward history. i go to tryexponent.com => this url will be stored in backward history stack. i go to google => again this url will be stored in backward history stack. i press back => data from backward history will be popped and put in to forward history stack. I press forward => data from forward history stack will be popped and put in to backward history tab. Also, whenever i go to any url,"

    Anubhav S. - " At low level: I would use two stacks: one for forward history and other for backward history. i go to tryexponent.com => this url will be stored in backward history stack. i go to google => again this url will be stored in backward history stack. i press back => data from backward history will be popped and put in to forward history stack. I press forward => data from forward history stack will be popped and put in to backward history tab. Also, whenever i go to any url,"See full answer

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

    "t"

    Srikhar S. - "t"See full answer

    Software Engineer
    Behavioral
    +4 more
  • Amazon logoAsked at Amazon 
    56 answers
    Video answer for 'Merge Intervals'
    +48

    "const mergeIntervals = (intervals) => { const compare = (a, b) => { if(a[0] b[0]) return 1 else if(a[0] === b[0]) { return a[1] - b[1] } } let current = [] const result = [] const sorted = intervals.sort(compare) for(let i = 0; i = b[0]) current[1] = b[1] els"

    Kofi N. - "const mergeIntervals = (intervals) => { const compare = (a, b) => { if(a[0] b[0]) return 1 else if(a[0] === b[0]) { return a[1] - b[1] } } let current = [] const result = [] const sorted = intervals.sort(compare) for(let i = 0; i = b[0]) current[1] = b[1] els"See full answer

    Software Engineer
    Data Structures & Algorithms
    +6 more
  • Amazon logoAsked at Amazon 
    1 answer

    "S – Situation: In a university project, my team was building a collaborative code editor. As part of the functionality, we needed a login system so users could securely access their sessions and collaborate in real time. T – Task: I was responsible for implementing the authentication system. Initially, I planned to build the entire login system from scratch, including user management, password storage, and session handling. But as the deadline approached, I realized that implementing thi"

    Hamzeh H. - "S – Situation: In a university project, my team was building a collaborative code editor. As part of the functionality, we needed a login system so users could securely access their sessions and collaborate in real time. T – Task: I was responsible for implementing the authentication system. Initially, I planned to build the entire login system from scratch, including user management, password storage, and session handling. But as the deadline approached, I realized that implementing thi"See full answer

    Software Engineer
    Behavioral
  • 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
  • Meta logoAsked at Meta 
    4 answers

    "I want to work at Meta because of its reputation as a company that consistently pushes the boundaries of technology, particularly in areas like AI, machine learning, and immersive technologies such as AR and VR. I admire Meta's mission to bring people closer together and create meaningful connections, as well as its focus on long-term innovation, such as the development of the metaverse. As an AI engineer, I'm excited about the opportunity to work on cutting-edge projects that have a global impa"

    Alan T. - "I want to work at Meta because of its reputation as a company that consistently pushes the boundaries of technology, particularly in areas like AI, machine learning, and immersive technologies such as AR and VR. I admire Meta's mission to bring people closer together and create meaningful connections, as well as its focus on long-term innovation, such as the development of the metaverse. As an AI engineer, I'm excited about the opportunity to work on cutting-edge projects that have a global impa"See full answer

    Software Engineer
    Behavioral
    +5 more
  • "from collections import deque from typing import List def longestsubarraydifflessthan_n(nums: List[int], N: int) -> int: """ Find the length of the longest contiguous subarray such that the difference between any two elements in the subarray is less than N. Equivalent condition: max(subarray) - min(subarray) < N Approach (Optimal): Sliding window with two monotonic deques: max_d: decreasing deque of indices (front is index of current max"

    Ramachandra N. - "from collections import deque from typing import List def longestsubarraydifflessthan_n(nums: List[int], N: int) -> int: """ Find the length of the longest contiguous subarray such that the difference between any two elements in the subarray is less than N. Equivalent condition: max(subarray) - min(subarray) < N Approach (Optimal): Sliding window with two monotonic deques: max_d: decreasing deque of indices (front is index of current max"See full answer

    Software Engineer
    Data Structures & Algorithms
    +1 more
  • Google logoAsked at Google 
    7 answers
    +4

    "The company culture is very supportive and collaborative. Googlers are encouraged to be creative and innovative, and there is a lot of freedom to explore new ideas. The work is challenging and rewarding. Googlers have the opportunity to work on cutting-edge projects that have a real impact on the world. The company is committed to diversity and inclusion. Google is a great place to work for people from all backgrounds and with all different perspectives. I am confident that I would b"

    Praful B. - "The company culture is very supportive and collaborative. Googlers are encouraged to be creative and innovative, and there is a lot of freedom to explore new ideas. The work is challenging and rewarding. Googlers have the opportunity to work on cutting-edge projects that have a real impact on the world. The company is committed to diversity and inclusion. Google is a great place to work for people from all backgrounds and with all different perspectives. I am confident that I would b"See full answer

    Software Engineer
    Behavioral
    +3 more
  • Anthropic logoAsked at Anthropic 
    3 answers

    "Situation : During my time in my previous company, I was leading a program which involved a cross-functional team. The project was to migrate all the legacy servers to Azure and had a tight deadline of 4 months. Each team had distinct goals and responsibilites to be delivered Task : My task was to collaborate with the multi regional team and ensure a smooth delivery within the defined budget and schedule. Action : I believe communication is the key to handle a cross-functional team"

    Oriole O. - "Situation : During my time in my previous company, I was leading a program which involved a cross-functional team. The project was to migrate all the legacy servers to Azure and had a tight deadline of 4 months. Each team had distinct goals and responsibilites to be delivered Task : My task was to collaborate with the multi regional team and ensure a smooth delivery within the defined budget and schedule. Action : I believe communication is the key to handle a cross-functional team"See full answer

    Software Engineer
    Behavioral
    +2 more
  • Meta logoAsked at Meta 
    1 answer

    "I talked about a time that my manager had a better understanding of something than me and that I had to start to ask him what he knew about a certain type of thing once I was getting work assigned"

    Anonymous Cheetah - "I talked about a time that my manager had a better understanding of something than me and that I had to start to ask him what he knew about a certain type of thing once I was getting work assigned"See full answer

    Software Engineer
    Behavioral
    +1 more
  • Apple logoAsked at Apple 
    2 answers

    "\# An program that prints out the peak elements in a list of integers. Pseudocode: 1. Define a function that takes a list of integers as input. 2. Initialize an empty list to store the peak elements. 3. Loop through the list of integers. 4. For each element, check if it is greater than its neighbors. 5. If it is, add it to the list of peak elements. 6. Return the list of peak elements. def findpeakelements(nums): if not nums: return [] peaks = [] n = len(nums"

    Frederick K. - "\# An program that prints out the peak elements in a list of integers. Pseudocode: 1. Define a function that takes a list of integers as input. 2. Initialize an empty list to store the peak elements. 3. Loop through the list of integers. 4. For each element, check if it is greater than its neighbors. 5. If it is, add it to the list of peak elements. 6. Return the list of peak elements. def findpeakelements(nums): if not nums: return [] peaks = [] n = len(nums"See full answer

    Software Engineer
    Data Structures & Algorithms
    +1 more
  • Databricks logoAsked at Databricks 
    1 answer

    "I would first like to clarify the requirements and assumptions for the system. I am assuming that the system should support basic file operations such as uploading, downloading, deleting, renaming files, and viewing directory structures along with file permissions. The file size can range from around 1MB to 1GB, and the system is expected to be read heavy, meaning downloads will be more frequent than uploads. The system should support a large scale, for example around 10 million total users with"

    Yashasvi C. - "I would first like to clarify the requirements and assumptions for the system. I am assuming that the system should support basic file operations such as uploading, downloading, deleting, renaming files, and viewing directory structures along with file permissions. The file size can range from around 1MB to 1GB, and the system is expected to be read heavy, meaning downloads will be more frequent than uploads. The system should support a large scale, for example around 10 million total users with"See full answer

    Software Engineer
    System Design
    +1 more
  • Adobe logoAsked at Adobe 
    13 answers
    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
  • Adobe logoAsked at Adobe 
    10 answers
    Video answer for 'Explain how to find a target sum in an array.'
    +6

    "a top-down recursive solution with memoization in python: from typing import List from functools import cache def changeSigns(nums: List[int], S: int) -> int: @cache def dp(i, curr_sum): if i == len(nums): if curr_sum == S: return 1 return 0 return dp(i+1, currsum + nums[i]) + dp(i+1, currsum - nums[i]) answer = dp(0, 0) if answer == 0: return -1 return answer `"

    Jessica R. - "a top-down recursive solution with memoization in python: from typing import List from functools import cache def changeSigns(nums: List[int], S: int) -> int: @cache def dp(i, curr_sum): if i == len(nums): if curr_sum == S: return 1 return 0 return dp(i+1, currsum + nums[i]) + dp(i+1, currsum - nums[i]) answer = dp(0, 0) if answer == 0: return -1 return answer `"See full answer

    Software Engineer
    Data Structures & Algorithms
    +1 more
Showing 101-120 of 665