Job Title: Software Engineer
About the Role
We are seeking a skilled Software Engineer to join our team. As a key member, you will be responsible for designing and developing high-quality software solutions for embedded systems.
Key Responsibilities
1. Develops and optimizes embedded C code to interface power electronics for LED lighting products.
2. Integrates external communication protocols, including Ethernet and serial.
3. Designs software architectures with consideration for real-time constraints, processing throughput, execution context, electrical protocols, data coherence, and concurrency.
4. Performs firmware bring-up of firmware on new electronics designs, ensuring proper initialization, configuration, and validation of the embedded system.
5. Develops and maintains Yocto recipes, Makefiles, Bash and Python scripts, and other build automation tools.
6. Participates in and appreciates collaborative peer review of code, designs, test strategies and project plans.
7. Writes, maintains and executes unit, integration, and end-to-end tests to ensure functional correctness and prevent regressions.
8. Gathers, analyses and workshops requirements.
9. Presents work to stakeholders to gather early feedback and align on requirements.
10. Breaks down work into small actionable tasks with time estimates.
11. Develops and debugs software in a mixed Linux and Windows environment.
12. Participates in Agile Retrospectives to evolve the process in a continuous improvement cycle.