Common interview questions for embedded software developer

Let’s see some of the common interview questions asked during an embedded C developer interview.


1. What changes are to be done on software if the embedded software is ported from a 32 bit architecture to a 64 bit architecture.

2. Can you call a static function which belongs to a different file, if possible How?

3. Volatile qualifier and its use in embedded software.

4. How interrupts are working in embedded software.

5. Explain how you will implement an Ethernet receiver driver using interrupt.

6. Explain about ADCs

7. Explain interrupt latency.

8. Difference between ARM and PowerPC architecture.

9. Explain how stack is working.

10. Memory layout of an executable.

11. Explain the protocols I2C, SPI and CAN.

12. What is the mechanism which determines the baud rate of a CAN network.


1. Priority inversion, priority inheritance, priority ceiling.

2. What is deadlock and livelock.

3. Difference between Semaphore and Mutex.

4. Explain a situation where you have used Semaphore and Mutex in you past projects.

5. Process synchronization methods in RTOS.


1. Why are you looking for a change?

2. What is your expectation from the new job, if offered?


1. Explain your recent project.

2. Draw the software architecture of your recent project.

3. Challenges you faced during your project.


1. How to find the Nth node from the end in a singly linked list.

2. Code to modify the even indexed members in an array.

3. Implement XOR without using the operator.

4. Reverse a string.

5. Convert little endian to big endian.

6. Write a C code to print a string without using a semicolon in the program.

7. Write a program to find a merge in a singly linked list.