Firmware Engineer
Company | Cricut |
---|---|
Location | South Jordan, UT, USA |
Salary | $Not Provided – $Not Provided |
Type | Full-Time |
Degrees | Bachelor’s, Master’s |
Experience Level | Junior, Mid Level |
Requirements
- Bachelor’s or Master’s degree in Electrical, Mechanical, Computer Engineering, or Computer Science (robotics/control emphasis preferred)
- 1–3 years of embedded firmware experience OR strong project/internship experience for new grads
- Strong C programming skills; C++ and/or Assembly exposure a plus
- Experience with bare-metal microcontroller development
- Familiarity with electromechanical systems including actuators and precision control
- Strong troubleshooting and debugging skills for low-level embedded systems
- Excellent communication, documentation, and teamwork skills
- Comfortable working both independently and in a collaborative, hands-on environment
Responsibilities
- Develop and debug embedded firmware for bare-metal microcontroller systems
- Work closely with hardware engineers to bring up new boards and support new product development
- Write control system code for actuators (motors, solenoids), including PID tuning and dynamic control
- Integrate and analyze sensor data (optical, thermal, reflective, etc.), focusing on signal processing and noise reduction
- Troubleshoot and debug low-level hardware interfaces such as USB, UART, SPI, I2C, PWM, and GPIO
- Develop internal tools (in C or C++) to aid testing, automation, and manufacturing processes
- Participate in code reviews, documentation, and revision control to ensure high firmware quality
- Collaborate across engineering teams to support full product lifecycle and contribute to design reviews
Preferred Qualifications
- Candidates with backgrounds in mechatronics, robotics, or embedded systems are strongly encouraged to apply
- Some limited international travel (1–2 times/year) may be required to support manufacturing efforts abroad