The Embedded Senior Engineer is responsible for the design and maintenance of embedded software for connected objects. This position provides a comprehensive view of product functions, from interactions with electronics to communication protocols with the Cloud and mobile applications. The engineer demonstrates technical breadth and depth across multiple areas, mastering the technologies involved in connecting multiple products. They help troubleshoot complex behavior or propose meaningful evolutions by understanding the full stack, from bottom to top protocols, system layers, and applications. The role is integrated within a worldclass engineering team, working closely with internal departments such as R&D, Mechanical Engineering, Electronics (Netatmo / Legrand), Mobile Applications, Cloud, Quality Validation, Test Bench, Industrialization, Vision, Algorithms, Product/Project Managers, and Security. The engineer will also interact with external stakeholders, including certification labs, regulatory audit organizations, Bluetooth SIG, WiFi Alliance, Thread Group, Matter CSA, Zigbee, Homekit, Apple, and production factories.
Key Responsibilities :
-
Design and Development: Develop high-quality embedded software in C, specifically for ARM (Cortex) processors. Integrate and utilize communication protocols such as WiFi, Bluetooth, TCP/IP, and radio technologies (802.15.4, sub-GHz). Propose technical strategies for optimizing software performance in environments with constraints such as memory and power consumption.
-
Testing and Quality Assurance: Define and implement testing methods to ensure proper functionality and reliability of the developed software. Collaborate with quality and support teams to identify and correct bugs and defects. Ensure adherence to coding standards and propose improvements to these standards.
-
Adherence to Coding Standards: Strictly adhere to coding standards set by the company and contribute to the continuous improvement of these standards within the team. Improve and enforce code quality by promoting automated CI/CD approaches.
-
Code Integration and Collaboration: Use advanced tools and methods for source code management, facilitating collaboration on a shared codebase. Participate actively in code reviews and collaborate with other engineers to improve code quality and maintainability. Mentor junior developers and share knowledge and expertise with the team.
-
Technology Watch and Training: Stay informed about the latest technological advancements in embedded software. Participate in internal and external training to continuously develop skills, ensuring personal and team growth.
-
Programming Languages: Proficiency in C, appreciated experience in C++, Shell, and Python.
-
Embedded Systems Development: Experience in embedded software development, particularly with ARM processors, FreeRTOS or Zephyr, and understanding of low-level embedded software development.
-
Communication Protocols: Proficiency in Wi-Fi, Bluetooth, TCP/IP, Zigbee and radio protocols (802.15.4, sub-GHz).
-
Version Control: Mastery of Git for version control.
-
Linux: Proficiency in Linux environments for software development.
-
Electronics: Basic knowledge of electronics and familiarity with low-level embedded software development.
-
CI/CD: Experience in enforcing code quality and process automation through continuous integration and delivery (CI/CD)
- 5 years' higher education in engineering with at least 7 years' experience in a similar position
Proficiency Level :
Technology :
- Demonstrates technical breadth and depth across multiple areas.
- Understands and masters technologies involved in the system connecting multiple products, including bottom-to-upper layers of protocols, system layers, and applications, helping troubleshoot complex behaviors and propose meaningful evolutions.
- Anticipates risks and mitigates issues before they arise.
- Proposes technical strategies to ensure future scalability and optimization across system layers.
Product :
- Develops & trouble shoots complex area of code or product.
- Identifies areas for improvement in their domain and implements fixes.
- Designs solutions interoperable with multiple and complex products and systems.
People :
- Mentors other developers, sharing knowledge and expertise.
- Coordinates technical topics with other teams for cross-functional goals.
Process :
- Enforces the team processes, making sure everybody understands the benefits and tradeoff
- Suggests adjustments to processes based on observed inefficiencies.
- Delivers consistently within planned timelines.
Influence :
- Influences the direction of the product development.
- Help improve efficiency of development by influencing both functional and technical specifications writting.
- Same for test definition and writings, by interfacing with other R&D teams and subcontractors.
Benefits : 💪
💰
- Holiday bonus
- Employee discount on the purchase of Netatmo products
- CET : time savings account
- PERECO contribution
- Allowance for the purchase of teleworking equipment
- 50% reimbursement of transport costs
- Soft mobility allowance
⏱️
- Eco-responsible building with concierge service
- On-site gym (with shower)
- Luncheon vouchers
- Access to the inter-company restaurant & foodcourt
- Teleworking
- 100% dematerialised mutual insurance: Alan 👩⚕️
- Access to an e-learning platform.
- Internal mobility possible (Netatmo and Legrand Group)
⚽
- Several board games, a table tennis table 🏓& Table football available during breaks.
- Parking for your car🚗, motorbike and bicycle 🚴♂️ subject to space availability