Embedded Tools Engineer
Austin, TXEmbedded EngineeringOnsite
Summary
Develops and maintains CI/CD pipelines, HIL systems, and tools for embedded software on in-house hardware for autonomous vehicles and robots. Requires high proficiency in Python, GitHub Actions, Bazel/Nix, C++ debugging, and hardware protocols like CAN/UART.
About the role
What You'll Do
- Design, develop, and maintain continuous integration and continuous deployment (CI/CD) pipelines and hardware-in-the-loop (HIL) systems for embedded software on in-house electronic hardware.
- Create tools for testing, diagnostics, and management of embedded systems.
- Work with hardware and other software teams to ensure integration.
- Monitor infrastructure performance and implement improvements.
- Provide support to development teams on embedded firmware CI/CD processes, builds, and development flow.
What You'll Need
- CI/CD & Automation: Practical experience designing and maintaining workflows in GitHub Actions.
- Python (High Proficiency): Deep experience with Asyncio, hardware interaction using pyserial, python-can, and smbus2.
- Modern Build Systems: Hands-on experience with Bazel and Nix for reproducible builds and package management.
- C++ & Systems Programming: Ability to read, interpret, and debug C++ firmware code.
- Scripting: Proficiency in Bash for low-level system configuration and hardware initialization scripts.
- Technical Literacy: Ability to interpret complex technical documentation and electrical schematics.
- Interface Protocols: Deep understanding of CAN, UART, Ethernet, and I2C.
- Ownership: Highly responsible, organized, and methodical approach to problem-solving.
Nice to Have
- Experience with Unix-like environments, command-line tools, and automation.
- Knowledge of isolation and virtualization techniques, particularly Linux containers and Docker.
- Experience in building and scaling CI/CD automation and infrastructure management.
- Knowledge of Linux distribution management, particularly Ubuntu and NixOS.
- Experience with various software build systems (Bazel, CMake).
- Familiarity with DevOps practices, including CI/CD on GitHub, AWS, and Kubernetes.
- Skills with soldering equipment.
- Experience in the automotive industry (CAN, DBC, ISO TP, UDS, DoIP).
Skills
GitHub ActionsPythonAsynciopyserialpython-cansmbus2BazelNixC++BashCANUARTEthernetI2CDocker