Role: Embedded Software Engineer (Senior)
Location: Must be based outside of South Africa, ideally close to South African time zone (Europe, UK, Ireland, UAE, etc.)
Travel: Some level of international travel will be required
Please note: Must be able to work across multiple time-zones / flexi-time when required.
Full-Time Contractor (12 months to start): Pays in USD
Introduction:
We are working on a unique international Embedded Software Engineer (Senior) role on behalf of our client, a start-up 5G Connectivity Solutions company expanding internationally.
Please noter before applying that OpenWRT experience critical.
Job purpose
As an Embedded Software Developer, you will be responsible for designing, developing, testing, and maintaining software for embedded systems (specifically 5G CPE/Routers). Your role will involve working with hardware engineers and cross-functional teams to create efficient, reliable, and high-performance embedded software solutions. You will be working on various hardware platforms and embedded operating systems, contributing to the development of cutting-edge products and technologies.
Responsibilities:
- Design, code, test, and debug embedded software applications and firmware for various microcontrollers, microprocessors, and embedded operating systems (OpenWRT and Linux).
- Develop low-level software components, device drivers, and firmware to interface with hardware peripherals and sensors.
- Collaborate with hardware engineers to integrate software with hardware components, ensuring seamless functionality and optimal performance.
- Participate in board bring-up activities, including bootloader/firmware development and system initialization.
- Implement communication protocols such as UART, SPI, I2C, CAN, Ethernet, Bluetooth, or Wi-Fi for data exchange between embedded devices.
- Develop and execute unit tests and integration tests to validate the functionality and reliability of the embedded software.
- Create and maintain technical documentation.
- Participate in code reviews to ensure code quality, adherence to coding standards, and best practices.
- Implement security measures to protect embedded systems from potential vulnerabilities and cyber threats.
- Use version control systems like Git to manage and track changes in the embedded software codebase across various customer and hardware iterations.
- Collaborate with product managers, software architects, and other team members to create technical designs and specifications for new features and system enhancements.
- Stay updated with the latest software development trends and technologies.
- Propose and implement process improvements and best practices.
- Contribute creative ideas and solutions to improve the software development process and overall product quality.
Qualification, Knowledge and Experience
Qualifications
- BSC Degree in Computer Science or Electrical Engineering
Experience
- +5 years
- Proven experience in embedded software development, including working with microcontrollers/microprocessors and embedded operating systems based on Linux.
- OpenWRT experience critical.
- Proficiency in embedded systems development using C (Minimum of 2 years solid experience).
- Additional experience in C++, Python, Java and Lua would be advantageous.
- Familiarity with embedded development tools, IDEs and hardware debugging tools.
- Knowledge of the various communication protocols commonly used in embedded systems.
- Experience with REST/SOAP web services and Swagger
- Source code management (GitHub)
Behavioural Competencies
- Able to work alone (unsupervised) and/or within a large team
- Work at speed for rapid prototyping. Ability to work in a fast-paced environment and adapt to various hardware platforms and development environments.
- Continuous learning / Self improvement
- Building and maintaining open relationships & communication lines
- Initiative, Persistence/ Follow through
- Well-spoken/ good written communication skills (English)
- Conceptual thinking
Location
- Be able to work across multiple time-zones / flexitime when required
Apply on LinkedIn or Contact:
E: declan@bullock.co.za
LI: https://www.linkedin.com/in/declanbullock77