Software Engineer Interviews

Software Engineer Interview Questions

Software engineers write programs to design and develop computer software. Interviews are highly technical, so come ready to work through coding problems and math brainteasers. The specific questions you are asked will depend on what type of programming position you are looking for. Try researching a specific software discipline such as web development, application development, or system development.

Top Software Engineer Interview Questions & How to Answer

Question 1

Question #1: How would you describe your programming task process?

How to answer
How to answer: When answering a question about your process or life cycle for software development and engineering, it's helpful to consider every step, beginning with obtaining the requirements for the end product. Include as much detail as possible to help the interviewer learn more about any work you've done as a software engineer and how you handle a task to show your ability to tackle a project from start to finish.
Question 2

Question #2: Which programming languages do you know and prefer?

How to answer
How to answer: An interviewer will want to know what programming languages you're familiar with, as well as which languages you prefer. This question doesn't necessarily have a right or wrong answer, but it does provide insights into your capabilities and coding expertise. If the job listing for which you are interviewing includes specific language knowledge preferences, make sure to include them when outlining the software languages you know.
Question 3

Question 3: What is an example of a successful project that you completed?

How to answer
How to answer: When describing your success with a past project, it's helpful to identify aspects of the project that went well and detail the different task list elements. You can describe the team with whom you worked on the project, how you managed your time, and how you specifically contributed to the project.

419,495 software engineer interview questions shared by candidates

Given an infinite number of bricks of given weights w (say w = [1, 2]) and a truck of capacity c (say, c = 3), how would you find all possible combinations of bricks that match the capacity exactly? Duplicates such as [1,2] and [2,1] are NOT allowed.
avatar

Software Engineer

Interviewed at Pocket Gems

4.2
Oct 5, 2013

Given an infinite number of bricks of given weights w (say w = [1, 2]) and a truck of capacity c (say, c = 3), how would you find all possible combinations of bricks that match the capacity exactly? Duplicates such as [1,2] and [2,1] are NOT allowed.

1st phone: Anagram problem, merge two sorted linked list, and the last ten minutes talked about LRU. 2nd phone: The problem was easy to understand, but I believe the solution would be really long. I didn't get it right, so failed on here. Given a string, parse it and return a string array. It's like a tokenizer, but the rules are too... For exmple, string="abc(edf)hij{klmn}opq[rst]uvw" The delimitors are (), {}, []. They are in pair. So output array: ["abc", "edf", "hij", "klmn", "opq", "rst", "uvw"] That's the rule 1. The rule 2 is, if any two consecutive "(" means escaping, that is "((" is actually output char "(". It's not part of the delimitor. Similar to ")", "{", "}", "[", "]". abc(e))df) => ["abc", "e)df"], since the "))" outpus ")". Rule 3: if "{" is inside a delimitor pair (), then "{" isn't part of the delimitor. Output it as is. abc(e{df}}g) => ["abc", "e{df}}g"] So, parse the given string and assume the given string is always valid and parsable. I think state machine is a good direction. But I didn't finish it.
avatar

Software Engineer

Interviewed at Hulu

4.2
Apr 23, 2014

1st phone: Anagram problem, merge two sorted linked list, and the last ten minutes talked about LRU. 2nd phone: The problem was easy to understand, but I believe the solution would be really long. I didn't get it right, so failed on here. Given a string, parse it and return a string array. It's like a tokenizer, but the rules are too... For exmple, string="abc(edf)hij{klmn}opq[rst]uvw" The delimitors are (), {}, []. They are in pair. So output array: ["abc", "edf", "hij", "klmn", "opq", "rst", "uvw"] That's the rule 1. The rule 2 is, if any two consecutive "(" means escaping, that is "((" is actually output char "(". It's not part of the delimitor. Similar to ")", "{", "}", "[", "]". abc(e))df) => ["abc", "e)df"], since the "))" outpus ")". Rule 3: if "{" is inside a delimitor pair (), then "{" isn't part of the delimitor. Output it as is. abc(e{df}}g) => ["abc", "e{df}}g"] So, parse the given string and assume the given string is always valid and parsable. I think state machine is a good direction. But I didn't finish it.

Viewing 2071 - 2080 interview questions

Glassdoor has 419,495 interview questions and reports from Software engineer interviews. Prepare for your interview. Get hired. Love your job.