Embedded Software Engineer
Core
Design, develop, integrate, test, and maintain embedded software applications for Freight Locomotive control systems, including Remote Control Locomotives, Tower Control, and Distributed Power.
Role type
Senior Embedded Software Engineer (Safety-Critical Systems)
Builds
High reliability, safety, redundant fail-safe embedded software for rail freight control systems
Domain
Rail transportation / Embedded Systems / Safety-Critical Control
Deliverable
production ML models | product features
Required skills
C/C++ programming, RTOS and bare metal development, multi-process/multi-threaded programming, micro-processor architecture (ColdFire, ARM, PowerPC), communication protocols (TCP/IP, UDP, RS232/RS422, HDLC, SPI, I2C, CAN), software configuration management, static analysis and unit testing, safety standards compliance (IEC 61508, DO-178B, Cenelec-50128)
Preferred skills
Experience with Green Hills INTEGRITY RTOS, Agile/Scrum/Kanban methodologies
Technologies
C, C++, ColdFire, ARM, PowerPC, Green Hills INTEGRITY, SVN, GIT, Klocwork, Understand, PC-Lint, VectorCAST
Responsibilities
Develop and maintain software components and systems from requirements analysis through commercial deployment; Program applications, components, and interfaces in C/C++; Design and implement software ensuring quality specifications; Participate in design and code reviews; Drive performance and reliability enhancements; Develop SW design, requirements, and architecture documentation.
Seniority
Senior, hands-on IC with mentoring responsibilities