Skip to main content

Top Software Engineer Interview Questions

Review this list of 715 Software Engineer interview questions and answers verified by hiring managers and candidates.
  • Meta logoAsked at Meta 
    Add answer
    Software Engineer
    Data Structures & Algorithms
    +1 more
  • Anthropic logoAsked at Anthropic 
    Add answer
    Software Engineer
    Behavioral
    +2 more
  • Oracle logoAsked at Oracle 
    Add answer
    Software Engineer
    System Design
  • Deloitte logoAsked at Deloitte 
    3 answers

    "BETWEEN and HAVING clauses in SQL serve different purposes: 1. BETWEEN Clause Used to filter rows based on a range of values. Works with numeric, date, or text values. Can be used with WHERE or HAVING clauses. The range includes both lower and upper bounds. Example: Filtering employees with salaries between 30,000 and 50,000 `SELECT * FROM Employees WHERE salary BETWEEN 30000 AND 50000;` 2. HAVING Clause Used to filter **groups"

    Meenakshi D. - "BETWEEN and HAVING clauses in SQL serve different purposes: 1. BETWEEN Clause Used to filter rows based on a range of values. Works with numeric, date, or text values. Can be used with WHERE or HAVING clauses. The range includes both lower and upper bounds. Example: Filtering employees with salaries between 30,000 and 50,000 `SELECT * FROM Employees WHERE salary BETWEEN 30000 AND 50000;` 2. HAVING Clause Used to filter **groups"See full answer

    Software Engineer
    Concept
    +4 more
  • Nike logoAsked at Nike 
    Add answer
    Software Engineer
    System Design
  • 🧠 Want an expert answer to a question? Saving questions lets us know what content to make next.

  • Blend logoAsked at Blend 
    Add answer
    Software Engineer
    Behavioral
  • Microsoft logoAsked at Microsoft 
    1 answer

    "int reverse(int x) { int rev = 0; bool isNegative = false; if(x 0){ int r = x % 10; rev = rev * 10 + r; x = x / 10; } if(isNegative){ return -rev; } return rev; } `"

    Nilay B. - "int reverse(int x) { int rev = 0; bool isNegative = false; if(x 0){ int r = x % 10; rev = rev * 10 + r; x = x / 10; } if(isNegative){ return -rev; } return rev; } `"See full answer

    Software Engineer
    Data Structures & Algorithms
    +1 more
  • Bloomberg logoAsked at Bloomberg 
    Add answer
    Software Engineer
    Behavioral
  • Apple logoAsked at Apple 
    3 answers

    "we can create 2 sets for rows and columns and store the rows and column having 0 and then just check in a loop if the count of that row is greater than 0 llly for column then put the row and column to zero"

    Bhavya V. - "we can create 2 sets for rows and columns and store the rows and column having 0 and then just check in a loop if the count of that row is greater than 0 llly for column then put the row and column to zero"See full answer

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

    "I think AI such as ChatGPT seemed to spit out its answers fast and instinctively, hence proving its efficiency but in the recent versions it seems to have acquired reasoning skills which was revealed 'transparently' to users. This new, reasoning skills introduce a small delay in its response and explains what it does during the delay but I do not really think that it is "thinking" any differently than before, except that it is constrained by some purported rules when asked to summarise certain b"

    Louisa C. - "I think AI such as ChatGPT seemed to spit out its answers fast and instinctively, hence proving its efficiency but in the recent versions it seems to have acquired reasoning skills which was revealed 'transparently' to users. This new, reasoning skills introduce a small delay in its response and explains what it does during the delay but I do not really think that it is "thinking" any differently than before, except that it is constrained by some purported rules when asked to summarise certain b"See full answer

    Software Engineer
    Behavioral
    +1 more
  • Goldman Sachs logoAsked at Goldman Sachs 
    Add answer
    Software Engineer
    System Design
  • Google logoAsked at Google 
    1 answer

    "Do any one know how to build trie using IP address?"

    Graig - "Do any one know how to build trie using IP address?"See full answer

    Software Engineer
    System Design
  • 2 answers

    "Get data from database CDC to Kafka; Write from Kafka to a Bucket; Send the batch file to Visa from time to time;"

    Roger R. - "Get data from database CDC to Kafka; Write from Kafka to a Bucket; Send the batch file to Visa from time to time;"See full answer

    Software Engineer
    System Design
  • Apple logoAsked at Apple 
    3 answers

    "Sorting is a technique to arrange data in either increasing order or decreasing order, and, the function that implements this functionality is called sort function"

    Farhan -. - "Sorting is a technique to arrange data in either increasing order or decreasing order, and, the function that implements this functionality is called sort function"See full answer

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

    "my answer: void* memcpy(void* dest, const void* src, size_t n) { unsigned char* uDest = static_cast(dest); const unsigned char* ucSrc = static_cast(src); for(size_t i= 0; i(dest); const unsigned c"

    Srihitha J. - "my answer: void* memcpy(void* dest, const void* src, size_t n) { unsigned char* uDest = static_cast(dest); const unsigned char* ucSrc = static_cast(src); for(size_t i= 0; i(dest); const unsigned c"See full answer

    Software Engineer
    Data Structures & Algorithms
    +1 more
  • Canva logoAsked at Canva 
    3 answers

    "Inheritance means that inherit the some properties of parent class into the child class. And the another hand composition means its acquire some properties as our request is called composition"

    Sunil S. - "Inheritance means that inherit the some properties of parent class into the child class. And the another hand composition means its acquire some properties as our request is called composition"See full answer

    Software Engineer
    Concept
  • Confluent logoAsked at Confluent 
    1 answer

    "We are asked to calculate Sum(over value) for time in (t - window_size, t) where key in (key criteria). To develop a function to set this up. Let w be the window size. I would have an observer of some kind note the key-value, and for the first w windows just add the value to a temporary variable in memory if the key meets the key criteria. Then it would delete the oldest value and add the new value if the new key meets the criteria. At each step after "w", we would take the sum / w and store"

    Prashanth A. - "We are asked to calculate Sum(over value) for time in (t - window_size, t) where key in (key criteria). To develop a function to set this up. Let w be the window size. I would have an observer of some kind note the key-value, and for the first w windows just add the value to a temporary variable in memory if the key meets the key criteria. Then it would delete the oldest value and add the new value if the new key meets the criteria. At each step after "w", we would take the sum / w and store"See full answer

    Software Engineer
    Data Structures & Algorithms
    +1 more
  • Meta logoAsked at Meta 
    Add answer
    Software Engineer
    Data Structures & Algorithms
    +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
  • Microsoft logoAsked at Microsoft 
    1 answer

    "1. What is an LFU Cache? An LFU (Least Frequently Used) cache is a memory management system with a fixed capacity. It tracks how often items are accessed and evicts the least popular items when it runs out of space. It has one critical rule and one tie-breaker rule: The Core Rule: When the cache is full and you need to add a new item, you must kick out the item with the lowest access frequency. The Tie-Breaker (LRU): If multiple items share that same lowest frequency"

    Rama A. - "1. What is an LFU Cache? An LFU (Least Frequently Used) cache is a memory management system with a fixed capacity. It tracks how often items are accessed and evicts the least popular items when it runs out of space. It has one critical rule and one tie-breaker rule: The Core Rule: When the cache is full and you need to add a new item, you must kick out the item with the lowest access frequency. The Tie-Breaker (LRU): If multiple items share that same lowest frequency"See full answer

    Software Engineer
    Data Structures & Algorithms
    +2 more
Showing 401-420 of 715
Exponent

Get updates in your inbox with the latest tips, job listings, and more.

Follow Us

Products
Courses
Interview Questions
Interview Experiences
Popular articles
Guides
Coaching
For Partners
Company
Exponent © 2026
Terms of Service | Privacy