Skip to main content

Senior Firmware Engineer

Posted yesterday

cricutSouth Jordan (UT)

SENIORITY

Lead

Apply (opens in a new tab)

About the role

Overview: In this role you will develop and debug embedded firmware for diverse hardware platforms, collaborating closely with product and hardware teams to meet technical requirements. You’ll bring up new boards, analyze design issues with data-driven methods, and improve control systems and sensor processing. The position combines hands-on hardware work with software development to support end-to-end product life cycles. You’ll work in a fast-paced, cross-functional environment to enable reliable, scalable firmware for Cricut’s consumer electronics. Compensation / Benefits Medical, Dental, and Vision coverage 401(k) match generous PTO tuition reimbursement lifestyle stipend employee discounts
Responsibilities: Develop and debug embedded firmware for bare-metal microcontrollers, RTOS, SoC, and SBC systems Translate product requirements into technical specs with project/product management Collaborate with hardware engineers to bring up new boards and systems Apply data-driven analysis to diagnose and resolve design issues Write control code for actuators, including PID tuning and dynamic control Integrate and analyze sensor data (optical, thermal, reflective) focusing on signal processing and noise reduction Troubleshoot low-level interfaces (USB, UART, SPI, I2C, PWM, GPIO) Develop internal C/C++ tools to aid testing, automation, and manufacturing Participate in code reviews, documentation, and revision control to ensure firmware quality and scalability Collaborate across engineering teams to support full product lifecycle
Key requirements: Bachelor’s or Master’s degree in Electrical, Mechanical, Computer Engineering, or Computer Science (robotics/control emphasis preferred) 5+ 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, FPGA, and RTOS development Experience with embedded solutions for electromechanical commercial electronics (e.g., die cutters, plotters, printers) 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 excellent communication teamwork problem-solving C programming C++ and Assembly (plus) bare-metal microcontroller

Before you apply

Applying takes about a minute. These four things decide how fast it moves after that.

Your profile is current

It's what we read first. Occupations, seniority and locations matter more than a long history.

Two examples you can talk through

Not a portfolio — just two pieces of work where you can explain the decisions and what you'd change.

A number in mind

What you're on now and what would make you move. We negotiate better when we know both.

Your notice period

Employers plan around it, and it's the question that stalls offers most often.

Once you apply, someone reads it and calls you before anything reaches the employer — usually within two working days.

More like this