Principal Embedded Software Engineer
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Tech stack
+15 more
Job description
We re partnering with an established technology engineering organisation seeking a Principal Embedded Software Engineer to lead software architecture, technical delivery, and development strategy across advanced embedded systems. This is a senior, hands-on role combining system architecture, embedded software development, and project ownership. A key aspect of this position is applying electrical power systems knowledge and protection function theory within embedded control environments. If you re a senior embedded engineer looking to influence architecture, lead delivery, and work on complex real-time systems, we want to hear from you!
About the Role
- Define and own embedded software architecture and technical direction
- Lead delivery of complex embedded projects to time and quality targets
- Develop and maintain robust C/C++ embedded codebases
- Translate system requirements into structured deliverables
- Guide design decisions and review implementation approaches
- Oversee testing strategy, documentation, and release quality
- Identify technical risks and implement mitigation strategies
- Drive Agile processes and continuous improvement practices
- Collaborate cross-functionally with engineering and project stakeholders
Requirements
- Degree (or equivalent experience) in Computer Science, Electronics, or similar
- Advanced C/C++ embedded development experience
- Strong background in embedded systems design
- Experience working with real-time operating systems (e.g., FreeRTOS)
- Solid understanding of multithreading and concurrency
- Networking knowledge including TCP/IP, UDP and secure communications
- Experience with embedded Linux or RTOS environments
- Knowledge of electrical power systems and protection function theory
- Experience delivering commercial embedded products end-to-end
- Peripheral interfacing experience (SPI, I2C, memory interfaces)
- Debugging complex real-time or multithreaded systems
Desirable Experience
- Linux-based embedded platforms or containerised environments
- Python or scripting languages
- CI/CD pipelines and DevOps tooling
- Industrial communication protocols or automation systems
- Cybersecurity concepts within embedded environments
- Cloud or enterprise platform integration
- Wireless communications (WiFi, Bluetooth, Zigbee)
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Apply on find.jobsGood distractions
Talks and stories from around this role — technically off-topic, practically not.
Moments
Explore playlistsVideos
See allRelated articles
See all
Where to Find Entry-Level Software Engineering Jobs
Why Upskilling And Reskilling is Important For Developers
Is Software Engineering Over-Saturated?
What’s the Difference between a Junior, Mid, and Senior Developer?