Skip to main content

Recent Software Engineer Interview Questions

Review this list of 650 Software Engineer interview questions and answers verified by hiring managers and candidates.
  • Anthropic logoAsked at Anthropic 
    1 answer
    Video answer for 'Find duplicate files in a file system.'

    " read_dir(path: str) -> list[str] returns the full path of all files and sub- directories of a given directory. is_file(path: str) -> bool: returns true if the path points to a regular file. is_dir(path: str) -> bool: returns true if the path points to a directory. read_file(path: str) -> str: reads and returns the content of the file. The algorithm: notice that storing all the file contents' is too space intensive, so we can't read all the files' contents to store and compare with each"

    Idan R. - " read_dir(path: str) -> list[str] returns the full path of all files and sub- directories of a given directory. is_file(path: str) -> bool: returns true if the path points to a regular file. is_dir(path: str) -> bool: returns true if the path points to a directory. read_file(path: str) -> str: reads and returns the content of the file. The algorithm: notice that storing all the file contents' is too space intensive, so we can't read all the files' contents to store and compare with each"See full answer

    Software Engineer
    Data Structures & Algorithms
    +2 more
  • Amazon logoAsked at Amazon 
    2 answers

    "no"

    Hamilton D. - "no"See full answer

    Software Engineer
    Technical
    +1 more
  • "Hi my name is Sharon Alvis, I'm a person with a disability, I was wondering how to get a job. This is my first time to get a job so I'm just trying to know how to push myself out there and find job! "

    Sharon A. - "Hi my name is Sharon Alvis, I'm a person with a disability, I was wondering how to get a job. This is my first time to get a job so I'm just trying to know how to push myself out there and find job! "See full answer

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

    "Use a min-heap or sort the array, either method works"

    Kwaku K. - "Use a min-heap or sort the array, either method works"See full answer

    Software Engineer
    Technical
  • Amazon logoAsked at Amazon 
    3 answers

    "Use Dijkstra's Algorithm with priority queue"

    Karthik R. - "Use Dijkstra's Algorithm with priority queue"See full answer

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

  • Adobe logoAsked at Adobe 
    1 answer

    "Leetcode 347: Heap + Hashtable Follow up question: create heap with the length of K instead of N (more time complexity but less space )"

    Chen J. - "Leetcode 347: Heap + Hashtable Follow up question: create heap with the length of K instead of N (more time complexity but less space )"See full answer

    Software Engineer
    Data Structures & Algorithms
    +3 more
  • LinkedIn logoAsked at LinkedIn 
    Add answer
    Software Engineer
    Behavioral
    +1 more
  • Amazon logoAsked at Amazon 
    1 answer

    "Functional Requirement Monitor health, metrics Alert in case of failure/anomaly Visualize the live health Analyse machines on periodic basis Non Functional Should not exert load on machines low latency Highly scalable Logs/Metrics Gathering push - machine gather and send to system and low priority background thread along with batching pull - heart beat check (for offline machines) Processing Real time streaming using Kafka/kinesis + Flink TimeSeries database for stor"

    Sourabh G. - "Functional Requirement Monitor health, metrics Alert in case of failure/anomaly Visualize the live health Analyse machines on periodic basis Non Functional Should not exert load on machines low latency Highly scalable Logs/Metrics Gathering push - machine gather and send to system and low priority background thread along with batching pull - heart beat check (for offline machines) Processing Real time streaming using Kafka/kinesis + Flink TimeSeries database for stor"See full answer

    Software Engineer
    System Design
    +2 more
  • Amazon logoAsked at Amazon 
    1 answer

    "Front Page Layout Design for Newspaper App Header Section Logo: Displays at the top left. App Name: Displays alongside, so very prominent. Search Bar: Centered with search to find articles within the application. Navigation Menu: The links to the respective sections, World, Politics, Sports, Entertainment, and Opinion, etc Main Content Area Top Stories Carousel: It is a rotating banner that displays the top 3-5 news stories with images along with their headlines. Each story should be cl"

    Midde V. - "Front Page Layout Design for Newspaper App Header Section Logo: Displays at the top left. App Name: Displays alongside, so very prominent. Search Bar: Centered with search to find articles within the application. Navigation Menu: The links to the respective sections, World, Politics, Sports, Entertainment, and Opinion, etc Main Content Area Top Stories Carousel: It is a rotating banner that displays the top 3-5 news stories with images along with their headlines. Each story should be cl"See full answer

    Software Engineer
    Product Design
    +1 more
  • Amazon logoAsked at Amazon 
    1 answer

    "CIDR (Classless Inter-Domain Routing) -- also known as supernetting -- is a method of assigning Internet Protocol (IP) addresses that improves the efficiency of address distribution and replaces the previous system based on Class A, Class B and Class C networks."

    Ali H. - "CIDR (Classless Inter-Domain Routing) -- also known as supernetting -- is a method of assigning Internet Protocol (IP) addresses that improves the efficiency of address distribution and replaces the previous system based on Class A, Class B and Class C networks."See full answer

    Software Engineer
    Technical
  • Amazon logoAsked at Amazon 
    1 answer

    "I’d open by confirming we’re designing object storage for arbitrary binary objects—images, backups, data lake files—not block volumes for VMs unless you redirect me. Actors: developers and services inside Amazon’s ecosystem, multi-tenant, millions of buckets, trillions of objects. MVP API: create bucket, PUT object, GET object, DELETE, list objects with prefix, HEAD for metadata. I’d ask about versioning, encryption at rest default, and whether"

    Jiale L. - "I’d open by confirming we’re designing object storage for arbitrary binary objects—images, backups, data lake files—not block volumes for VMs unless you redirect me. Actors: developers and services inside Amazon’s ecosystem, multi-tenant, millions of buckets, trillions of objects. MVP API: create bucket, PUT object, GET object, DELETE, list objects with prefix, HEAD for metadata. I’d ask about versioning, encryption at rest default, and whether"See full answer

    Software Engineer
    Product Design
    +1 more
  • Robinhood logoAsked at Robinhood 
    1 answer

    "We can start by considering the key components: waiters, tables and customers. We'll need a database to store information about waiters, tables and customers, each waiter can have a unique ID and we can track the. number of tables they are servicng. Tables can have attributes like table number, capacity, and current status. Customers can be tracked by their arrival time and party size. we can calculat ethe expected waiting time bu considering the average time a table is occupied and the number o"

    Brandon C. - "We can start by considering the key components: waiters, tables and customers. We'll need a database to store information about waiters, tables and customers, each waiter can have a unique ID and we can track the. number of tables they are servicng. Tables can have attributes like table number, capacity, and current status. Customers can be tracked by their arrival time and party size. we can calculat ethe expected waiting time bu considering the average time a table is occupied and the number o"See full answer

    Software Engineer
    Product Design
    +1 more
  • Meta logoAsked at Meta 
    1 answer

    "I first asked few clarifying questions like the return array may need not contain the list of building in the same order, to which the interviewer agreed. Then I came up with an approach where we iterate the array from right to left and keep a max variable which will keep the value of the current max. When we find an item which is greater than max we update the max and add this element into our solution. The interviewer agreed for the approach. I discussed few corner scenarios with the interview"

    Rishabh N. - "I first asked few clarifying questions like the return array may need not contain the list of building in the same order, to which the interviewer agreed. Then I came up with an approach where we iterate the array from right to left and keep a max variable which will keep the value of the current max. When we find an item which is greater than max we update the max and add this element into our solution. The interviewer agreed for the approach. I discussed few corner scenarios with the interview"See full answer

    Software Engineer
    Data Structures & Algorithms
    +1 more
  • "I try to solve this initially using quick select where will take a pivot element and position the remaining elements and check if the current index is answer or not and continue the same but it requires o(n*n), but interviewee is expecting the best from me, so at the end i tried solving using heaps where will check the difference between k and n-k to use min or max heap after that we will heap the array, and will keep popping the element k-1 and return the peek one which leads to answer."

    Mourya C. - "I try to solve this initially using quick select where will take a pivot element and position the remaining elements and check if the current index is answer or not and continue the same but it requires o(n*n), but interviewee is expecting the best from me, so at the end i tried solving using heaps where will check the difference between k and n-k to use min or max heap after that we will heap the array, and will keep popping the element k-1 and return the peek one which leads to answer."See full answer

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

    "import re def naturalsortkey(s): Split the string into a list of text and numbers "item10" -> ["item", 10] return [int(text) if text.isdigit() else text.lower() for text in re.split(r'(\d+)', s)] def natural_sort(arr): return sorted(arr, key=naturalsortkey) \# Example Usage data = ["item10", "item2", "item1", "item20", "2nd item", "1st item"] sorteddata = naturalsort(data) print(f"Standard Sort: {sorted(data)}") print(f"Natural Sort: {sorted_data}") "

    Yitayal B. - "import re def naturalsortkey(s): Split the string into a list of text and numbers "item10" -> ["item", 10] return [int(text) if text.isdigit() else text.lower() for text in re.split(r'(\d+)', s)] def natural_sort(arr): return sorted(arr, key=naturalsortkey) \# Example Usage data = ["item10", "item2", "item1", "item20", "2nd item", "1st item"] sorteddata = naturalsort(data) print(f"Standard Sort: {sorted(data)}") print(f"Natural Sort: {sorted_data}") "See full answer

    Software Engineer
    Data Structures & Algorithms
    +1 more
  • Amazon logoAsked at Amazon 
    2 answers

    "Whenever I find resistance to my idea, my general approach is to : Validate my idea Identify if it is a political reason or is it a valid engineering tech reason Assuming it is not political but it is resource/difference of opinions that are causing resistance. Then I would try to do a quick POC and show a value proposition for the idea to get the buy-in. One similar situation happened The situation was that stakeholders were promised a feature that would decrease their number of ticket"

    Jaim - "Whenever I find resistance to my idea, my general approach is to : Validate my idea Identify if it is a political reason or is it a valid engineering tech reason Assuming it is not political but it is resource/difference of opinions that are causing resistance. Then I would try to do a quick POC and show a value proposition for the idea to get the buy-in. One similar situation happened The situation was that stakeholders were promised a feature that would decrease their number of ticket"See full answer

    Software Engineer
    Behavioral
    +1 more
  • +7

    "Definitely nice to think of this without memorization, but there is a well known algorithm for this problem, which is the Levenshtein Distance. Lev(a,b) = len(a) if len(b) == 0 = len(b) if len(a) == 0 = lev(a[1:], b[1:] if a[0] == b[0] = 1 + min (lev(a, b[1:]), lev(a[1:], b), lev(a[1:], b[1:])) https://en.wikipedia.org/wiki/Levenshtein_distance I'm sure some optimizations could be made with heuristic."

    Nicholas S. - "Definitely nice to think of this without memorization, but there is a well known algorithm for this problem, which is the Levenshtein Distance. Lev(a,b) = len(a) if len(b) == 0 = len(b) if len(a) == 0 = lev(a[1:], b[1:] if a[0] == b[0] = 1 + min (lev(a, b[1:]), lev(a[1:], b), lev(a[1:], b[1:])) https://en.wikipedia.org/wiki/Levenshtein_distance I'm sure some optimizations could be made with heuristic."See full answer

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

    "A load balancer accepts requests from clients (e.g. web browsers on the Internet) and backend services (e.g. a web server). Load balancers are useful for replicating backend services onto multiple machines to meet increased demand. The design of a load balancer should address the following questions: What protocols should be supported? IP allows computers to communicate using packets, similarly to how people send letters. IP packets are addressed using an IP address and port number. "

    Anonymous Hyena - "A load balancer accepts requests from clients (e.g. web browsers on the Internet) and backend services (e.g. a web server). Load balancers are useful for replicating backend services onto multiple machines to meet increased demand. The design of a load balancer should address the following questions: What protocols should be supported? IP allows computers to communicate using packets, similarly to how people send letters. IP packets are addressed using an IP address and port number. "See full answer

    Software Engineer
    System Design
  • Cisco logoAsked at Cisco 
    3 answers

    "I have been with Cisco, I am trying to move into a technical project manager role so that I will not loose the touch of latest technologies and also that aligns my passion."

    Praveena P. - "I have been with Cisco, I am trying to move into a technical project manager role so that I will not loose the touch of latest technologies and also that aligns my passion."See full answer

    Software Engineer
    Behavioral
  • Amazon logoAsked at Amazon 
    3 answers

    "I followed STAR format"

    Shashikant A. - "I followed STAR format"See full answer

    Software Engineer
    Behavioral
    +3 more
Showing 501-520 of 650