Application Firmware Developer
Skills
About the Role
You will develop and maintain firmware that runs on Trezor devices. You will write reusable, testable, and efficient code in MicroPython, Rust and C. You will implement new features such as wallet backup solutions, chain support and Bitcoin miniscript, improve the codebase, perform code reviews, collaborate with Embedded, R&D, Design and Suite teams, and work with CI and testing tools to ensure reliable releases.
Requirements
- 5+ years of programming experience
- At least 2 years programming in Python
- Good knowledge of C
- 1+ year experience with Rust (professional or personal projects)
- Familiarity with Git
- Experience with testing and CI
- Basic principles of cryptography (appreciated)
- Experience with embedded development (advantageous)
Responsibilities
- Develop and maintain firmware for Trezor Core
- Write reusable, testable and efficient code
- Implement new features such as wallet backup solutions, chain support and Bitcoin miniscript
- Improve the codebase and perform code reviews
- Collaborate with Embedded, R&D, Design and Trezor Suite teams
- Work with CI and testing tools to ensure reliable releases
Benefits
- Option to receive part of your compensation in bitcoin
- Flexible working hours and possibility to work from home
- Budget for professional growth (training, courses, workshops)
- Renovated offices with gym, football table, billiards, PlayStation, and 3D printer
- MultiSport card, company mobile tariff, free parking
- Autonomous development and flexible priorities
- Regular company events and get-togethers
