Mid-Level Software Engineer - Embedded Systems
Battelle · Columbus, OH · 1 mo ago
On-siteEngineering$86k–$159k/yrFull-time
Job Summary
We are currently seeking a Software Engineer – Embedded Systems. This position is a full-time opportunity located in Columbus, OH.
Responsibilities
- Design, develop, test, and maintain full-stack software solutions written in multiple languages for Linux-based, embedded, or mission-critical systems
- Integrate software solutions with external systems, including hardware interfaces, sensor systems, and networked environments
- Develop and document secure firmware for embedded systems in adherence to a well-defined DevSecOps software development process
- Implement user interfaces and simulation tools to support test and integration activities
- Collaborate as a member of multidisciplinary teams to develop high-quality, defect-free solutions within schedule and budget constraints
- Aid in system integration and testing of software solutions
- Apply and promote industry best practices for software lifecycle management in alignment with corporate procedures
Key Qualifications
- Bachelor's degree in Electrical and Computer Engineering, Computer Science and Engineering, or a related engineering field with a minimum of 5 years of experience; or a master's degree in a Software Engineering-related field with a minimum of 3 years of experience
- Strong programming skills in C, C++, and C# for full-stack development
- Experience with one or more secondary support languages including Golang, Python, or TypeScript
- Demonstrated network programming skills (e.g., TCP/IP, socket programming)
- Working knowledge of Linux operating systems and development tools
- Experience with low-level embedded development and debugging for devices such as the STM32 microcontroller family
- Experience developing and documenting secure firmware for embedded systems
- Strong problem-solving skills and attention to detail with the ability to clearly communicate designs and concepts verbally and in written form
- Ability to work both independently and collaboratively in a team environment
- Willingness to travel approximately 3–4 weeks per year as required by project tasks
- Must be a sole U.S. citizen with an active government TS/SCI security clearance
Preferred Qualifications
- Experience developing support applications in Rust or Go
- Experience with real-time operating systems (RTOS) or Linux kernel modules
- Exposure to signal processing or control systems software
- Experience with scripting and automation tools
- Proficiency with MATLAB for data analysis or algorithm development