Full job description We are seeking an experienced Firmware/Embedded Software Engineer to participate in the design and development of firmware used in electronic instrumentation products. The ideal candidate will have expertise in real-time systems, signal processing, and algorithm development deployed on SOC. This role requires a hands-on engineer comfortable working from schematics, using bench test equipment, and writing firmware for low power processors and SOC. Essential Functions
Design, develop, and optimize embedded firmware.
Design for non-RTOS, state machine-based system design.
Develop using Real-Time Operating systems such as FreeRTOS.
Develop with ARM processors ranging from Cortex-M0+ SOC up to Arm-A15 multicore DSP.
Implement device drivers to communicate with off chip peripherals.
Implement user interfaces.
Use secure boot loaders.
Test, debug, and optimize code using oscilloscope, JTAG and SWD debuggers.
Work closely with hardware and system engineers to achieve design goals.
Integrate USB and Wireless protocols.
Ensure operations adhere to laws, guidelines, ISO requirements.
Comply with safety policies, practices, and procedures. Report all unsafe activities to supervisor and/or Human Resources.
Required Education and Experience
Bachelor’s degree in Computer Engineering, Computer Science, or Electrical Engineering
A minimum of 7 years of experience in embedded software development
Preferred Qualifications
Proficient in C
Hands-on experience with RTOS, and bare-metal programming
Experience implementing DSP algorithms
Experience with secure bootloaders supporting OTA updates
Experience with GIT and Bitbucket
Able to read schematics and data sheets
Source code management using Git and Bitbucket
Experience with Bluetooth is a plus
Work Environment
Well-lighted, heated and/or air-conditioned indoor office/production setting with adequate ventilation and moderate noise
May work with or near moving mechanical equipment
Numbers & Facts
Location
TX
Skills
ARM (Advanced RISC Machine)unmatched
Bluetoothunmatched
Bootingunmatched
Boundary Scanunmatched
Computer Engineeringunmatched
Computer Firmwareunmatched
Computer Scienceunmatched
Datasheetsunmatched
Debugging Skillsunmatched
Debugging Toolsunmatched
Device Driversunmatched
Digital Signal Processing (DSP)unmatched
Electrical Engineeringunmatched
Embedded Softwareunmatched
Embedded Systemsunmatched
Gitunmatched
Human Resourcesunmatched
ISO (International Organization for Standardization)unmatched