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,197 software engineer interview questions shared by candidates

In most cases you need to have some experience with CUDA. If you want to increase your chances of getting a job offer you need to know very well about linked lists. We used the collabedit.com for the interview. It is like a chat but for coding. I got the following question on the screen of collabedit: // There is a chunk of memory in the kernel address space represented by kernelResource and an API exists to clear it. An IOCTL path exists to take a request from user-mode and using O/S services eventually dispatches to API_ZeroResource. From a security perspective what concerns do you have with this implementation? How would you fix them? // // KERNEL // BYTE kernelResource[10] = {0}; int API_ZeroResource( in_params *pParams ) { if (pParams->offset + pParams->length > sizeof(kernelResource)) return ERR_INVALID_LIMIT; memset(kernelResource + pParams->offset, 0, pParams->length); return 0; } // // USER // void ZeroResource() { in_params params = { ??? }; // an ioctl path exists to call API_ZeroResource ioctl( CMD_ZeroResource, &params ); }
avatar

Software Engineer

Interviewed at NVIDIA

4.6
May 13, 2016

In most cases you need to have some experience with CUDA. If you want to increase your chances of getting a job offer you need to know very well about linked lists. We used the collabedit.com for the interview. It is like a chat but for coding. I got the following question on the screen of collabedit: // There is a chunk of memory in the kernel address space represented by kernelResource and an API exists to clear it. An IOCTL path exists to take a request from user-mode and using O/S services eventually dispatches to API_ZeroResource. From a security perspective what concerns do you have with this implementation? How would you fix them? // // KERNEL // BYTE kernelResource[10] = {0}; int API_ZeroResource( in_params *pParams ) { if (pParams->offset + pParams->length > sizeof(kernelResource)) return ERR_INVALID_LIMIT; memset(kernelResource + pParams->offset, 0, pParams->length); return 0; } // // USER // void ZeroResource() { in_params params = { ??? }; // an ioctl path exists to call API_ZeroResource ioctl( CMD_ZeroResource, &params ); }

An operation "swap" means removing an element from the array and appending it at the back of the same array. Find the minimum number of "swaps" needed to sort that array. Eg :- 3124 Output: 2 (3124->1243->1234) How to do it less than O(n^2) ?
avatar

Software Engineer Intern

Interviewed at Meta

3.5
Nov 3, 2012

An operation "swap" means removing an element from the array and appending it at the back of the same array. Find the minimum number of "swaps" needed to sort that array. Eg :- 3124 Output: 2 (3124->1243->1234) How to do it less than O(n^2) ?

I received two questions. The first was print out all possible strings that a phone number can produce. For instance: 2 -> A,B,C and 3 -> D,E,F. So if the input is 23, then the output should be "AD, AE, AF, BD, etc.." The second question was if you had multiple points (x,y), find the n closest points to the origin (0,0).
avatar

Software Engineer

Interviewed at Meta

3.5
Jan 16, 2015

I received two questions. The first was print out all possible strings that a phone number can produce. For instance: 2 -> A,B,C and 3 -> D,E,F. So if the input is 23, then the output should be "AD, AE, AF, BD, etc.." The second question was if you had multiple points (x,y), find the n closest points to the origin (0,0).

Viewing 1161 - 1170 interview questions

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