> Markdown version of [/jobs/ext/4594288-software-engineer-f-m-stage](https://www.wearedevelopers.com/jobs/ext/4594288-software-engineer-f-m-stage). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Software Engineer (F/M) - Stage - **Company:** Greenerwave - **Location:** Paris, France - **Contract:** Internship / Graduate position - **Skills:** Abstraction Layers, Automation of Tests, Code Review, Communications Protocols, Continuous Integration, Linux, Linux on Embedded Systems, Embedded Software, Real-Time Operating Systems, Software Engineering, PIC Microcontroller, Bare Metal, GNSS - **Published:** November 6, 2026 - **Apply:** https://www.welcometothejungle.com/en/companies/greenerwave/jobs/software-engineer-f-m-stage_paris ## About the Role Don't meet all the criteria? Apply anyway. Above all, we are looking for someone who is motivated, curious and ready to learn, within a team that will support their skills development. You are currently in your final year at an engineering school (or an equivalent university programme), studying Electronics, Embedded Systems or a related field. Your technical skills * You can develop software in C, * You understand how real-time operating systems work and the constraints they impose, * You have knowledge of microcontroller architecture, * Some knowledge of embedded Linux, continuous integration and continuous deployment (CI/CD), or communication protocols would be a plus, * You have a good command of written and spoken English, enabling you to work in an international environment. Your approach to work * You enjoy working in a team and communicate easily with people from a variety of backgrounds, * You are thorough and approach problems methodically, * You enjoy exploring different approaches and proposing creative solutions to technical problems, * You are curious and take the initiative to move your work forward, * You can work independently while seeking support from the team when needed, * You can write clear, well-structured documents to share your results and document your work. ## Description The Embedded Software team is looking to enhance its libraries to make them easier to use across different microcontrollers and operating systems. By contributing to these improvements, you will help the team accelerate the development of new proofs of concept (PoCs) and simplify the development of new antennas. Reporting to David, Software Team Leader, this internship will give you the opportunity to learn how to design embedded software architectures for different platforms, while working on real-world products: reconfigurable intelligent surfaces (RIS), dual-frequency GNSS and antennas. You will also develop your skills in embedded software development best practices, including testing, continuous integration and code review. Your responsabilities Analysis of existing architecture * Analyse the existing architecture of the three libraries (communication peripherals, OS abstraction and board component control). Library design and enchancement * Design and implement a microcontroller-independent hardware abstraction layer (HAL), * Make the OS abstraction library portable across multiple operating environments (bare-metal, RTOS, Linux, etc.), * Enhance the electronic board component control library to facilitate the integration of new antennas. Integration and testing * Port the libraries to multiple target platforms and validate their operation, * Implement automated testing and continuous integration, * Write technical documentation.