Jobs · Engineering · Ohio

Embedded Software Engineer

BWI GROUP · Moraine, OH · 1 mo ago
EngineeringFull-time

Position Summary

BWI Group is seeking an Embedded Software Engineer responsible for executing the full embedded software development lifecycle, from requirements and design through coding, testing, and maintenance for microcontroller and microprocessor-based systems. This role designs and implements efficient, reliable code in C/C++ (and related tools), integrates and collaborates with cross-functional teams to deliver robust embedded products on time.

Job Responsibilities

  • Design and implement software for embedded devices and systems from requirements through production and deployment.
  • Develop, code, test, and debug system software in C/C++ (and other relevant languages) for microcontrollers and microprocessors.
  • Collaborate with hardware engineers to define software requirements, interfaces, and integration strategies based on system architecture and constraints.
  • Analyze and optimize code and system resources for efficiency, stability, real-time performance, and memory/CPU usage.
  • Integrate and validate new product designs, including board bring-up, driver development, and HW/SW integration testing.
  • Develop and execute unit, integration, and system tests; use debugging tools and instrumentation to diagnose and resolve issues.
  • Review code and design for adherence to coding standards, safety/security requirements, and best practices.
  • Support software QA, including defect analysis, regression testing, and continuous improvement of code quality.
  • Provide post-production support, including troubleshooting field issues and implementing software updates and patches.
  • Prepare and maintain technical documentation such as design specifications, interface descriptions, and user or maintenance notes.
  • Stay current with embedded tools, RTOS platforms, communication protocols, and industry trends; recommend and adopt new techniques where appropriate.
  • Design AUTOSAR compliant application and basic software for automotive embedded control systems; generate software design specifications to meet customer and internal requirements.
  • Develop and verify AUTOSAR and MISRA compliant software in accordance with software design specifications.
  • Integrate and build software packages from modular code content, verify operation of integrated software to specifications, and release software packages for internal integration and validation testing.
  • Lead root cause investigation of software issues that arise from customer and internal bench and vehicle testing.
  • Adhere to corporate software process and quality standards and best practices for software development; comply with ASPICE software process and quality requirements; maintain software quality documentation as required.
  • Proactively participate as a member of project teams, supporting team members in meeting project objectives and deliverables.
  • Implement and document software in accordance with relevant safety, security, and coding standards (for example MISRA C, AUTOSAR, ISO 26262 guidelines).

Qualifications

  • Bachelor’s degree in Computer Engineering, Electrical Engineering, Computer Science, or related field.
  • Hands-on experience developing and troubleshooting software on embedded targets.
  • Strong programming skills in C and/or C++ for embedded systems.
  • Experience with embedded systems design using preemptive, multitasking real-time operating systems (RTOS).
  • Familiarity with software configuration management, version control, and defect tracking tools.
  • Knowledge of OS concepts, IP/network protocols, and common hardware interfaces (UART, SPI, I2C, CAN, etc.) as appropriate.
  • Ability to read schematics and component datasheets and to understand hardware constraints.
  • Strong analytical, debugging, and problem-solving skills and attention to detail.
  • Good communication skills and ability to work effectively within cross-functional engineering teams.

Prior to Experience

  • 2+ years of embedded software development experience (more for senior roles).
  • Experience in one or more domains: automotive ECUs, industrial controls, IoT devices, communications, or safety-critical systems.
  • Experience with unit test frameworks, CI/CD pipelines, and static/dynamic analysis tools for embedded code.
  • Knowledge of security practices for embedded systems and over-the-air (OTA) update mechanisms.
  • Familiarity with scripting languages (for example Python) for test automation and tooling.

Similar jobs

Embedded Software Engineer

Two Six TechnologiesHerndon, VA· 1 wk ago
Information Technology$106k–$159k/yrapply on app.greenhouse.io

Embedded Software Engineer

General Dynamics Mission SystemsBloomington, MN· 1 wk ago
Information Technology$100k/yrapply on gdmissionsystems.com

Embedded Software Engineer

Rockwell AutomationMequon, WI· 3 wk ago
Information Technologyapply on rockwellautomation.wd1.myworkdayjobs.com