Principal Firmware Engineer
Survival Systems Staffing - San Jose, CA
Apply NowJob Description
Embedded Firmware Engineer - C2000 DSPLow-Level Device Drivers and Real-Time DSP DevelopmentPosition OverviewWe are seeking an experienced Embedded Firmware Engineer to develop and maintain low-level firmware for TI C2000 Digital Signal Processors (DSP). This role involves designing real-time control algorithms, developing device drivers, and optimizing firmware performance for power electronics applications. The ideal candidate will have deep expertise in embedded C development, DSP architecture, and low-level hardware abstraction.Primary Responsibilities• Develop and maintain firmware for TI C2000 DSP family (F28xxx series) using C and assembly language• Design and implement low-level device drivers for peripherals including PWM, ADC, SPI, I2C, CAN, and UART interfaces• Develop hardware abstraction layers (HAL) to simplify application-level software development• Implement and optimize real-time control algorithms for digital power conversion and motor control applications• Write efficient DSP math library functions leveraging C2000 CPU and floating-point capabilities• Optimize firmware for performance, memory footprint, and power consumption• Debug firmware using CCS (Code Composer Studio) and in-circuit debugging tools• Conduct unit testing, integration testing, and field validation of firmware implementations• Maintain comprehensive firmware documentation, including design specifications and API documentation• Collaborate with hardware engineers and systems architects on embedded system designRequired Qualifications• Bachelor's degree in Electrical Engineering, Computer Science, Computer Engineering, or related field• 5+ years of professional experience developing embedded firmware in C• Hands-on experience with Texas Instruments C2000 DSP processors (F28xxx family)• Strong proficiency with embedded development tools including Code Composer Studio (CCS)• Experience developing device drivers for peripherals (ADC, PWM, SPI, I2C, CAN, UART)• Knowledge of DSP architecture, real-time processing concepts, and interrupt handling• Proficiency with version control systems (Git, SVN, or equivalent)• Experience with debugging techniques and in-circuit emulation/JTAG debugging• Ability to write clean, maintainable code with strong software engineering practices• Strong problem-solving skills and ability to work both independently and collaborativelyPreferred Qualifications• Experience with grid-connected power electronics and utility-scale inverter systems• Knowledge of renewable energy systems (solar, wind) or energy storage applications• Experience with real-time control systems and control theory implementation• Familiarity with analog-to-digital conversion, signal conditioning, and measurement techniques• Experience with RTOS (Real-Time Operating Systems) or baremetal firmware development• Knowledge of C++ or other systems programming languages• Familiarity with hardware design and ability to read schematics• Background in power electronics, motor control, or power conversion systemsTechnical Skills• Languages: C, assembly language, basic Python scripting• Microcontrollers/DSPs: TI C2000 series, microcontroller fundamentals• Development Tools: Code Composer Studio, JTAG debuggers, oscilloscopes, logic analyzers• Peripheral Interfaces: ADC, PWM, SPI, I2C, CAN, UART, GPIO• Development Methodology: Version control, code documentation, unit testing, debugging practicesKey Competencies• Technical Expertise: Deep knowledge of embedded systems, DSP architecture, and firmware development• Problem-Solving: Systematic debugging approach and ability to solve complex firmware issues• Code Quality: Commitment to writing clean, efficient, and maintainable firmware code• Performance Optimization: Experience optimizing code for speed and memory efficiency• Communication: Ability to document code, design, and share knowledge with team members• Adaptability: Quick learner who can master new tools, platforms, and application domains
Created: 2026-05-09