Embedded Developer

50+ Embedded Developer Interview Questions and Answers

Updated 2 Jul 2025
search-icon

Asked in Bosch

3d ago

Q. What is the difference between a null pointer and a void pointer?

Ans.

A null pointer points to nothing while a void pointer can point to any data type.

  • A null pointer is a pointer that has been explicitly set to a null value.

  • A void pointer is a pointer that has no type associated with it.

  • A null pointer is a subtype of a void pointer.

  • A null pointer is used to indicate that a pointer does not point to a valid object.

  • A void pointer is used to store a pointer to any type of object.

Asked in Aptiv

3d ago

Q. What are storage class specifiers in C?

Ans.

Storage class specifiers in C are used to define the scope and lifetime of variables.

  • There are four storage class specifiers in C: auto, register, static, and extern.

  • Auto variables are local to a block and have automatic storage duration.

  • Register variables are stored in CPU registers for faster access.

  • Static variables have a lifetime throughout the program and are initialized only once.

  • Extern variables are declared in one file and can be used in other files.

  • Storage class spec...read more

Embedded Developer Interview Questions and Answers for Freshers

illustration image

Asked in Cognizant

6d ago

Q. Where are memory stack, local, global, and static variables stored?

Ans.

Memory stack stores local variables, while global and static variables are stored in the data segment.

  • Local variables are stored on the stack, which is a region of memory that grows and shrinks as functions are called and return.

  • Global variables are stored in the data segment, which is a fixed area of memory accessible throughout the program.

  • Static variables, which retain their value between function calls, are also stored in the data segment.

  • Example: In C, a local variable d...read more

Asked in TCS

1d ago

Q. What is the difference between a Microprocessor and a Microcontroller?

Ans.

Microprocessor is a standalone CPU while microcontroller has CPU, memory, and peripherals on a single chip.

  • Microprocessor is used in applications where processing power is the main requirement, like computers.

  • Microcontroller is used in embedded systems where space, power, and cost are constraints, like in IoT devices.

  • Microprocessors require external components like memory and peripherals, while microcontrollers have them integrated.

  • Examples of microprocessors include Intel Co...read more

Are these interview questions helpful?

Q. What are flip-flops and how do they function in digital electronics?

Ans.

Flip-flops are fundamental digital memory circuits used to store binary data, functioning as bistable devices.

  • Bistable Device: Flip-flops can hold one of two states (0 or 1), making them essential for storing binary information.

  • Types of Flip-Flops: Common types include SR (Set-Reset), D (Data), JK, and T (Toggle) flip-flops, each serving different purposes.

  • Clock Signal: Flip-flops are triggered by clock signals, which synchronize their state changes, ensuring reliable data st...read more

Q. What is the code to sort a list of numbers in ascending order?

Ans.

Sorting a list of numbers in ascending order can be achieved using various algorithms or built-in functions.

  • Use built-in functions like 'sort()' in Python: Example: numbers.sort()

  • Implement sorting algorithms like Bubble Sort: Example: for i in range(len(arr)): for j in range(0, len(arr)-i-1): if arr[j] > arr[j+1]: arr[j], arr[j+1] = arr[j+1], arr[j]

  • Consider using Quick Sort for efficiency: Example: def quick_sort(arr): if len(arr) <= 1: return arr; pivot = arr[len(arr) // 2];...read more

Embedded Developer Jobs

ZF India private limited. logo
Internship- Embedded Developer 0-1 years
ZF India private limited.
3.7
Hyderabad / Secunderabad
Robert Bosch Engineering and Business Solutions Private Limited logo
Embedded Developer_SDS/BSV-ENG_QCOM 3-8 years
Robert Bosch Engineering and Business Solutions Private Limited
4.2
Hyderabad / Secunderabad
Applied Information Inc (India) logo
Embedded Developer 4-8 years
Applied Information Inc (India)
4.7
Mohali

Q. What is the difference between a microcontroller and a microprocessor?

Ans.

Microcontrollers are integrated circuits designed for specific tasks with built-in memory and peripherals, while microprocessors are general-purpose CPUs without built-in memory or peripherals.

  • Microcontrollers are typically used in embedded systems for specific tasks, such as controlling a motor or sensor.

  • Microcontrollers have built-in memory and peripherals, reducing the need for external components.

  • Microprocessors are more versatile and used in general-purpose computing dev...read more

Asked in Aptiv

6d ago

Q. What does the preprocessor do in C?

Ans.

Preprocessor in C is a tool that processes source code before compilation.

  • It performs macro substitution

  • It includes header files

  • It conditionally compiles code

  • It defines constants and symbols

  • It removes comments

  • Examples of preprocessor directives are #include, #define, #ifdef, #ifndef, #endif

  • Preprocessor directives start with a # symbol

Share interview questions and help millions of jobseekers 🌟

man-with-laptop
2d ago

Q. Write a device driver code for I2C in STM32, assuming the register address macros are known.

Ans.

This code demonstrates a basic I2C device driver for STM32 using HAL library functions.

  • Include necessary headers: #include 'stm32f4xx_hal.h'

  • Initialize I2C: HAL_I2C_Init(&hi2c1);

  • Define I2C handle: I2C_HandleTypeDef hi2c1;

  • Use HAL_I2C_Master_Transmit() to send data.

  • Use HAL_I2C_Master_Receive() to read data.

  • Check for errors using HAL_I2C_GetError() function.

6d ago

Q. What is kernel space and any experience in device drivers

Ans.

Kernel space is a protected area of memory where the core of the operating system resides. Device drivers are software that allows the operating system to communicate with hardware devices.

  • Kernel space is a privileged area of memory that is reserved for the core components of the operating system.

  • Device drivers are software modules that facilitate communication between the operating system and hardware devices.

  • Experience in device drivers may involve writing, debugging, or op...read more

Asked in Bosch

3d ago

Q. What is a function pointer and what are its uses?

Ans.

Function pointer is a variable that stores the address of a function and can be used to call that function.

  • Function pointers are used to pass a function as an argument to another function.

  • They can be used to implement callbacks and event handlers.

  • Function pointers can be used to implement polymorphism in C.

  • They can be used to switch between different implementations of a function at runtime.

Asked in Future Group

1d ago

Q. what is interrupt latency..? what is a function pointer....?

Ans.

Interrupt latency is the time delay between the occurrence of an interrupt and the start of the routine that services the interrupt. A function pointer is a variable that stores the address of a function.

  • Interrupt latency is critical in real-time systems where timely response to events is important.

  • Interrupt latency can be reduced by optimizing the interrupt service routine.

  • Function pointers are commonly used in C and C++ programming languages.

  • Function pointers can be used to...read more

Asked in Aptiv

2d ago

Q. What is an Interrupt Service Routine?

Ans.

An Interrupt Service Routine (ISR) is a function that is executed in response to an interrupt signal.

  • ISR is a type of callback function that handles interrupts

  • It is a low-level function that runs in response to a hardware event

  • ISR must be short and fast to avoid blocking other interrupts

  • Examples of interrupts include keyboard input, timer events, and hardware errors

5d ago

Q. Write code for ADC for STM32 without register details, but you must remember the register names.

Ans.

This code configures and reads ADC values on STM32 microcontrollers, enabling analog signal processing in embedded applications.

  • Initialization: Configure the ADC peripheral using HAL functions, e.g., HAL_ADC_Init().

  • Channel Selection: Select the ADC channel to read from, e.g., ADC_CHANNEL_0.

  • Start Conversion: Use HAL_ADC_Start() to begin the conversion process.

  • Polling for Conversion: Wait for the conversion to complete using HAL_ADC_PollForConversion().

  • Read Value: Retrieve the ...read more

Asked in Aptiv

2d ago

Q. What are the different types of interrupts?

Ans.

Interrupts are signals sent to the processor to temporarily halt its current task and execute a specific task.

  • Hardware interrupts - generated by external devices

  • Software interrupts - generated by software programs

  • Maskable interrupts - can be disabled by the processor

  • Non-maskable interrupts - cannot be disabled by the processor

  • Examples - keyboard input, mouse input, timer interrupts, etc.

6d ago

Q. Explain the serial communication protocols SPI, UART, and I2C.

Ans.

SPI, UART, and I2C are communication serial protocols used in embedded systems to transfer data between devices.

  • SPI (Serial Peripheral Interface) is a full-duplex synchronous communication protocol commonly used for communication between microcontrollers and peripheral devices.

  • UART (Universal Asynchronous Receiver/Transmitter) is a serial communication protocol that uses two wires for data transmission and is commonly used for communication between devices over longer distanc...read more

4d ago

Q. Are you develpoed a software from scratch? Or not?

Ans.

Yes, I have developed software from scratch for various projects.

  • I have experience developing software from scratch for projects in the automotive industry.

  • I have created custom firmware for embedded systems starting from a blank slate.

  • I have built applications from the ground up using C/C++ and Python.

  • I have designed and implemented algorithms for real-time processing in embedded systems.

Asked in ServiceNow

5d ago

Q. What is the use of the static keyword?

Ans.

Static keyword is used to declare variables and functions that are only accessible within the file they are declared in.

  • Static variables retain their value between function calls

  • Static functions can only be called within the file they are declared in

  • Static variables in functions are initialized only once

5d ago

Q. Explain the construction and working of a schematic diagram.

Ans.

Schematic diagrams are visual representations of a circuit's components and connections.

  • Schematic diagrams use symbols to represent components like resistors, capacitors, and transistors.

  • Lines connecting the symbols show how the components are connected in the circuit.

  • Schematic diagrams help engineers and developers understand and troubleshoot circuits.

  • Example: A schematic diagram of a simple LED circuit would show the LED symbol connected to a resistor and a power source.

Q. Explain the register level architecture of ARM Cortex-M series controllers.

Ans.

ARM Cortex-M series controllers have a register level architecture for low-level programming and control.

  • ARM Cortex-M series controllers have multiple registers for controlling various functions such as GPIO, timers, and interrupts.

  • Registers are memory locations within the processor used for storing data and control information.

  • Programmers can directly access and manipulate these registers to configure the behavior of the controller.

  • For example, the GPIO registers can be used...read more

Q. Write a program to implement matrix multiplication.

Ans.

Program to implement matrix multiplication in C++.

  • Declare two matrices A and B of appropriate dimensions.

  • Initialize the matrices with values.

  • Create a result matrix C with dimensions rows of A and columns of B.

  • Perform matrix multiplication using nested loops.

  • Print the result matrix C.

Asked in Flextron

2d ago

Q. How do you develop a Linux device driver?

Ans.

Developing Linux device drivers involves understanding the Linux kernel, writing code to interact with hardware, and testing the driver.

  • Understand the Linux kernel architecture and device model

  • Write the driver code to interact with the hardware

  • Compile the driver code and load it into the kernel

  • Test the driver to ensure proper functionality

  • Handle errors and debug issues as needed

Q. Microprocessor vs microcontrollers

Ans.

Microprocessors are general-purpose processors while microcontrollers are specialized processors for specific tasks.

  • Microprocessors are used in computers and smartphones, while microcontrollers are used in embedded systems like washing machines and traffic lights.

  • Microprocessors have separate memory and I/O devices, while microcontrollers have integrated memory, I/O ports, and peripherals.

  • Microprocessors require external components for operation, while microcontrollers are se...read more

6d ago

Q. Explain the differences between the I2C and SPI protocols.

Ans.

I2C is a synchronous serial communication protocol that uses a master-slave architecture, while SPI is a full-duplex communication protocol with a master-slave relationship.

  • I2C uses two wires for communication (SDA and SCL), while SPI typically uses four wires (MISO, MOSI, SCK, and SS).

  • I2C supports multiple devices on the same bus with unique addresses, while SPI requires a separate SS line for each device.

  • I2C has a lower data transfer rate compared to SPI, but is more common...read more

5d ago

Q. What is memory layout in C?

Ans.

Memory layout in C refers to how variables are stored in memory, including stack, heap, and data segments.

  • Memory layout includes stack, heap, data segments

  • Variables stored in stack have limited scope and size

  • Dynamic memory allocation uses heap for storage

  • Global and static variables stored in data segment

6d ago

Q. Write a C program to convert binary to decimal.

Ans.

C program to convert binary to decimal

  • Use a loop to iterate through the binary number from right to left

  • For each digit, multiply it by 2 raised to the power of its position

  • Add the result to a variable to calculate the decimal equivalent

Asked in Valeo

3d ago

Q. What is an ultrasonic sensor?

Ans.

An ultrasonic sensor is a device that uses sound waves to measure distance and detect objects.

  • Uses high frequency sound waves to bounce off objects and measure distance

  • Commonly used in robotics and automation for object detection and avoidance

  • Can also be used in parking sensors, security systems, and medical imaging

  • Works by emitting a sound wave and measuring the time it takes for the wave to bounce back

Asked in Flipkart

4d ago

Q. What are your educational institutions?

Ans.

I graduated with a degree in Computer Engineering from XYZ University, specializing in embedded systems and software development.

  • Bachelor's degree in Computer Engineering from XYZ University.

  • Completed coursework in embedded systems, microcontrollers, and real-time operating systems.

  • Participated in a capstone project focused on developing a smart home automation system.

  • Interned at ABC Tech, where I worked on firmware development for IoT devices.

6d ago

Q. Explain the boot-up sequence of an operating system.

Ans.

OS boot up sequence involves several steps such as BIOS initialization, bootloader loading, kernel loading, and initialization of system services.

  • BIOS (Basic Input/Output System) initialization

  • Bootloader loading (e.g. GRUB, LILO)

  • Kernel loading and initialization

  • Init process execution

  • System services initialization

3d ago

Q. What is a Raspberry Pi?

Ans.

Raspberry Pi is a small, affordable computer that can be used for various projects and applications.

  • Single-board computer developed by the Raspberry Pi Foundation

  • Runs on Linux-based operating system

  • Used for educational purposes, DIY projects, IoT applications, etc.

  • Example: Raspberry Pi 4 Model B

1
2
Next

Interview Experiences of Popular Companies

TCS Logo
3.6
 • 11.1k Interviews
Infosys Logo
3.6
 • 7.9k Interviews
Capgemini Logo
3.7
 • 5.1k Interviews
HCLTech Logo
3.5
 • 4.1k Interviews
View all

Top Interview Questions for Embedded Developer Related Skills

interview tips and stories logo
Interview Tips & Stories
Ace your next interview with expert advice and inspiring stories

Calculate your in-hand salary

Confused about how your in-hand salary is calculated? Enter your annual salary (CTC) and get your in-hand salary

Embedded Developer Interview Questions
Share an Interview
Stay ahead in your career. Get AmbitionBox app
play-icon
play-icon
qr-code
Trusted by over 1.5 Crore job seekers to find their right fit company
80 L+

Reviews

10L+

Interviews

4 Cr+

Salaries

1.5 Cr+

Users

Contribute to help millions

Made with ❤️ in India. Trademarks belong to their respective owners. All rights reserved © 2025 Info Edge (India) Ltd.

Follow Us
  • Youtube
  • Instagram
  • LinkedIn
  • Facebook
  • Twitter
Profile Image
Hello, Guest
AmbitionBox Employee Choice Awards 2025
Winners announced!
awards-icon
Contribute to help millions!
Write a review
Write a review
Share interview
Share interview
Contribute salary
Contribute salary
Add office photos
Add office photos
Add office benefits
Add office benefits