Embedded Software Engineer
200+ Embedded Software Engineer Interview Questions and Answers

Asked in Cyient

Q. Introduction. Difference between Embedded Systems and Embedded software. Difference between linux and windows. Why use microcontroller instead of microprocessor. C programming: structure and union, pointer and...
read moreInterview questions for Embedded Software Engineer
Embedded systems are hardware and software combined to perform a specific task
Embedded software is the software component of an embedded system
Linux is open-source, customizable, and widely used in embedded systems
Windows is proprietary, less customizable, and not commonly used in embedded systems
Microcontrollers have built-in memory and peripherals, making them more suitable for embedded systems
Microprocessors require externa...read more

Asked in Aptiv

Q. 3. 1)Do you know about Autosar. 2)define function definition and function declaration. 3)difference between structure and union. 4) define Enumeration 5)what is microcontroller and microprocessor and its applic...
read moreInterview questions for Embedded Software Engineer including Autosar, function definition, structure and union, microcontroller and microprocessor, and communication protocols.
Autosar is an automotive software architecture standard.
Function definition specifies the code to be executed by a function.
Function declaration specifies the function's name, return type, and parameters.
Structure is a collection of variables of different data types, while union is a collection of varia...read more
Embedded Software Engineer Interview Questions and Answers for Freshers

Asked in VVDN Technologies

Q. What are conductors, insulators, and semiconductors?
Conductor, insulator and semiconductor are materials that conduct electricity in different ways.
Conductors allow electricity to flow through them easily, such as copper and aluminum wires.
Insulators do not allow electricity to flow through them easily, such as rubber and plastic.
Semiconductors have properties of both conductors and insulators, such as silicon and germanium.
The conductivity of a material can be measured by its resistance to the flow of electricity.
Conductivity...read more

Asked in Cyient

Q. 1) which microcontroller you have used in Academics?
I have used STM32 microcontroller in my academics.
I have worked on STM32F4 Discovery board for a project in my final year.
I have also used STM32CubeMX software for code generation and debugging.
I have experience in programming STM32 microcontrollers using C language.

Asked in HCLTech

Q. How can a program enter both the if and else blocks simultaneously?
It is not possible to enter if and else at the same time in a programming language.
If and else are conditional statements that are mutually exclusive.
They are used to execute different blocks of code based on a condition.
To execute multiple blocks of code simultaneously, you can use nested if-else statements or logical operators.

Asked in Continental

Q. C Programming questions - program to identify no of 1s in binary representation of a number, program to show pointer concept
Program to count number of 1s in binary representation of a number and demonstrate pointer concept.
Use bitwise AND operator to check if the rightmost bit is 1
Shift the number to the right by 1 bit after each check
Use a pointer to access the memory address of a variable
Dereference a pointer to access the value stored in that memory address
Embedded Software Engineer Jobs




Asked in Cyient

Q. How do you write a C program to toggle a particular bit?
To toggle a particular bit in C, use bitwise XOR operator with 1 at the desired bit position.
Use bitwise XOR operator (^) with 1 at the desired bit position to toggle it.
Example: To toggle the 3rd bit of a variable 'x', use x ^= (1 << 2);
Make sure to use the correct bit position starting from 0 for the least significant bit.

Asked in VVDN Technologies

Q. Why are semiconductors used in electronics?
Semiconductors are used in electronics for their ability to control the flow of electricity.
Semiconductors have a unique property of being able to switch between conducting and insulating states.
They are used in transistors, diodes, and integrated circuits.
Examples include silicon, germanium, and gallium arsenide.
Share interview questions and help millions of jobseekers š

Asked in Aptiv

Q. write a program on structure.? and by using pointers how we declare structures.
A program on structures using pointers to declare them.
Use the 'struct' keyword to define a structure
Use the 'typedef' keyword to create a new type name for the structure
Use the '->' operator to access structure members through a pointer
Example: typedef struct { int x; int y; } Point; Point *p;
Example: p->x = 5; p->y = 10;

Asked in Texas Instruments

Q. For an embedded device, what do you prefer: with an OS or without an OS?
It depends on the requirements and constraints of the project.
If the project has limited resources, a bare-metal approach without an OS may be more appropriate.
If the project requires complex functionality and multitasking, an OS may be necessary.
An OS can provide better security and easier maintenance.
Examples of OS for embedded devices are FreeRTOS, uC/OS, and Linux.
Consider the cost and time-to-market implications of using an OS.

Asked in Cyient

Q. Write a program to iterate through an array using pointers.
Program to iterate an array using pointer
Declare a pointer variable and initialize it to the base address of the array
Use a loop to iterate through the array using the pointer variable
Increment the pointer variable in each iteration to point to the next element
Stop the loop when the pointer variable reaches the end of the array

Asked in VVDN Technologies

Q. How are P-type and N-type semiconductors created?
Semiconductor doping is used to make a semiconductor p-type or n-type by introducing impurities with different valence electrons.
To make a semiconductor p-type, impurities with three valence electrons (e.g., boron) are added.
To make a semiconductor n-type, impurities with five valence electrons (e.g., phosphorus) are added.
Doping alters the conductivity and creates majority and minority charge carriers.
P-type has holes as majority carriers, while n-type has electrons as major...read more

Asked in Luxoft

Q. Explain All protocol, what is call by value, call by reference, structure, union, arrays
Explanation of protocols, call by value/reference, structures, unions, and arrays.
Protocols are a set of rules for communication between devices or software components.
Call by value passes a copy of the value to a function, while call by reference passes a reference to the value.
Structures are user-defined data types that group related data together.
Unions are similar to structures, but they share the same memory location for all their members.
Arrays are a collection of eleme...read more

Asked in Meditab Software

Q. What are pointers, and can you provide examples of pointer-related code snippets?
Pointers are variables that store memory addresses. Pointer-related snippets are code examples involving pointers.
Pointers are used to store memory addresses of variables in C/C++.
Pointer arithmetic can be performed to access elements of arrays.
Dereferencing a pointer means accessing the value at the memory address stored in the pointer.

Asked in Tata Elxsi

Q. what is Macro?, how to store just 5 bits inside of a charecter? Dangling Pointers? Inline function?
Macro is a preprocessor directive that performs text substitution. Storing 5 bits in a character can be done using bit manipulation. Dangling pointers are pointers that point to invalid memory locations. Inline functions are functions that are expanded by the compiler at the point of call.
Macros are used to define constants or to perform text substitution
To store 5 bits in a character, we can use bit manipulation operators like bitwise AND and OR
Dangling pointers can cause me...read more
Asked in Iasys Technology Solutions

Q. what is class object, inheritance, function overloading ,function overriding, difference between encapsulation and abstraction, volatile keyword
Class object is an instance of a class, inheritance allows a class to inherit properties and methods from another class, function overloading is defining multiple functions with the same name but different parameters, function overriding is redefining a function in a subclass, encapsulation is bundling data and methods that operate on the data into a single unit, abstraction is hiding the implementation details and showing only the necessary details, volatile keyword is used ...read more

Asked in Knorr-Bremse

Q. Why is an 8-bit microprocessor called an 8-bit microprocessor?
8 bit microprocessor is called so because it processes data in 8 bit chunks.
8 bit microprocessor processes data in 8 bit chunks at a time
It can handle data in 8 bit binary format
Examples include Intel 8080, Zilog Z80, and MOS Technology 6502

Asked in Mirafra Technologies

Q. Why is the default value of the 'reg' keyword a garbage value?
The default value of reg keyword is garbage value due to performance optimization.
Garbage value is faster to assign than initializing to a specific value.
Initializing to a specific value would require additional instructions and memory access.
The value of reg keyword is expected to be overwritten before use.
Garbage value can help in detecting uninitialized variables during testing.
Example: int x; // x will have a garbage value until assigned a value.

Asked in Tata Elxsi

Q. write a program on finding little or big endian,no of bits set in bit magic,
Program to find endianness and number of bits set in bit magic.
Use bitwise operators to check endianness
Count number of set bits using bitwise AND and right shift
Use pre-defined functions for endianness in some programming languages
Endianness can affect network communication and file formats

Asked in VVDN Technologies

Q. What are logic gates and why do we use them?
Logic gates are electronic circuits that perform logical operations on one or more inputs to produce an output.
Logic gates are used in digital electronics to create complex circuits and perform mathematical operations.
There are several types of logic gates, including AND, OR, NOT, NAND, NOR, XOR, and XNOR gates.
Logic gates are the building blocks of digital circuits, and are used in everything from simple calculators to complex computer processors.

Asked in Cradlewise

Q. Describe how you would construct a lock for the Linux kernel, including the atomic instructions and functions you would use.
Constructing a lock in the Linux kernel involves using atomic instructions for synchronization.
Use atomic operations like atomic_add, atomic_sub for lock management.
Example: atomic_t my_lock; atomic_set(&my_lock, 0);
Implement spinlocks using atomic operations for busy-waiting.
Example: spin_lock(&my_lock); // Acquire lock
Use atomic_cmpxchg for lock-free algorithms.

Asked in TCS

Q. What is difference between macro and constant variable in C? How to divide a number without using division operator?
A macro is a preprocessor directive that is replaced by its value before compilation, while a constant variable is a read-only variable.
Macros are defined using the #define directive, while constant variables are declared using the const keyword.
Macros are replaced by their values during preprocessing, while constant variables are stored in memory.
Macros can lead to code duplication, while constant variables provide type checking and scope.
Macros can be used for conditional c...read more

Asked in H&M

Q. What the most i like in webtechnicals?
I'm sorry, but I cannot answer this question as it is unclear and does not relate to the job of an Embedded Software Engineer.

Asked in Mirafra Technologies

Q. Why should the auto keyword only be used in local scope?
Using auto keyword in local scope only ensures type safety and avoids unintended side effects.
Auto keyword deduces the type of the variable from its initializer expression.
Using auto in local scope avoids unintended type conversions and promotes type safety.
Auto keyword should not be used for function parameters or class members.
Example: auto x = 10; // x is deduced as int
Example: auto y = 3.14; // y is deduced as double

Asked in TCS

Q. What is difference between Normal OS and RTOS? What is difference between microcontroller and microprocessor? Write a C program to swap two numbers without using 3rd variable.
RTOS is a real-time operating system designed for time-sensitive applications. Microcontrollers are integrated circuits with built-in memory and peripherals.
RTOS is designed to provide deterministic and predictable response times for critical tasks.
Normal OS is designed for general-purpose computing and may not prioritize real-time tasks.
Microcontrollers are typically used in embedded systems and have limited resources compared to microprocessors.
Microprocessors are used in g...read more

Asked in Sedemac Mechatronics

Q. Find the output of the C code related to char and ASCII values: for(char c=0; c<500; c++) printf(ā%dā, c);
The code will print ASCII values of characters from 0 to 499.
The 'char' data type in C is used to store ASCII values of characters.
The 'printf' function with '%d' format specifier will print the ASCII value as an integer.
The loop will iterate from 0 to 499, printing the ASCII values of characters.

Asked in L&T Technology Services

Q. What is mean by function pointer and purpose of tha? Differenece b/w UART and USART? Compilation stages Storage classes
Function pointer is a variable that stores the address of a function. UART is asynchronous, USART is synchronous. Compilation stages are preprocessing, compilation, assembly, and linking. Storage classes define the scope and lifetime of a variable.
Function pointer is used to call a function indirectly
UART is a serial communication protocol that uses only one communication line
USART is a synchronous version of UART that uses two communication lines
Compilation stages include pr...read more

Asked in Meditab Software

Q. Write a program to find all prime numbers within a given range of natural numbers.
To find prime numbers between a range of natural numbers.
Iterate through each number in the range
Check if the number is prime by dividing it by numbers up to its square root
If the number is prime, add it to the list of prime numbers


Q. What happens when volatile and const are used together?
When volatile and const are used together, the variable is treated as read-only and its value can change unexpectedly.
The const keyword indicates that the variable's value cannot be changed by the program.
The volatile keyword tells the compiler that the variable's value may change at any time, even if it doesn't appear to be modified by the program.
When used together, the variable is treated as read-only by the program, but its value can still change unexpectedly due to exter...read more

Asked in KPIT Technologies

Q. Projects in depth (challenges, some part of code explain)
Developed a real-time monitoring system for industrial robots
Challenges included optimizing code for real-time performance
Implemented communication protocols like CAN bus for data exchange
Used PID control algorithms for precise robot movements
Interview Questions of Similar Designations
Interview Experiences of Popular Companies





Top Interview Questions for Embedded Software Engineer Related Skills

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


Reviews
Interviews
Salaries
Users

