Firmware and Motor Control
The Bot Company
We're building a helpful robot for every home.
We're a small team of engineers, designers, and operators based in San Francisco. Our team comes from Tesla, Cruise, OpenAI, Google, Pixar, and many other great companies. In the past we've shipped to hundreds of millions of users and know what it takes to build amazing products and experiences.
Our team is deliberately lean to promote rapid decision making and do away with bureaucracy and hierarchy. Everyone is an IC and is empowered with massive scope, radical ownership, and direct responsibility. We work across the stack with a culture built for rapid iteration and fast execution.
What we look for in all candidates
All roles at The Bot Company demand extreme sharpness and the ability to move fast in high-intensity environments. Throughout the process, we expect candidates to demonstrate:
Exceptional mental acuity: you think quickly, learn instantly, and reason across unfamiliar domains.
Engineering curiosity: you naturally dig into how systems work, even outside your specialty.
High performance mindset: you move fast, handle ambiguity, and excel when the environment is demanding.
Firmware and Motor Control Engineer
You’ll build the low-level firmware and control systems that drive the actuators and mechanisms inside our robots. This role is for someone who can write high-performance embedded software, implement advanced motor-control algorithms, and work seamlessly across hardware and software boundaries to achieve precise, reliable motion.
Requirements
Strong proficiency in embedded C, C++, or Rust with a deep understanding of real-time constraints, microcontrollers, and low-level peripherals (timers, ADCs, PWMs, DMA, SPI/I2C/CAN), including experience implementing and optimizing high-rate motor-control loops on embedded hardware.
Deep knowledge of motor‑control theory (field oriented control, dq transforms) and hands‑on experience architecting and implementing FOC from the ground up, including PWM/ADC synchronization, Clarke/Park transforms, current regulators, modulation, and control-loop timing/optimization.
Proven experience bringing motors from initial bring-up through stable closed-loop operation, including motor/sensor characterization, current-loop bandwidth measurement and tuning, and tuning cascaded current, velocity, and position controllers under different mechanical loads.
Proven track record of working closely with electrical engineers and ML engineers to integrate firmware with custom motor-control hardware and enable force‑sensitive control behaviors.
Experience with encoders, Hall/resolver and current sensors, including calibration, filtering and synchronization for reliable control feedback.
Comfortable bringing up new boards and debugging motor instability and hardware/firmware interaction issues, including overcurrent events, oscillations, noisy current or encoder feedback, SPI communication errors, and signal-integrity problems.
Familiarity with RTOS or bare-metal systems, and understanding of scheduling, interrupt handling, and real-time guarantees.
Knowledge of safety mechanisms (overcurrent, overtemp, watchdogs, brownout protection) and how to implement them robustly in firmware.
Experience developing automated and hardware-in-the-loop (HIL) tests to validate motor-control behavior, fault handling, communications, and system stability across real-world operating conditions.
What You’ll Do
Own motor-control firmware end-to-end, from first motor spin and hardware bring-up through production-ready implementation.
Work closely with machine‑learning engineers to enable force‑sensitive, compliant control under dynamic loads.
Design and implement firmware for motor-control subsystems powering robot motion; implementing, profiling, and tuning FOC and related control loops, including PWM/ADC timing and high-rate current control.
Build robust sensing and calibration pipelines for encoders, Hall sensors, and current/voltage measurements; develop automated test routines and use the resulting data for motor characterization, current-loop bandwidth measurement, system identification, loop tuning, and performance validation.
Bring up and debug custom hardware and sensors; collaborate with hardware engineers on board bring‑up and integrate sensors into the control stack.
Tune cascaded current, velocity, and position controllers across different loads and operating conditions, and diagnose instability, overcurrent, sensing, timing, and communication issues that limit actuator performance.Implement observers, estimators and fault‑handling state machines; integrate high‑speed telemetry and data‑logging for control verification and diagnostics, and develop HIL/regression tests for control and hardware stability.
Why Join
You’ll work with a small, elite team on challenges that require speed, intelligence, and deep engineering instinct. If you enjoy understanding systems at all levels, move fast, and think even faster, you’ll thrive here.