Mô tả công việc
Your Impact
As a Firmware Engineer I on the Platform Firmware team, you will join our Board Support Package (BSP) development efforts for current and next‑generation Axon devices. You will work close to the hardware, developing and integrating the low‑level software that enables new platforms and peripherals — from board bring‑up and device drivers to system services, hardware interfaces, and platform validation. You will work with Firmware, Electrical Engineering, Product, Software, Manufacturing, and other embedded teams to deliver reliable device software.
Our firmware environments primarily use Embedded Linux on SoCs/SoMs, with Embedded Android and RTOS‑based microcontrollers used across some product lines. Depending on the program, you may work with C, C++, Rust, Golang, or Python.
As a Firmware Engineer I, you are a focused problem solver. You break down and solve tasks end‑to‑end within a feature, build familiarity with the technology stack and foundational domain knowledge, and operate with regular oversight and guidance from the tech lead and more senior engineers on the team. Over time you begin to understand how your work connects to product and customer outcomes.
What You’ll Do
- Design, develop, test, and maintain firmware for current and next‑generation Axon devices.
- Develop firmware for Embedded Linux or Embedded Android on SoCs and SoMs.
- Develop software for microcontrollers and RTOS‑based systems where required.
- Work with device peripherals and connectivity technologies such as Wi‑Fi, Bluetooth/BLE, Sub‑GHz, and cellular.
- Develop firmware for battery, power, and thermal‑management subsystems with a strong focus on reliability and safety.
- Support board bring‑up, hardware integration, and debugging in partnership with Electrical Engineering.
- Develop unit, integration, and automated tests and contribute to test infrastructure and engineering excellence.
- Develop manufacturing, provisioning, calibration, or device‑support tooling where needed.
- Write and review design documents, pull requests, test plans, and technical documentation.
- Collaborate with Firmware, Embedded Product, Electrical Engineering, Manufacturing, Compliance, and external technology vendors.
- Diagnose complex firmware and hardware issues using logs, debugging tools, measurements, and systematic root‑cause analysis.
- Take ownership of assigned technical areas from design through implementation, validation, and production support.
- Contribute to a culture of high‑quality engineering, testing, metrics, candor, and continuous improvement.
- Share knowledge with teammates and support the team through effective communication and technical collaboration.
What You Bring
- B.S. in Computer Engineering, Computer Science, Electrical Engineering, or equivalent practical experience.
- 0–2 years of relevant industry experience developing firmware or embedded software, or equivalent demonstrated capability.
- Experience programming in one or more of C, C++, Rust, Golang, or Python.
- Hands‑on experience developing firmware or embedded software for IoT, consumer electronics, robotics, automotive, networking, or similar products.
- Having knowledge of Embedded Linux, including kernel and user‑space concepts; experience with Yocto, Buildroot, OpenWRT, or similar environments is a plus.
- Familiarity with embedded operating systems, concurrency, IPC, networking, and computer architecture.
- Ability to read and reason about datasheets, schematics, registers, and hardware interfaces.
- Understanding of common embedded peripherals and interfaces such as I2C, SPI, UART, GPIO, USB, and Ethernet.
- Having foundation in data structures, algorithms, and software design.
- Demonstrated ability to independently investigate problems, identify root causes, and deliver practical solutions.
- Demonstrated collaboration skills and willingness to work closely with engineers across disciplines.
- Working experience with AI coding assistants or agentic tools, or the ability to pick them up quickly.
- Ability to write a spec with acceptance and test criteria and judge AI output against it, including catching plausible‑but‑wrong results.
- Willingness to treat AI output as a draft needing verification, especially for register, timing, memory, and safety‑relevant code.
Nice to Have
- Experience with Embedded Android/AOSP.
- Experience with RTOS and microcontroller firmware.
- Experience with cellular LTE/5G modems.
- Experience with battery, charging, power‑management, safety, or thermal systems.
- Experience with robotics, sensors, motion, or 9‑axis orientation systems.
- Experience developing manufacturing or provisioning software.
- Experience building or extending automated hardware/firmware test systems.
Benefits that Benefit You
- Medical and Dental Insurance
- Vision Insurance
- Robust Paid Time Off policy
- Bonuses
- Lunch allowance
- Cell phone stipend
- Free LinkedIn Learning and Udemy account
- Access to 24/7 online emotional and mental support
- Gym membership
- Free parking
- Stocked fridges and pantries – free coffee, cold beverages, snacks
- Annual Company Outing Trip
- Monthly team social activities