Software Developer Interviews

Software Developer Interview Questions

Software development is an in-demand career path, and it's also a job that can provide opportunities for high earnings and professional fulfillment. When interviewing for software developer positions, you'll likely face questions about your hard and soft skills and how you manage projects efficiently.

Top Software Developer Interview Questions & How to Answer

Question 1

Question #1: What type of software development do you currently do?

How to answer
How to answer: When answering a question about your current software development projects, emphasize the coding languages and technology stack that you use. This question helps an interviewer determine if you have the skills needed to handle the workload.
Question 2

Question #2: Describe a development issue you faced and how you solved it.

How to answer
How to answer: Talking about a specific situation allows you to describe your problem-solving methods and the actions you took to resolve the problem. Use the STAR method (situation, task, action, result) to provide a clear picture of the problem you faced in development and what you did to fix it.
Question 3

Question #3: How do you handle the QA process?

How to answer
How to answer: Quality assurance is an important aspect of software development, and the process may fall on the developers in a smaller organization that doesn't have a designated QA team. If you face a question about the QA process, the interviewer may be trying to determine whether you would be willing and able to take on testing and bug fixing as part of the role.

96,169 software developer interview questions shared by candidates

/* * Suppose we have a sorted array in ascending order, with no duplicates: * * {1, 2, 3, 4, 5, 6, 7} * * Somehow an unknown amount of numbers at the beginning are shifted to the end, * creating an array that looks like: * 0 1 2 3 4 5 6 * {3, 4, 5, 6, 7, 1, 2} * * Let us call the new array a shifted cyclic array. * * Now, given a Shifted Cyclic Array int a[], and its length n (> 0), write a function * to find the smallest number in the array. */
avatar

Software Developer

Interviewed at Storm8

3.7
Jan 11, 2012

/* * Suppose we have a sorted array in ascending order, with no duplicates: * * {1, 2, 3, 4, 5, 6, 7} * * Somehow an unknown amount of numbers at the beginning are shifted to the end, * creating an array that looks like: * 0 1 2 3 4 5 6 * {3, 4, 5, 6, 7, 1, 2} * * Let us call the new array a shifted cyclic array. * * Now, given a Shifted Cyclic Array int a[], and its length n (> 0), write a function * to find the smallest number in the array. */

In the phone interview, they just asked about my projects on the resume. and my programming experience. A week later, I got noticed that I need to take an online assessment. This assessment had 4 parts, first is 10 quick response questions, very easy, just be quick, you have 2 minutes limit; second is math questions, not hard, but need to be very careful; third is programming learning, they first teach you some basic rules about a new programming language and then test you each point they have shown you. I think this part is to test if you are a quick learner; the last part is 4 programming questions using the languages they have provided, for me, these questions are not very easy. It took a long time. Please prepare a calculator for the test. I forget to prepare one so it took longer to figure some questions. Please keep this in mind: being fast is important, but not as important as accuracy. You can find online assessment sample questions on the website to prepare for the assessment.
avatar

Software Developer

Interviewed at Epic

3.3
Mar 3, 2015

In the phone interview, they just asked about my projects on the resume. and my programming experience. A week later, I got noticed that I need to take an online assessment. This assessment had 4 parts, first is 10 quick response questions, very easy, just be quick, you have 2 minutes limit; second is math questions, not hard, but need to be very careful; third is programming learning, they first teach you some basic rules about a new programming language and then test you each point they have shown you. I think this part is to test if you are a quick learner; the last part is 4 programming questions using the languages they have provided, for me, these questions are not very easy. It took a long time. Please prepare a calculator for the test. I forget to prepare one so it took longer to figure some questions. Please keep this in mind: being fast is important, but not as important as accuracy. You can find online assessment sample questions on the website to prepare for the assessment.

The interviewer started with some small talk. Talked a little bit about my research work. Then went on with technical questions. Openned terminal on his computer. First he asked about if I know anything about zombie process. Then he asked about ‘malloc’. Then he told me, how would I implement a malloc like function in a separate memory space like some PCI connected to the main memory. The question was not very clear to me. I tried to explain how I could implement that memory over the extra connected memory. I am not sure if he was very happy about it. Then he went onto his terminal. A C program was there. Just two lines char* str1 = “string1”; char str2[] = “string2”; He told me to print the two strings. I did and then he told me to change the ‘t’ in both of the string to ‘T’. I told him that we cannot change the first string. He asked me why? I could not tell it clearly. I just showed him that, it generates a segmentation fault. I told it might be in some place in the memory which we cannot edit. He kept asking the question to prove my point. Then gave me hint and let me print the addresses of main, some variables which have higher value sounded like they are in the stack part. Printing the values of main showed very low address which shows that, it’s in the code segment. The char* variable was in a little more higher address which clearly shows that, it is in the data segment, which suggests that we can not edit anything on the data segment. So need to know what’s more there in the data segment? Then he showed some networking terms ip ipconfig ping some more (around 6-7) which I forgot. He told me to explain in short what these functions do. Then he asked me to write a script on python, which will read a file and add all the numbers on the third column. He showed me the file with cat command. It as a space separated text like 1 7 8 9 6 5 5 0 8 8 4 5 7 2 4 6 8 9 0 7 4 5 1 7 9 6 0 3 8 0 1 7 8 9 4 6 8 0 8 6 9 8 6 9 7 0 7 6 4 0 1 2 3 4 5 6 7 8 4 5 6 7 8 9 1 0 1 3 4 8 3 5 1 7 8 9 4 6 8 0 8 6 9 8 6 9 Then he gave me a problem on linked list. The problem was to delete all the nodes with a particular number on it. I just needed to write the main function and call that from the main file. The structure and main file was already written. I just needed to add the function prototype to the *.h file.
avatar

Software Developer

Interviewed at Arista Networks

4.1
Sep 14, 2015

The interviewer started with some small talk. Talked a little bit about my research work. Then went on with technical questions. Openned terminal on his computer. First he asked about if I know anything about zombie process. Then he asked about ‘malloc’. Then he told me, how would I implement a malloc like function in a separate memory space like some PCI connected to the main memory. The question was not very clear to me. I tried to explain how I could implement that memory over the extra connected memory. I am not sure if he was very happy about it. Then he went onto his terminal. A C program was there. Just two lines char* str1 = “string1”; char str2[] = “string2”; He told me to print the two strings. I did and then he told me to change the ‘t’ in both of the string to ‘T’. I told him that we cannot change the first string. He asked me why? I could not tell it clearly. I just showed him that, it generates a segmentation fault. I told it might be in some place in the memory which we cannot edit. He kept asking the question to prove my point. Then gave me hint and let me print the addresses of main, some variables which have higher value sounded like they are in the stack part. Printing the values of main showed very low address which shows that, it’s in the code segment. The char* variable was in a little more higher address which clearly shows that, it is in the data segment, which suggests that we can not edit anything on the data segment. So need to know what’s more there in the data segment? Then he showed some networking terms ip ipconfig ping some more (around 6-7) which I forgot. He told me to explain in short what these functions do. Then he asked me to write a script on python, which will read a file and add all the numbers on the third column. He showed me the file with cat command. It as a space separated text like 1 7 8 9 6 5 5 0 8 8 4 5 7 2 4 6 8 9 0 7 4 5 1 7 9 6 0 3 8 0 1 7 8 9 4 6 8 0 8 6 9 8 6 9 7 0 7 6 4 0 1 2 3 4 5 6 7 8 4 5 6 7 8 9 1 0 1 3 4 8 3 5 1 7 8 9 4 6 8 0 8 6 9 8 6 9 Then he gave me a problem on linked list. The problem was to delete all the nodes with a particular number on it. I just needed to write the main function and call that from the main file. The structure and main file was already written. I just needed to add the function prototype to the *.h file.

Viewing 101 - 110 interview questions

Glassdoor has 96,169 interview questions and reports from Software developer interviews. Prepare for your interview. Get hired. Love your job.