Software Engineer III

Wabtec•West Melbourne, FL

About The Position

As a member of Wabtec’s LOCOTROL software team, the Software Engineer III designs, develops, integrates, tests, demonstrates, and maintains embedded software for freight locomotive control products, including LOCOTROL Remote Control Locomotive, Tower Control, and Distributed Power. The systems are primarily developed in C and/or C++ for a variety of embedded platforms. This role focuses primarily on integrating next-generation platforms with RCS products. The engineer works closely with product managers, systems engineers and architects, test teams, other engineering teams, business-unit partners, customers, and partners to align software with customer and product requirements. Work spans the software lifecycle from requirements analysis through production and commercial deployment, including design, implementation, testing, maintenance, documentation, and reliability improvements. The role also provides technical mentoring to more junior software engineers as needed.

Requirements

  • Bachelor’s degree in Computer Engineering, Computer Science, or a related field.
  • At least 4 years of experience developing embedded software in RTOS and bare-metal environments.
  • Experience writing multi-process or multithreaded programs using C or C++.
  • Strong understanding of software design methods and architectural approaches.
  • Knowledge of data structures, algorithms, and software engineering principles.
  • Willingness and ability to travel 10% of the time.

Nice To Haves

  • Experience with DDS, Yocto, C++23, CMake, GTest, and automated or continuous-integration environments.
  • Experience with DOORS Next, VS, Dev Containers, GitLab, or GitLab CI.
  • Experience in Agile software development environments, including Scrum and/or Kanban.
  • Experience with ColdFire, ARM, and/or PowerPC microprocessors in a C/C++ environment.
  • Experience with communication protocols such as TCP/IP, UDP, RS232/RS422, HDLC, SPI, I2C, and CAN.
  • Experience with embedded real-time operating systems, including Green Hills INTEGRITY.
  • Experience with software configuration management tools such as SVN or GIT.
  • Experience with software analysis tools such as Klocwork, Understand, or PC-Lint, and software unit-test tools such as VectorCAST.
  • Experience designing high-reliability, safety-oriented, redundant fail-safe products.
  • Experience with industry standards such as IEC 61508, DO-178B, or Cenelec-50128.

Responsibilities

  • Develop and maintain software components, systems, and their networks.
  • Design and implement embedded software from requirements analysis through production and commercial deployment.
  • Program applications, components, and interfaces in C and C++.
  • Maintain and enhance software deployed in existing embedded products and systems.
  • Work with the business unit to ensure application development meets product specification requirements.
  • Collaborate with engineering teams to ensure system functional and interface requirements are met.
  • Design, implement, and test software to meet quality specifications.
  • Participate in design and code reviews.
  • Drive performance and reliability enhancements.
  • Interact with customers and partners in technical discussions throughout development and deployment.
  • Develop software design, requirements, and architecture documentation.
  • Provide technical mentoring to more junior software engineers as needed.

Benefits

  • Health, welfare, and retirement benefits are available.
  • Annual bonus may be offered if eligible.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service