Firmware Engineer
Role details
Job location
Tech stack
Job description
This role focuses on designing, implementing, and validating advanced FPGA-based firmware for cutting-edge electro-optical and infrared systems used in space domain awareness and intelligence, surveillance, and reconnaissance applications. You will collaborate closely with hardware and software teams to define requirements, architect FPGA solutions, and bring complex systems from concept through lab debug and verification. The work directly supports space-based payloads and on-board image processing, enabling high-performance sensing and data processing in challenging space environments., * Collaborate with the hardware design team to define and refine FPGA and firmware requirements.
- Complete FPGA logic design, including architecture definition, coding in VHDL, simulation, and functional verification.
- Perform synthesis, implementation, and timing analysis to ensure robust, high-performance FPGA designs.
- Support hardware and software development teams during system bring-up, integration, and testing of new products.
- Execute detailed debugging of FPGA designs in the lab, identifying and resolving functional, timing, and interface issues.
- Provide subject-matter expertise on FPGA design practices and automated test development procedures to internal teams and customers.
- Research and analyze customer specifications, datasheets, and technical manuals to determine design approaches and assess feasibility.
- Develop and refine FPGA-based implementations using both hand-coded and AI-assisted techniques in VHDL.
- Implement and verify high-speed interfaces such as DDR4, Aurora, AXI Stream, and AXI Memory Mapped interfaces as needed.
- Contribute to the design and verification of FPGA-based image processing algorithms and embedded systems for space and radiation environments.
- Collaborate with teams working on PCB design, schematic capture, and layout to ensure seamless integration of FPGA solutions.
- Support the development and verification of software interfaces to the FPGA, including interrupts, DMA, and communication protocols.
- Document design decisions, test results, and implementation details to support production, maintenance, and future enhancements.
- Participate in cross-functional collaboration to continuously improve design methodologies, tools, and workflows., This is a fully remote position, offering flexibility to work from your preferred location while collaborating closely with a distributed team of experts in firmware, hardware, and software. You will work with modern FPGA technologies, including platforms such as Xilinx/AMD Versal, and interact with Linux-based and Yocto environments as part of the development and integration process. The team culture emphasizes learning from one another, sharing expertise, and working together to achieve ambitious missions, including systems that ultimately launch into space. Occasional travel of up to approximately two weeks per quarter may be required for on-site integration, testing, or team collaboration activities.
Requirements
Firmware Debugging Visionary DDR SDRAM Leadership Innovation Algorithms Simulations Communication Virtual Teams Electro-Optics Detail Oriented Test Automation Problem Solving Hardware Design Data Processing Logic Synthesis Embedded Systems Schematic Capture Integration Testing Software Interfaces Software Development Computer Engineering Electrical Engineering Static Timing Analysis Artificial Intelligence Technical Communication C (Programming Language) Linux On Embedded Systems Engineering Design Process C++ (Programming Language) Serial Peripheral Interface Dynamic Mechanical Analysis Printed Circuit Board Design Python (Programming Language), * At least 8 years of professional, full-time firmware engineering experience.
- At least 8 years of experience in FPGA firmware design using VHDL.
- Bachelor's degree in computer engineering, electrical engineering, or an equivalent technical discipline.
- At least 3 years of professional experience in hand-coded FPGA implementation.
- Experience with AI-assisted FPGA implementation in VHDL.
- Strong proficiency in FPGA design flows, including coding, simulation, synthesis, implementation, and timing analysis.
- Ability to debug complex FPGA designs in a lab environment, including hardware bring-up and system-level testing.
- Experience collaborating with hardware and software teams on requirements definition and system integration.
- Ability to interpret and analyze technical specifications, datasheets, and manuals to guide design decisions.
Additional Skills & Qualifications
- Experience with Linux development or strong familiarity with Linux-based environments.
- Experience with Yocto environments and embedded Linux build systems.
- Knowledge of common communication interfaces such as RS-422/RS-485, I²C, SPI, Ethernet/GigE, TCP/IP, UDP, and CAN.
- Experience with high-speed interfaces, including DDR memory and multi-gigabit transceivers.
- Experience with Xilinx/AMD Versal or similar advanced FPGA architectures.
- Experience working with FPGAs and embedded systems in radiation environments, including understanding SEU/SEL impact and mitigation techniques.
- Experience implementing FPGA-based image processing algorithms.
- Experience creating custom IP cores from scratch for FPGA designs.
- Familiarity with C, C++, Python, or MATLAB, and experience translating algorithms from scripted languages into HDL implementations.
- Experience developing and supporting software interfaces to FPGA logic, including interrupts and DMA.
- Experience with DDR4, Aurora, and high-speed transceiver design and verification.
- Familiarity with AXI Stream and AXI Memory Mapped interfaces.
- Experience with PCB design, schematic capture, and layout using tools such as Altium Designer.
- Strong problem-solving skills, attention to detail, and ability to work effectively in a collaborative, technical team environment.
- Interest in space systems, electro-optical payloads, and on-board data processing., Linux TCP/IP Research Firmware Debugging Visionary Innovation Algorithms Reliability Simulations Communication Virtual Teams Electro-Optics Test Automation Hardware Design Logic Synthesis Embedded Systems Laboratory Testing Root Cause Analysis Software Development Computer Engineering Electrical Engineering Static Timing Analysis Artificial Intelligence Technical Communication Electro-Optical Systems Critical Illness Insurance Serial Peripheral Interface Field-Programmable Gate Array (FPGA), Tucson, AZ, *Remote Linux MATLAB TCP/IP Firmware Debugging Visionary DDR SDRAM Leadership Innovation Algorithms Simulations Communication Virtual Teams Electro-Optics Detail Oriented Test Automation Problem Solving Hardware Design Data Processing Logic Synthesis Embedded Systems Schematic Capture Integration Testing Software Interfaces Software Development Computer Engineering Electrical Engineering Static Timing Analysis Artificial Intelligence Technical Communication C (Programming Language) Linux On Embedded Systems Engineering Design Process C++ (Programming Language) Serial Peripheral Interface Dynamic Mechanical Analysis Printed Circuit Board Design Python (Programming Language)
Benefits & conditions
This is a Contract position based out of Tucson, AZ. Pay and Benefits
The pay range for this position is $73.00 - $97.00/hr.
Eligibility requirements apply to some benefits and may depend on your job classification and length of employment. Benefits are subject to change and may be subject to specific elections, plan, or program terms. If eligible, the benefits available for this temporary role may include the following:
- Medical, dental & vision
- Critical Illness, Accident, and Hospital
- 401(k) Retirement Plan - Pre-tax and Roth post-tax contributions available
- Life Insurance (Voluntary Life & AD&D for the employee and dependents)
- Short and long-term disability
- Health Spending Account (HSA)
- Transportation benefits
- Employee Assistance Program
- Time Off/Leave (PTO, Vacation or Sick Leave) Workplace Type