Railroad Software Engineer
Job Title: RailMaster Software Engineer Location: Rochester NY RegionJob Type: Full-TimeDepartment: Engineering / Transportation SystemsSeniority Level: Mid-Level to SeniorAbout UsHeadquartered in Grass Valley, CA, Apex Rail Automation (Apex) delivers high-quality rail yard & track solutions. Our products include main line switches, yard switches, rods and layouts, wayside electronics, dark territory switch control, and Modular Yard Automation (MYA) systems. We supply products and systems primarily to freight railroads, particularly Class 1 railroads (CSX, BNSF, UP, etc.).At Apex we’re transforming the backbone of freight logistics: the railyard. Our mission is to modernize rail operations through intelligent software systems that increase efficiency, safety, and throughput. Our platform supports yardmasters, switch crews, and logistics coordinators with powerful tools for decision-making, automation, and real-time visibility.Position SummaryAs a RailMaster Software Engineer, you’ll be part of a high-impact team building solutions that manage and optimize railyard operations. You'll design and implement features that support train movements, track assignments, inventory updates, and yard automation. Your work will directly support the efficiency of North America’s freight rail network.ResponsibilitiesMaintain and enhance existing codebase on existing and new projects (development)Architect and implement Next Generation control system (development)Implement Project Specific Control Systems (application)Customer supportAssist in testing, training and cutover of systems (on-site)Professional RequirementsBachelor's or Master’s degree in Computer Science, Software Engineering, or related fieldMinimum 2 years’ experienceTechnical RequirementsComputer languages: C++ with STL and MFC, C# with WPF, Windows shell, Unix shell, and PythonOperating systems: Windows (7, 8, 10, 11, and Server 2012), Unix, Cygwin (Unix under Windows)Source control: Git (self hosted)Database: SQL with MSAccess (ODBC)Programming techniques: Microsoft Visual Studio, Serial communications, UDP sockets, MSMQ, JMS, and ZMQ message queues, XAML, XML and JSON.Graphics programming: Vector and BitmapPreferred ExperienceBackground in transportation, logistics, or rail systemsKnowledge of yard operations such as car routing, switch lists, and track layout planningExperience working with mapping, geospatial, or SCADA systemsFamiliarity with rail industry standards and protocols (e.g. AEI tags, FRA compliance)Working on railroad applications:Familiarity with railroad operation rules (GCOR, NORAC, CROR)Familiar with FRA regulations (236 rules)Familiar with AAR, AREMA standardsFamiliar with railroad nomenclature, circuit plans and drawingsExperience with communications protocols (Genisys, DataTrain, Modbus, etc)Experience with TCP, UDP, Fiber Optics, Networking, DomainsCompensationCompetitive base salary based on experienceHealthcare benefits including medical, dental and visionInsurance benefits including life insurance, etc.401k planCompensation: From $70,000 to $120,000 per year