Mill is all about answering a simple question: how can we prevent waste? Less waste can save time, money, energy, maybe even our planet. And there’s no better place to start than food. Food waste is one of the most solvable climate problems facing us today. Plus, our trash really stinks. It’s gross, heavy, and our least favorite chore. At Mill we are striving to build a better environment for all, as we take on climate and kitchen change.
We're seeking a Senior Firmware Engineer to design, develop, and implement low-level firmware for our next-generation connected product. You'll work closely with cloud services, mobile app, product and hardware teams to integrate Wi-Fi, Bluetooth, and other connectivity features seamlessly, while actively collaborating and contributing as a key team player.
Key Responsibilities
- Design and implement robust firmware on MCU platforms, ensuring support for wireless connectivity, OTA updates, sensor integration, and other core functionalities.
- Develop and optimize communication stacks for Wi-Fi, Bluetooth, and other wireless protocols, ensuring reliable pairing, network configuration, and data exchange.
- Write efficient low-level code that integrates with hardware peripherals (e.g., RF modules, sensors) using standard interfaces such as GPIO, I2C, SPI, and UART.
- Apply best practices for error handling and performance optimization to support robust connectivity features.
- Work closely with cross-functional teams to rigorously debug, test, and troubleshoot firmware, ensuring optimal performance, reliability, and security.
- Engage actively with multidisciplinary teams, sharing insights and aligning on system-level requirements to drive cohesive project success.
- Contribute to the deployment readiness of our systems for large-scale production.
- Evaluate code from peers to maintain best practices in style, accuracy, and efficiency.
Required Qualifications
- Bachelor’s degree in Computer Science, Electrical Engineering, or equivalent experience, with 5+ years in embedded systems development.
- Deep understanding of computer networking and firmware for data-intensive applications.
- Strong expertise in C programming for embedded systems, with a solid grasp of memory management and real-time operating system principles.
- Hands-on experience with connectivity modules (Wi-Fi, Bluetooth) and RTOS (FreeRTOS preferred).
- Proficiency in hardware-software interfacing, including protocols like GPIO, I2C, SPI, and JTAG.
- Proficiency with troubleshooting tools (debuggers, Wireshark) and measurement equipment (multimeters, oscilloscopes, logic analyzers).
- Demonstrated expertise in debugging and rigorous testing to quickly identify and resolve complex issues.
- Familiarity with version control, CI, and build systems.
Preferred Skills
- Experience with ESP32 microcontrollers.
- Working knowledge of cloud computing protocols (e.g., MQTT) and platforms like AWS (AWS CDK is a plus).
- Experience with cellular connectivity.
- Familiarity with or knowledge of mobile app development is a plus.
- Excellent communication and interpersonal skills to foster a collaborative, team-oriented environment.
The estimated base salary range for this position is $170k to $225k, which does not include the value of benefits or a potential equity grant. A wide range of factors are considered in making compensation decisions, including but not limited to skill sets, market conditions, experience and training, licensure and certifications, and business and organizational needs. At Mill, it is not typical for an individual to be hired at or near the top of the range for their role.