This position will be responsible for all parts of FPGA programming within complex systems of multiple electronic components. The ideal candidate must be well-versed in FPGAs and microprocessors that are integrated into modern FPGA assets and must excel at understanding how the FPGA functions with a comprehensive board level design. The FPGA Design Engineer will assist in the development of cutting-edge technology and in implementing advanced technical solutions within an interdisciplinary team.
The applicant must be comfortable handling multiple projects and must possess expert-level troubleshooting skills. PRIMARY DUTIES โข Develop, simulate, and implement FPGA components โข Devise and implement custom algorithms into FPGAs โข Create DSP applications to include FFTs, signal conditioning, and filtering โข Verify and validate all components prior to and upon installation โข Troubleshoot technical issues related to circuits and systems โข Plan and create integrated electronic circuits โข Collaborate with R&D team to evolve technical solutions โข Contribute to project planning and execute on project tasks SKILLS AND QUALIFICATIONS โข Must be a current US citizen and able to pass a background screening โข 7+ years of experience with FPGA devices and board-level design โข Proven ability to program in VHDL and Verilog โข Experience with DSP, circuit design, and algorithm design โข Proficiency with digital and analog circuits, parts, and components โข Advanced skills in embedded Linux operating systems โข Knowledge of networking technologies (TCP/IP, ethernet, network stacks) โข Understanding of interconnection technologies (USB, i2c, SPI) โข Proficiency with test equipment (oscilloscopes, spectrum/logic analyzers) โข Proficient lab skills (soldering, rework, building jigs/adapters) โข Familiarity with radio frequency technology is preferred โข Sufficient programming skills in C/C++, MATLAB, and Python is a plus โข Experience with signal processing and transformations is desirable โข Capacity to balance and prioritize multiple tasks