Working student Performance Optimization and Profiling of Automotive Bootloader Software
Posted on June 21, 2026
Sindelfingen
Posted on June 21, 2026
About this role
Within our research and development department for software updates and diagnostics, we are shaping the future of vehicle diagnostics. Our team defines the standard diagnostic scopes of all ECUs and works closely with stakeholders from aftersales, production and development. Currently, we are concentrating on the performance optimization of the software update process. As a working student, you have the opportunity to actively contribute your technical knowledge, gain valuable practical experience and develop personally and professionally. You will be part of a team that is working on forward-looking technologies for the next generation of vehicles. The topic can also be further worked on as part of a bachelor's thesis.
The following tasks await you:
- Set up a debug environment to meticulously log temporal behaviour (execution time per function per call, including frequency). This involves configuring and utilizing debugging tools and techniques to capture precise measurements of the execution times of individual functions and code blocks within the bootloader software. The frequency of function calls should also be logged to obtain a comprehensive understanding of the runtime behaviour.
- Derive relevant functions for optimization based on the collected timing data. Based on the detailed timing logs, identify the functions that contribute most significantly to the total execution time or are called disproportionately often - these functions will be the primary candidates for performance optimization efforts.
- Identify the end-to-end bottleneck within the data processing chain. Analyze the entire data flow from initialization to the completion of the boot process to pinpoint any bottlenecks or delays that impair the overall performance of the bootloader - this may encompass both software and hardware aspects.
- Adjust buffer sizes and assess the benefits of parallelization. Experimentally modify buffer sizes in critical data paths to investigate their impact on performance. Furthermore, evaluate the potential for parallelizing tasks or data processing steps to further reduce execution time.
- Create an abstract Proof-of-Concept (PoC) with a focus on data transfer, including write operations. Develop a conceptual model or a simplified implementation that demonstrates the core ideas for improved data transfer mechanisms, particularly concerning write operations, which are often performance-critical.
- Relate findings to the current FBL implementation. The developed concepts and insights should be contextualized within the existing Flash Bootloader (FBL) implementation to assess their applicability and integration possibilities.
- Develop a functional final Proof-of-Concept. Implement a working and testable prototype that demonstrates the identified optimizations and concepts in a realistic environment, with measurable performance improvements.
Requirements:
- Enrolment at a university or transition phase between Bachelor's and Master's degree programmes (e.g. computer science, electrical engineering, mechatronics, software engineering)
- Interest in software topics in the vehicle environment and new technologies
- C programming: Solid knowledge of C programming, especially in the context of embedded systems
- Embedded Systems: Understanding of the specific characteristics and challenges in developing software for embedded systems
- Diagnostics/UDS: Knowledge of vehicle diagnostic systems and the Unified Diagnostic Services (UDS) protocol (nice to have)
- Confident knowledge of German and English, both written and spoken
- Commitment and ability to work in a team
- Analytical mindset and strategic way of working
Want more jobs like this?Get IT & technology jobs in Sindelfingen delivered straight to your inbox.By signing up, you agree that we may process your information in accordance with our privacy policy.
More jobs from this employer