Embedded Software Engineer

WabtecSalem, VA
$91,000 - $129,800Onsite

About The Position

As an Embedded Software Engineer, you will define and develop embedded software in accordance with software design and test requirement specifications and conduct verification testing during development. You will play a key role in developing innovative, market-leading electro-mechanical products as part of a cross-functional project team. You will optimize firmware performance, memory utilization, and computational efficiency within resource-constrained embedded systems. You will perform code development for configuring/interfacing with real time clocks, Ethernet PHY chips, external memory, and specialty sensors. You will implement security and password access routines and Ethernet communication protocols. You will leverage AI-enabled engineering tools and technologies to enhance hardware design, firmware development, testing, troubleshooting, documentation, and data analysis activities; evaluate emerging AI capabilities and implement best practices to improve engineering efficiency, product quality, and innovation while ensuring compliance with cybersecurity, safety, and regulatory requirements. You will manage equipment and capital projects within budget and timelines, collaborate with teams to resolve issues and enhance manufacturing performance, and apply Lean principles and drive continuous improvement initiatives. You will ensure safety, quality, and compliance in all processes. You may also be asked to perform other duties outside of your function or trade, for which adequate training will be provided if necessary.

Requirements

  • BS in Electrical Engineering or BS in Software Engineering
  • 5+ years of experience designing/developing embedded software systems
  • Experience developing embedded software using C/C++ for microcontrollers such as Microchip PIC, STM32, NXP, Renesas, TI, or similar platforms
  • Experience developing bare-metal firmware for time critical processing systems such as A/D sampling, motor control and communications
  • Familiarity with state machine architectures, interrupt service routines, and Microchip Ethernet stack
  • Familiarity with industrial and embedded communication protocols including CAN, CAN-FD, Modbus, RS-485, USB, Ethernet, MQTT, BLE, and Wi-Fi
  • Experience with microcontroller digital/analog peripheral hardware interface (SPI, I2C, UART, Digital I/O, PWM, timers)
  • Experience with automated builds, unit testing, continuous integration, and software release management
  • Experience using a source control system, code reviews, branching strategies, and collaborative software development workflows
  • Experience developing automated test and validation tools using LabVIEW, Python, or equivalent environments
  • Experience with PC-based engineering tools and scripting environments such as Matlab, Python, C#, .NET, or equivalent
  • Proficient with schematic capture, component footprint modeling and PCB design tools
  • Ability to effectively communicate highly technical concepts to a non-technical audience
  • Strong problem solver who can communicate technical concepts clearly
  • Ability to manage multiple priorities and adapt to changing deadlines
  • Highly organized, detail-oriented, and able to work independently
  • Comfortable working in environments with ambiguity and complexity
  • Able to travel as needed for the role

Nice To Haves

  • MS preferred
  • Experience using GIT is desirable
  • Experience with Altium Designer is very desirable
  • Experience building desktop applications (Windows, Linux, etc…)
  • Understanding of secure bootloaders and over-the-air (OTA) firmware update mechanisms is desirable
  • Knowledge implementing secure boot, secure firmware updates, authentication, encryption, secure key storage, and cybersecurity best practices for connected embedded devices is desirable
  • Familiarity with IEC 62443, NIST Cybersecurity Framework, or similar cybersecurity standards is desirable
  • Familiarity with Locomotive electrical systems is desirable

Responsibilities

  • Define and develop embedded software in accordance with software design and test requirement specifications
  • Conduct verification testing during development
  • Play a key role in developing innovative, market-leading electro-mechanical products as part of a cross-functional project team
  • Optimize firmware performance, memory utilization, and computational efficiency within resource-constrained embedded systems
  • Code development for configuring/interfacing with real time clocks, Ethernet PHY chips, external memory, and specialty sensors
  • Implement security and password access routines and Ethernet communication protocols
  • Leverage AI-enabled engineering tools and technologies to enhance hardware design, firmware development, testing, troubleshooting, documentation, and data analysis activities
  • Evaluate emerging AI capabilities and implement best practices to improve engineering efficiency, product quality, and innovation while ensuring compliance with cybersecurity, safety, and regulatory requirements
  • Manage equipment and capital projects within budget and timelines
  • Collaborate with teams to resolve issues and enhance manufacturing performance
  • Apply Lean principles and drive continuous improvement initiatives
  • Ensure safety, quality, and compliance in all processes

Benefits

  • health
  • welfare
  • retirement
  • annual bonus
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service