Software Development Engineer – R&D
Listed on 2026-06-03
-
Software Development
Software Engineer, Embedded Software Engineer
Televic Rail is seeking an innovative and hands-on Software Development Engineer to help build the next generation of onboard communication, passenger information, and mission-critical transportation technologies. This role is based in Morrisville, North Carolina (Raleigh-Durham area).
This role will be part of the founding North American R&D team and will work closely with global engineering teams across Europe and other regions to design, develop, test, and maintain software solutions used in demanding transportation environments worldwide.
The ideal candidate is a strong software engineer who enjoys solving complex technical challenges, working across embedded systems and application layers, and contributing to products where reliability, safety, networking, and performance matter.
This position includes the opportunity to contribute to IP-based onboard communication and passenger information platforms used in rail environments around the world. Televic Rail values collaboration, innovation, continuous learning, and engineering excellence in a globally connected environment.
Key Responsibilities- Software Development:
Design, develop, test, and maintain software applications and embedded systems for rail and transportation products. - Develop complex software code and functional tests in Linux-based development environments.
- Write and maintain clean, scalable, and maintainable code in languages such as Java, Python, C++, C#, Rust, and other technologies as required.
- Translate system requirements into technical specifications and software solutions.
- Participate in architecture discussions and technical design reviews.
- Develop software for real-time, networked, or distributed systems.
- Document developed software and technical functionality.
- Collaborate with hardware, systems, mechanical, and product engineering teams.
- Support the full product lifecycle from concept and prototyping through production release.
- Troubleshoot software issues in development, testing, and field environments.
- Contribute ideas for continuous improvement and product innovation.
- Depending on experience level, provide guidance and mentorship to junior developers.
- Develop unit tests, integration tests, and validation procedures.
- Support root-cause analysis for software and system defects.
- Ensure software meets performance, cybersecurity, reliability, and safety requirements.
- Follow established coding, documentation, and development processes.
- Work closely with international R&D and project teams, including collaboration with engineering teams in Belgium and Germany.
- Participate in technical discussions related to architecture, coding standards, and product strategy.
- Support the development of engineering best practices within the North American R&D organization.
- Bachelor’s degree in Computer Science, Software Engineering, Electrical Engineering, or related technical field.
- 3+ years of professional software development experience (adjustable based on level).
- Strong programming experience in one or more of the following:
Java, Python, C++. - Experience developing and debugging Linux-based software.
- Experience working in Linux and/or Windows development environments.
- Practical understanding of Git or other version control systems.
- Strong debugging, troubleshooting, and problem-solving skills.
- Ability to work independently in a fast-paced R&D environment.
- Strong communication and collaboration skills.
- Experience with embedded systems and embedded Linux environments.
- Experience with real-time operating systems (RTOS).
- Experience with Linux packaging, preferably Debian-based distributions.
- Knowledge of networking technologies and communication protocols such as TCP/IP, UDP, HTTP, MQTT, or similar.
- Experience with scripting languages such as Bash or Python.
- Experience with audio/video technologies or communication systems.
- Familiarity with object-oriented programming principles and modular software design.
- Experience with UML modeling and application architecture design.
- Experience with CI/CD pipelines, Docker, or containerized environments.
- Experience in transportation,…
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).