Rejected. Interview Date: April 21, 2026
2026 KPIT Embedded Internship Interview Experience
I applied for the Embedded Internship role at KPIT Shanghai in 2026; the job description focused on C/C++ microcontroller and peripheral development. There is currently very little interview experience shared about this role on the Chinese internet, so this article briefly documents the interview process and questions. The position requires cross-border collaboration with the company's teams in Germany and India, so the interview was conducted mainly in English via Microsoft Teams by interviewers based in Munich, Germany.
Interview Process & Questions
The first round was a technical interview. There were 4 interviewers in the Teams meeting room: one Chinese interviewer from the Shanghai office, and the other 3 were Indian interviewers based in Munich. Some of the Indian interviewers had accents; the HR kindly reminded me before the interview that I could enable live captions in Teams as an aid (although during the actual interview, the captions weren't very accurate either). The interview lasted about 45 minutes, covering self-introduction, technical knowledge points, project experience, followed by my questions to them and a brief confirmation of personal information with the Shanghai team. Below are some questions recalled from memory:
- Communication
Concepts of CAN communication and the channels used.
How to capture and parse CAN packets at the driver level.
How to retrieve data from packets at the application level.
Explain the arbitration mechanism of CAN.
Introduce SPI.
In SPI, if a Slave needs to initiate sending a message, how can this be implemented? (Note that the CLK line is controlled by the Master).
How do SPI or I2C handle the issue of data corruption?
- C/C++ Compilation
- Describe the compilation process of a Compiler.
- If an unimplemented function is called, what type of compilation error occurs? Can the compiler still output an object file?
- The contents of various sections generated during compilation
(
.bss,.data,.text, etc.). - What issues can lead to a stack overflow?
- If a
.hheader file exists but cannot be found during compilation, what might be the reasons? - What debugging tools have you used?
- System-related
- Have you used an RTOS? Have you used an OS on STM32?
- Solutions for multi-threading resource contention/preemption.
- Under what circumstances can shared resources be left unprotected without causing issues?
- Under what circumstances will a microcontroller system reset on its own? Can memory corruption cause a reset?
- Explain the watchdog mechanism; what is the difference between a Window Watchdog (WWDG) and an Independent Watchdog (IWDG)?
- Project-related Questions
- Explain the technical implementation approaches of some projects (in my case, questions were asked about OTA project details and toolchain experience).
Brief Summary & Ramblings
Looking back, the interview questions were not overly difficult. However, some questions cannot be answered simply by cramming standard interview questions (bagu) if you haven't actually encountered them in real projects. For me, the biggest challenge was overcoming the language and psychological barriers, followed by the need to more comprehensively consolidate foundational technical knowledge.
Lastly, some excuses for myself (´ー`). I was still in North America during the interview, and the interview was scheduled according to the Munich time zone, so I was quite groggy interviewing at 6 AM local time... Many answers were given with uncertainty, and my spoken English was neither precise nor fluent. Before the interview, the HR had already mentioned that they were not particularly inclined to hire students for short-term internships or those based in North America. Thus, my very first all-English technical interview ended in an unsurprising silent rejection.