Overview
Learn more about the general tasks related to this opportunity below, as well as required skills.
We are seeking an experienced Software Engineer to join our client’s team, developing high‑quality embedded software solutions across a range of innovative products. This role is ideal for someone with strong C and C++ programming skills, hands‑on embedded systems experience, and solid working knowledge of Linux environments.
Key Responsibilities
- Design, develop, and test embedded software using C and C++, ensuring reliability, performance, and maintainability.
- Work within Linux‑based environments to build, debug, and optimise system‑level code.
- Collaborate with hardware, firmware, and systems engineering teams to integrate software with embedded platforms.
- Troubleshoot, diagnose, and resolve issues related to embedded systems, performance, and device behaviour.
- Contribute to code reviews, documentation, version control, and continuous improvement of development processes.
- Support full software lifecycle delivery—from concept and design through to deployment and maintenance.
Key Skills & Experience
- Strong programming experience in C and C++.
- Proven background in embedded software development, including low‑level programming.
- Practical experience working with Linux, including debugging, scripting, and system-level interactions.
- Ability to write clean, efficient, and well‑structured code with strong problem‑solving skills.
Desirable
- Knowledge of real‑time operating systems (RTOS) such as Linux.
- Experience with unit testing frameworks and automated testing for embedded systems.
- Exposure to continuous integration/continuous deployment (CI/CD) practices.
Personal Attributes
- Detail‑oriented, analytical, and proactive in solving technical challenges.
- Strong communicator who can work effectively in cross‑functional teams. xwzovoh
- Passionate about delivering robust, high‑quality embedded software.
…
