Responsible for definition, development and maintenance of real time embedded software applications for use in train communication and control systems. Work closely with the business unit to ensure application development meets product specification requirements. Work closely with other engineering teams, partners and vendors to ensure inter-operability and reuse. Design, implement and test software, ensuring quality specifications are met. Participate actively in design and code reviews. Drive performance and reliability enhancements. Will use Configuration Management tools (e.g. PVCS) to control software and changes to software.