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.
  • Uber logoAsked at Uber 
    10 answers
    Video answer for 'A knapsack has a maximum capacity C and there are n items each with weight w[i] and value v[i]. Maximize the knapsack value without exceeding capacity.'
    +7

    " DP Solution Time: O(W * C) Space: O(W * C) from typing import List def knapsack(weight: List[int], values: List[int], cap: int) -> int: dp = [[0] * (cap + 1) for _ in range( len(values) + 1 )] for i in range(1, len(weight)+1): for c in range(1, cap + 1): curr_weight = weight[i - 1] curr_value = values[i - 1] include = 0 exclude = dpi-1 if c - curr_weight >= 0: include = curr_valu"

    Rick E. - " DP Solution Time: O(W * C) Space: O(W * C) from typing import List def knapsack(weight: List[int], values: List[int], cap: int) -> int: dp = [[0] * (cap + 1) for _ in range( len(values) + 1 )] for i in range(1, len(weight)+1): for c in range(1, cap + 1): curr_weight = weight[i - 1] curr_value = values[i - 1] include = 0 exclude = dpi-1 if c - curr_weight >= 0: include = curr_valu"See full answer

    Software Engineer
    Data Structures & Algorithms
    +2 more
  • Adobe logoAsked at Adobe 
    65 answers
    Video answer for 'Product of Array Except Self'
    +59

    "If 0's aren't a concern, couldn't we just multiply all numbers. and then divide product by each number in the list ? if there's more than one zero, then we just return an array of 0s if there's one zero, then we just replace 0 with product and rest 0s. what am i missing?"

    Sachin R. - "If 0's aren't a concern, couldn't we just multiply all numbers. and then divide product by each number in the list ? if there's more than one zero, then we just return an array of 0s if there's one zero, then we just replace 0 with product and rest 0s. what am i missing?"See full answer

    Software Engineer
    Data Structures & Algorithms
    +3 more
  • Flatiron Health logoAsked at Flatiron Health 
    1 answer
    Software Engineer
    Data Structures & Algorithms
    +2 more
  • Snap logoAsked at Snap 
    2 answers

    "public Double calculateRatio(String source, String destination) { Double ratio=1.0; while(graph.containsKey(source) && !visited.contains(source)) { visited.add(source); Map valueMap=graph.get(source); if(valueMap.containsKey(destination)) { return ratio*=valueMap.get(destination); } Map.Entry firstEntry=valueMap.entrySet().iterator().next(); source=firstEntry.getKey(); ratio*=firstEntry.getValue(); System.out.println("Entered"); } return null; }"

    Divya R. - "public Double calculateRatio(String source, String destination) { Double ratio=1.0; while(graph.containsKey(source) && !visited.contains(source)) { visited.add(source); Map valueMap=graph.get(source); if(valueMap.containsKey(destination)) { return ratio*=valueMap.get(destination); } Map.Entry firstEntry=valueMap.entrySet().iterator().next(); source=firstEntry.getKey(); ratio*=firstEntry.getValue(); System.out.println("Entered"); } return null; }"See full answer

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

    "public class BoggleBoard { public static List findWords(char board, Set dictionary) { int rows = board.length; int cols = board[0].length; boolean visited = new booleanrows; int directions = {{1,0}, {-1,0}, {0,1}, {0,-1}}; List result = new ArrayList(); for(int i=0; i<rows; i++) { for(int j=0; j<cols; j++) { dfs(board, visited, i, j, dictionary, "", result, dire"

    Aniket G. - "public class BoggleBoard { public static List findWords(char board, Set dictionary) { int rows = board.length; int cols = board[0].length; boolean visited = new booleanrows; int directions = {{1,0}, {-1,0}, {0,1}, {0,-1}}; List result = new ArrayList(); for(int i=0; i<rows; i++) { for(int j=0; j<cols; j++) { dfs(board, visited, i, j, dictionary, "", result, dire"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 
    19 answers
    Video answer for 'How do you consider the impact of your work on the world?'
    +14

    "this is not a helpful interview, she seems so unprepared, confusing, unable to netting it out :("

    Anonymous Giraffe - "this is not a helpful interview, she seems so unprepared, confusing, unable to netting it out :("See full answer

    Software Engineer
    Behavioral
    +3 more
  • Meta logoAsked at Meta 
    4 answers
    Video answer for 'Design an API for searching a folder.'
    Software Engineer
    System Design
    +1 more
  • Anthropic logoAsked at Anthropic 
    1 answer

    "Yes to peer manager from stackholder team the problem was every time she wanted say something she used to have three way connect with me and my manager"

    Graig - "Yes to peer manager from stackholder team the problem was every time she wanted say something she used to have three way connect with me and my manager"See full answer

    Software Engineer
    Behavioral
    +3 more
  • Stripe logoAsked at Stripe 
    2 answers

    "TCP server/client to facilitate high throughput of incoming metrics.(This is the standard used in the industry by Datadog etc). NoSQL or timeseries database for storing metrics. Timeseries databases are better for aggregating metrics in a given time period. REST API for serving metrics data to visualization frontend."

    Abhi R. - "TCP server/client to facilitate high throughput of incoming metrics.(This is the standard used in the industry by Datadog etc). NoSQL or timeseries database for storing metrics. Timeseries databases are better for aggregating metrics in a given time period. REST API for serving metrics data to visualization frontend."See full answer

    Software Engineer
    System Design
  • " The productofarrays() function works by first creating an empty array to store the product of the two integers. Then, it iterates through the first array and multiplies each element by each element in the second array. The product of each element is then appended to the product array. Finally, the product array is returned def productofarrays(array1, array2): """ Calculates the product of two integers represented by two arrays. Args: array1: The first array. array2: The se"

    Praful B. - " The productofarrays() function works by first creating an empty array to store the product of the two integers. Then, it iterates through the first array and multiplies each element by each element in the second array. The product of each element is then appended to the product array. Finally, the product array is returned def productofarrays(array1, array2): """ Calculates the product of two integers represented by two arrays. Args: array1: The first array. array2: The se"See full answer

    Software Engineer
    Technical
  • Google logoAsked at Google 
    Add answer
    Software Engineer
    Technical
  • Google logoAsked at Google 
    2 answers

    "Here’s a commonly used Git branching and release strategy that we used at my previous role: Branching strategy (Git-based) a. Main Branches main: Production-ready branch. Only tested and stable code is merged here. develop: Feature branches are merged here before being merged into main. b. Supporting Branches Feature Branches (feature/) Release Branches (release/) Hotfix Branches (hotfix/) 2.Release Strategy a. Continuous Deplo"

    Anonymous Dingo - "Here’s a commonly used Git branching and release strategy that we used at my previous role: Branching strategy (Git-based) a. Main Branches main: Production-ready branch. Only tested and stable code is merged here. develop: Feature branches are merged here before being merged into main. b. Supporting Branches Feature Branches (feature/) Release Branches (release/) Hotfix Branches (hotfix/) 2.Release Strategy a. Continuous Deplo"See full answer

    Software Engineer
    Technical
  • Adobe logoAsked at Adobe 

    Permutations

    IDE
    Medium
    3 answers

    " import java.util.*; import java.util.stream.Collectors; class Solution { public static List> permute(int[] nums) { List> resList=new ArrayList(); List list=new ArrayList(); Set visited=new HashSet(); permute(nums, resList, list, visited); return resList; } public static void permute(int[] nums, List> resList, List list, Set visited) { if(vis"

    Divya R. - " import java.util.*; import java.util.stream.Collectors; class Solution { public static List> permute(int[] nums) { List> resList=new ArrayList(); List list=new ArrayList(); Set visited=new HashSet(); permute(nums, resList, list, visited); return resList; } public static void permute(int[] nums, List> resList, List list, Set visited) { if(vis"See full answer

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

    "I product manage customer care - while I belong to the ecommerce platform team. customer care is not a direct contributor for revenue and the feedback i received during my career progression was unless i contribute to revenue i cannot be on promotion track. this is difficult feedback to act on as its not by job responsibility. worked with my manager on 2 fronts - 1) create a succession plan so i can take on additional responsibility that contributes to revenue and 2) create a plan on how care ca"

    Gomathi S. - "I product manage customer care - while I belong to the ecommerce platform team. customer care is not a direct contributor for revenue and the feedback i received during my career progression was unless i contribute to revenue i cannot be on promotion track. this is difficult feedback to act on as its not by job responsibility. worked with my manager on 2 fronts - 1) create a succession plan so i can take on additional responsibility that contributes to revenue and 2) create a plan on how care ca"See full answer

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

    "Load Balancer to multiple API Servers, pub sub system to publish user events, Game Engine Service, Write through cache and NoSQL DB. HTTP Long Polling to get user status updates"

    gdecuri - "Load Balancer to multiple API Servers, pub sub system to publish user events, Game Engine Service, Write through cache and NoSQL DB. HTTP Long Polling to get user status updates"See full answer

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

    "When talking about my role in current team, I talked following things: High level technologies used. Collaboration work I did with PM and Design counter parts. Web UX features that we built. Hiring and boot strapping team from 0. Given that there is straight match to the profile hiring manager was looking for, he got pretty excited and spent time selling the job."

    Sudhakar P. - "When talking about my role in current team, I talked following things: High level technologies used. Collaboration work I did with PM and Design counter parts. Web UX features that we built. Hiring and boot strapping team from 0. Given that there is straight match to the profile hiring manager was looking for, he got pretty excited and spent time selling the job."See full answer

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

    "i would follow engage/ listen/understand/collaborate/engage/resolve- approach to manage conflicts. I would explain each phase in a project where I face conflict and how I used above approach to resolve the conflict"

    A B. - "i would follow engage/ listen/understand/collaborate/engage/resolve- approach to manage conflicts. I would explain each phase in a project where I face conflict and how I used above approach to resolve the conflict"See full answer

    Software Engineer
    Behavioral
    +1 more
  • Amazon logoAsked at Amazon 
    3 answers

    "SQL databases are relational, NoSQL databases are non-relational. SQL databases use structured query language and have a predefined schema. NoSQL databases have dynamic schemas for unstructured data. SQL databases are vertically scalable, while NoSQL databases are horizontally scalable."

    Ali H. - "SQL databases are relational, NoSQL databases are non-relational. SQL databases use structured query language and have a predefined schema. NoSQL databases have dynamic schemas for unstructured data. SQL databases are vertically scalable, while NoSQL databases are horizontally scalable."See full answer

    Software Engineer
    Concept
    +7 more
  • Amazon logoAsked at Amazon 
    11 answers
    Video answer for 'Design Uber Eats.'
    +8

    "basic drew the diagram"

    Aswath B. - "basic drew the diagram"See full answer

    Software Engineer
    System Design
    +2 more
  • +2

    "Referring to https://www.forbes.com/sites/forbesbusinesscouncil/2022/03/23/15-strategies-for-balancing-competing-stakeholder-priorities/?sh=7c82aa68262f Understand the conflicting priorities and align it with the goal/ objectives and the company mission. Start with the Least Common Denominator between the conflicting priorities to come to a commonality and start from there to objectively approach the next imp priority Always keep communication on and be transparent with 'equality' an"

    Pramod V. - "Referring to https://www.forbes.com/sites/forbesbusinesscouncil/2022/03/23/15-strategies-for-balancing-competing-stakeholder-priorities/?sh=7c82aa68262f Understand the conflicting priorities and align it with the goal/ objectives and the company mission. Start with the Least Common Denominator between the conflicting priorities to come to a commonality and start from there to objectively approach the next imp priority Always keep communication on and be transparent with 'equality' an"See full answer

    Software Engineer
    Behavioral
    +6 more
Showing 481-500 of 650