Embedded Software Engineer (C++ / Linux / BSP)
LTD Global
Fargo, United States of America
2 days ago
Role details
Contract type
Permanent contract Employment type
Full-time (> 32 hours) Working hours
Regular working hours Languages
English Experience level
SeniorJob location
Fargo, United States of America
Tech stack
Board Bringup
Systems Engineering
Automation of Tests
Booting (BIOS)
UClibc (C Standard Library)
C++
Communications Protocols
Computer Programming
Computer Engineering
Software Debugging
Linux
Device Drivers
Linux on Embedded Systems
Embedded Software
Ethernet
Firmware
GNU Debuggers
Hardware Interface Design
Joint Test Action (IEEE Standards)
Kernel Debuggers
Real-Time Operating Systems
System Testing
Systems Integration
Universal Asynchronous Receiver/Transmitter
Serial Peripheral Interface
GIT
Yocto
Information Technology
Build Tools
U-Boot
Software Version Control
Job description
We are seeking an Embedded Software Engineer with strong experience in C++, Linux, and Board Support Package (BSP) development. The ideal candidate will be responsible for developing, integrating, and validating embedded software on target hardware platforms. This role requires hands-on experience bringing up hardware, debugging low-level software, and validating system functionality in a lab environment., * Design, develop, and maintain embedded software using C++.
- Develop, customize, and support Linux BSPs for embedded platforms.
- Perform board bring-up, hardware/software integration, and platform validation.
- Test and validate software functionality directly on target hardware.
- Debug system-level issues involving software, drivers, kernel components, and hardware interfaces.
- Develop automated and manual test procedures for embedded systems.
- Work closely with hardware, firmware, and systems engineering teams.
- Analyze system logs, traces, and performance metrics to identify and resolve issues.
- Support product releases and ongoing maintenance activities.
Requirements
- Bachelor's degree in Computer Engineering, Electrical Engineering, Computer Science, or related field.
- 5+ years of experience in embedded software development.
- Strong programming skills in C++.
- Experience with Linux-based embedded systems.
- Hands-on BSP development and customization experience.
- Experience testing and validating software on physical hardware platforms.
- Knowledge of device drivers, kernel debugging, and system integration.
- Familiarity with debugging tools such as GDB, JTAG, logic analyzers, or oscilloscopes.
- Experience with version control systems such as Git.
- Strong problem-solving and troubleshooting skills.
Preferred Qualifications
- Experience with Yocto, Buildroot, or similar embedded Linux build systems.
- Knowledge of ARM-based processors and SoC architectures.
- Experience with bootloaders such as U-Boot.
- Familiarity with CI/CD pipelines and automated testing frameworks.
- Experience with communication protocols such as SPI, I2C, UART, CAN, Ethernet, or USB.
- Exposure to RTOS environments is a plus.
Desired Skills
- Embedded Linux
- C++
- BSP Development
- Hardware/Software Integration
- Device Driver Development
- Board Bring-Up
- Debugging & Troubleshooting
- Git
- Automated Testing
- System Validation