Internship student : RUST for embedded systems
Kortrijk, BE
Overview:
We are seeking a motivated ICT student for an internship focused on evaluating the feasibility and impact of transitioning from C/C++ to Rust in embedded systems development. This internship will explore safety, correctness, tooling, training needs, and the practical implications of adopting Rust in a professional embedded software environment.
Objectives:
- Compare Rust with C and C++ in terms of:
- Memory safety
- Concurrency safety
- Compile-time correctness guarantees
- Runtime performance
- Evaluate the maturity and suitability of Rust for embedded systems:
- Support for microcontrollers and real-time systems
- Availability of crates and libraries
- Community and vendor support
- Assess the transition effort:
- Required training for embedded software engineers
- Migration strategies (partial vs. full rewrite)
- Estimated time frame for adoption
- Identify tooling requirements:
- Open-source vs. vendor-supported tools
- IDEs, debuggers, build systems, CI/CD integration
- Highlight potential disadvantages or limitations:
- Ecosystem maturity
- Integration with existing C/C++ codebases
- Long-term maintainability
Deliverables:
- A comparative report with benchmarks and case studies
- A transition roadmap with training recommendations
- A tooling overview and setup guide
- Presentation of findings to the R&D team
Profile:
- ICT or Computer Science student with interest in embedded systems
- Familiarity with C/C++ and basic knowledge of Rust
- Analytical mindset and ability to work independently
- Strong communication skills for presenting technical findings
Duration:
- 3 to 6 months (flexible based on academic schedule)
Benefits:
- Hands-on experience with cutting-edge technologies
- Mentorship from experienced embedded software engineers
- Opportunity to influence future technology choices in a professional R&D setting