Reports to: Director of Engineering
Salary: $107,882.73 - $116,923 annually
We are hiring for an experienced Senior Firmware Engineer to join our company!
The Senior Firmware Engineer is an experienced professional with a strong background in embedded systems development. They play a crucial role in designing, implementing, and maintaining firmware solutions. Additionally, they possess the skills, knowledge, and ability to lead projects and be responsible for project performance.
This is a full-time, salaried and exempt position that will be working a hybrid schedule (if local in MN) or remotely (if non-local/outside of MN) and will be expected to be available and communicative during the company's core work hours which is between 9:00am - 3:00pm CST.
Responsibilities
- Introduce and drive advancements in modern best-practices for our clients and for DojoFive
- Develop, program, review, and test firmware, products, and electronics
- Design build systems, code repositories, and documentation policies
- Proficient with designing and implementing public-key encryption into systems
- Maintain customer communication and prioritize quick responses
- Participate in internal training programs and provide suggestions for improvement
- Demonstrate and hold others accountable to the Dojo Five Values and Dojo Five Way
- Occasionally participate in branding outreach and marketing activities.
- Able to lead projects (with some guidance), including work breakdown, architectural discussion, and guidance
- Collaborate with cross-functional teams to define requirements
- Participate in recruitment activities, including group interviews and technical review
- Participate in sales discussions representing the Dojo Five's technical capabilities
- Manage work time independently
Core Values
- Always Learning: Demonstrates balance between learning depth and breadth. Shares learnings with others.
- Humble Confidence: Demonstrates confidence without arrogance with team and clients. Focuses on facts rather than blame. Avoids unnecessary drama or panic.
- Always Deliver: Effectively communicates good and bad news with the team and client. Recognizes misaligned expectations and is able to quickly align.
- Push Boundaries: Challenges the status quo judiciously and is able to appropriately scope improvements.
- Give a Sh*t: Demonstrates a deep empathy with client and team needs
- Have Fun: Brings ideas to improve the happiness of others and helps champion their implementation.
About the Company
Dojo Five offers products and consulting services to revolutionize the embedded firmware development industry. With over 335 years of combined expertise, Dojo Five helps companies optimize their embedded software development systems by integrating tools, techniques, and culture to deliver modern firmware for embedded systems. We are on a mission to drive the firmware industry forward through “modern firmware” — the tools, techniques, culture, and technologies we believe support a joyful experience when envisioning, developing, and using embedded devices. Our vision is to modernize 10,000 embedded projects by the end of the decade!
Dojo Five provides equal employment opportunities to all employees and applicants for employment and prohibits discrimination and harassment of any type without regard to race, color, religion, age, sex, national origin, disability status, genetics, protected veteran status, sexual orientation, gender identity or expression, or any other characteristic protected by federal, state, or local laws.
Requirements
Desired Qualifications
- At least 5 years of relevant professional experience in embedded systems development
- Programming Languages
- C and C++
- Python
- Rust
- Assembly (ARM, x86, PIC)
- Operating Systems
- Bare-metal
- FreeRTOS
- Zephyr
- VxWorks
- Linux (user-space applications)
- ThreadX
- bootloaders
- Protocols/Drivers
- UART/USART
- I2C
- SPI
- CAN/CAN-FD
- BLE
- USB
- Ethernet
- WiFi
- Cellular/LTE
- protobuf
- MQTT
- Flash
- Processors
- Various ARM cores
- Single, multi-core and heterogeneous SOCs
- Development Tools
- IDEs (VSCode, Eclipse, STM32CubeIDE)
- Docker/devcontainers
- Benchtop tools (scope, logic/protocol analyzers, power supplies, multimeter)
- git
- pytest
- Unit testing infrastructures (e.g. Unity/CMock/Ceedling, Google Test, gMock)
- CI/CD pipeline configuration
- Serial consoles (e.g. minicom, screen)
- CMake
- binutils
Who Should Apply? Someone who…
- Has a passion for best practices
- Has excellent people skills
- Enjoys working in an environment where they thrive on continuously learning new skills
- Enjoys working with early stage projects that are driven by non-embedded experts and can make a client's vision into a reality
- Approaches challenges with optimism, curiosity and kindness
- Prioritizes outcome over ego
- Is a critical thinker and is able to fruitfully extract and discuss reasoning behind conclusions (their own and others')
- Is a methodical problem-solver
- Is authentic and trust-worthy
- Has experience generating buy-ins from a wide range of stakeholders
- Has experience to not only identify technical and procedural risks, but multiple potential solutions and the ability to effectively communicate the pros and cons of each option
- Enjoys leading/influencing and working with people, but is also capable of working independently
- Relies on logical persuasion and influence instead of authority in order to get things done
Benefits
- Life-Work Balance - Dojo Five understands that balancing life with work is crucial and important to feeling great about what you do
- Competitive salary
- Annual stipend provided for Learning & Development/Travel — one of our core values is “Always Learning”!
- Medical, Dental, Vision, Life - company pays about 3/4th of the cost!
- 100% employer paid short-term disability, long-term disability and life benefits
- 100% 401k match up to 4% of annual salary
- Working with a diverse group of firmware professionals
- Annual offsites and team events/activities