Locations: Oslo, Remote, Europe
Position: Embedded Software Engineer
The project:
Join a mission to "Secure the World's Connected Devices." with a world-leading IoT security firm.
As part of building our team, we are looking for an Embedded Software Engineer. The product, based on open source, has quickly become a standard for over-the-air updates of IoT and connected devices.
We believe in a strong company culture where every day at work should be enjoyable and meaningful. We value team players, learners, optimists, and those who help others succeed.
In this position, you will:
* Make it easier to support new Linux-based OSes and boards for Mender.
* Enable support for running Mender on new platforms, including RTOSes.
* Design, build, and manage new and existing Mender code, which includes:
1 Research development tasks from low- to high-level.
2 Estimating resources and time needed to finish tasks.
3 Developing tasks as defined during planning meetings.
4 Presenting deliverables to the team bi-weekly.
5 Documenting new code and ensuring documentation is published on time.
6 Writing tests for all new code.
7 Debugging and fixing issues related to your code.
8 Providing technical expertise for planning new features and improvements.
About you:
* You are excited about our mission and believe you will thrive in the Northern.tech culture. Working in a company that seeks to secure the world's connected devices motivates you.
* You have good interpersonal skills and are a team player. You find great pleasure in seeing others succeed with your help and assistance.
* You are autonomous, embrace accountability, and like to take initiative and decision.
Required skills and experience:
* Minimum of 5 years of embedded Linux programming experience
* Excellent knowledge of С++ language and experience in development for embedded
* Excellent knowledge of at least a few of the following:
* RTOSes (e.g., Zephyr, QNX, Integrity, FreeRTOS)
* Understanding of bootloader (especially U-Boot, Grub) functionality (including boot scripts, configurations, boot environments, and installation).
* Yocto
* Embedded memory storage (eMMC, SD, Raw NAND, NOR) and understanding of partition layout, file systems, and software requirements for reliable implementation (e.g., wear leveling, UBI).
* Designing of Embedded Linux platforms, writing Board Support Packages, system integration, and Embedded Linux system programming.
* Upper Intermediate/Advanced English communication skills.
Desired skills and experience:
* QEMU
* Golang
* Python
* Backend web programming at scale ( RESTful APIs, HTTP, microservices).
Put your CV in here or get in touch with Dylan Johnston to discuss the details!
LinkedIn: https://www.linkedin.com/in/dylan-johnston-666707130/
Email: d.johnston1@jeffersonfrank.com