Responsibilities
- Architecting, developing, and maintaining subsystem firmware in Zephyr or bare-metal environments.
- Architecting, developing, and maintaining embedded Linux systems using Yocto.
- Supporting board bring-up, including diagnosis using oscilloscopes, logic analysers, and software-based debugging techniques.
- Designing and maintaining board-to-board communication protocols.
- Designing and maintaining networking interfaces, including REST APIs, SNMP agents, and OpenAPI specifications.
- Implementing and debugging TCP/UDP communication layers, low-level networking behaviour, and protocol performance.
- Developing secure communication methods and applying best practices for authentication, encryption, secure OTA updates, and system hardening.
- Using tools such as Nmap, OpenVAS, Nessus, or similar to assess system vulnerabilities and improve security.
- Developing system services, daemons, device drivers, and communication middleware on embedded Linux.
- Leading troubleshooting and root-cause analysis for embedded networking and security issues.
- Defining embedded software requirements, interface specifications, and technical documentation.
- Working closely with hardware, FPGA, and systems engineers to ensure reliable and secure data and control flow.
Qualifications
- Bachelor’s degree in Computer Science, Electronic Engineering, or a related field, or equivalent practical experience in low-level embedded systems development.
- Strong professional experience in embedded Linux software development.
- Professional experience in one or more real-time operating systems (RTOS) and/or bare-metal development.
- Solid experience in prototype board bring-up.
- Strong proficiency in C/C++ for embedded systems, including optimising CPU and RAM utilisation.
- Knowledge of digital communication interfaces such as Gigabit Ethernet, CAN, SPI, I2C, UART, and RS422.
- Strong debugging experience using oscilloscopes, logic analysers, and software debugging tools such as GDB, perf, and valgrind.
- Excellent analytical, communication, and documentation skills.
- Solid experience with ARM Cortex-M and Cortex-A devices, particularly STM32.
- Hands-on experience with the Yocto Project, PetaLinux, or similar build systems.
- Professional experience with Zephyr OS.
- Strong understanding of Linux kernel architecture, device drivers, bootloaders, systemd, and system services.
- Solid understanding of secure networking protocols such as TLS, SSH, IPSec, and HTTPS, as well as authentication and encryption methods.
- Experience in secure bootloader and firmware update development.
- Solid proficiency in Python.
- Experience with extremely high frequency RF systems.
- Familiarity with MISRA C/C++ or other high-reliability embedded software standards.
- Experience in Linux systems automation, including CI/CD and testing.
- Familiarity with container technologies such as Docker and Kubernetes.
- Basic soldering ability for minor modifications or attaching leads for probing.
- Ability to obtain SC security clearance, where required by the nature of the work.
#J-18808-Ljbffr…
