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
Are you looking for a varied job as a working student as part of your studies? Then we have just the right thing for you! We offer you a job as a working student, with exciting insights and a wide range of tasks.
The activity can begin from september 2026.