Junior Embedded Developer
What are we all about?
We are a team of builders and researchers on a mission to empower enterprises and developers worldwide to access and build on decentralized systems.
Our expertise covers several domains: Ethereum and Starknet protocol engineering, layer-2, AI, cryptography research, protocol research, decentralized finance (DeFi), security auditing, formal verification, real-time monitoring, smart contract development, and dapps and enterprise engineering.
Working to solve some of the most challenging problems in the blockchain space, we frequently collaborate with renowned companies, such as Ethereum Foundation, Starknet Foundation, Gnosis Chain, Flashbots, Forta Protocol, Lido, EigenLayer, Open Zeppelin, RISCZero, Aleph Zero, and many more.
Today, we are a 350+ strong team working remotely across 66+ countries.
View all our open positions here: https://www.nethermind.io/open-roles
Location: Edinburgh, United Kingdom (Onsite - 100%)
Are you the one?
As a Junior Embedded Developer, you will be responsible for developing embedded firmware for microcontroller-based systems and designing graphical user interfaces (GUIs) for embedded platforms. Your work will span from writing efficient Embedded C code to developing intuitive and responsive UIs that interact with the hardware. You will collaborate closely with hardware engineers and other developers to create complete embedded solutions for our products.
Join our innovative team as we develop next-generation biometric authentication devices. You will play a pivotal role in co-developing the embedded software that drives our cutting-edge palm vein recognition technology, from prototyping through to mass production, while ensuring it meets the highest standards of quality, security, and compliance.
Responsibilities:
-
Firmware Development for Embedded Systems:
- Write efficient Embedded C code to control microcontroller hardware, including sensors, displays, and communication interfaces (I2C, SPI, UART).
- Optimize code for performance and memory constraints typical in embedded environments.
- Debug and troubleshoot embedded systems using tools like JTAG, oscilloscopes, and serial debuggers.
-
GUI Development for Embedded Platforms:
- Design and implement real-time graphical user interfaces (GUIs) for embedded systems with displays such as LCD, OLED, or touchscreen.
- Use embedded GUI frameworks like LVGL, TouchGFX, or emWin to create visually appealing, responsive interfaces optimized for resource-constrained devices.
- Ensure that GUIs are intuitive, performant, and power-efficient.
-
System Integration:
- Collaborate with hardware engineers to define and implement hardware communication protocols (e.g., SPI, I2C) between embedded systems and external devices.
- Integrate embedded systems with cloud services or remote devices, if applicable (e.g., via MQTT, HTTP).
-
Testing and Debugging:
- Write and execute unit and integration tests to ensure firmware and UI functionality.
- Troubleshoot hardware/software issues using debugging tools (e.g., logic analyzers, oscilloscopes).
- Profile embedded systems to optimize performance, memory usage, and power consumption.
-
Documentation and Collaboration:
- Document design, code, and testing processes to ensure clear communication within the team.
- Participate in code reviews and contribute to best practices for embedded development.
- Work closely with cross-functional teams to meet project goals and timelines.
-
Technical Skills:
- Strong proficiency in Embedded C programming for microcontroller platforms (e.g., ARM Cortex-M, STM32, ESP32).
- Experience with embedded GUI frameworks such as LVGL, TouchGFX, or emWin.
- Familiarity with communication protocols like I2C, SPI, UART, and CAN.
- Experience with real-time operating systems (RTOS) or bare-metal embedded development.
- Proficient with debugging tools like JTAG, logic analyzers, and oscilloscopes.
-
Nice to Have:
- Experience with ARM-based microcontrollers and development tools (e.g., STM32Cube, Keil, IAR).
- Familiarity with cloud integration or IoT platforms.
- Knowledge of power optimization techniques for embedded systems.
-
Soft Skills:
- Strong problem-solving skills and ability to troubleshoot complex systems.
- Excellent communication and collaboration skills, with the ability to work in a team-oriented environment.
- Attention to detail and a focus on producing high-quality, maintainable code.
- Working in a fast-paced startup environment.
Your consent to share personal information is entirely voluntary, and you may withdraw your consent at any time. Should you have any questions about this process, or wish to withdraw your consent please contact: legalnotices@nethermind.io
Keep up to date on what we are working on by following us on our social channels
Apply for this job
*
indicates a required field