Lead Firmware Engineer
- Competitive
- Texas, United States
- Semiconductor
- Permanent
Position Overview
We are seeking a talented Firmware Engineer to join our engineering team and lead embedded software development for a novel LLM accelerator architecture. This role focuses on low-level firmware that directly interfaces with custom hybrid optical-electronic compute hardware, ensuring reliable operation, performance, and scalability.
Key Responsibilities
-
Design and implement firmware and supporting toolchains for a custom LLM accelerator architecture
-
Develop optimization strategies that efficiently map software behavior to hardware execution
-
Build low-level firmware components for hardware control, initialization, and runtime operation
-
Optimize memory access patterns and data movement across the system
-
Interface with higher-level software stacks and ML frameworks (e.g., PyTorch, JAX, Triton)
-
Develop and maintain testing infrastructure to ensure firmware reliability and performance
Qualifications
-
Bachelor’s degree in Computer Science, Computer Engineering, Electrical Engineering, or a related field
-
10+ years of industry experience
-
5+ years of experience in firmware engineering, embedded systems, or low-level systems programming
-
Expert-level proficiency in Embedded C++ (required) and Python for tooling/automation
-
Strong experience with embedded systems programming and hardware interfaces
-
Deep understanding of computer architecture, memory hierarchies, and parallel computing
-
Experience with hardware communication protocols and register-level programming
Preferred Skills
-
Master’s degree in Computer Science, Electrical Engineering, or a related field
-
Expertise in high-performance, low-latency system design, including power and thermal optimization
-
Strong knowledge of embedded processor architectures (ARM, RISC-V) and high-speed interfaces (AXI, PCIe, AMBA)
-
Ability to read and understand RTL for hardware/software co-design
-
Experience building multi-node or multi-processor embedded systems using bare metal or RTOS (e.g., Zephyr, FreeRTOS)
-
Familiarity with large language model architectures and AI/ML accelerators (GPUs, TPUs, FPGAs)
-
Experience with virtual platforms, simulators, cross-compilation toolchains, and containerized workflows
-
Proven ability to manage OTA update systems and debug complex concurrent or asynchronous systems
Technical Skills
-
Languages: Embedded C++ (essential), Python, Assembly
-
Bus Protocols: AXI, AMBA, PCIe, DDR, high-speed serial protocols
-
Processors: ARM Cortex-M/A, RISC-V, or similar architectures
-
Embedded Platforms: Bare metal, FreeRTOS, Zephyr, or similar RTOS
-
RTL & Simulation: Verilog/SystemVerilog (reading), ModelSim, QuestaSim, or similar tools
-
Hardware Interfaces: Register-level programming, memory-mapped I/O, DMA
-
Distributed Embedded Systems: Inter-node communication, message passing, distributed state management
-
Testing & QA: Unit testing, hardware-in-the-loop, integration testing
-
CI/CD: Jenkins, GitHub Actions, GitLab CI
-
Development Tools: CMake, Git, Docker
-
Debugging Tools: GDB, JTAG, logic analyzers, oscilloscopes, protocol analyzers
-
Operating Systems: Linux (user-space tooling), embedded RTOS internals
Technical Environment
-
Languages: Embedded C++ (primary), Python for tooling, Assembly for low-level optimization
-
Hardware Tools: JTAG debuggers, logic analyzers, oscilloscopes, protocol analyzers
-
Simulation: RTL simulators for hardware/software co-verification
-
Testing: Hardware-in-the-loop systems, automated regression suites, CI pipelines
-
Focus Areas: Firmware development, hardware abstraction layers (HAL), and hardware-software co-design
