Senior C++ Software Engineer (#5819)

Ukraine
Work type:
Office/Remote
Technical Level:
Senior
Job Category:
Software Development
Project:
Precision optics industry leader

We are looking for an experienced Senior C++ Software Engineer to join the embedded vision systems project and contribute to the development of an advanced traffic management platform based on sensor fusion and a ROS2-based architecture.

The role focuses on building and maintaining core application components in Modern C++, integrating sensors and external interfaces, and developing reliable, high-performance software for complex traffic management scenarios.

The successful candidate will work independently on complex development tasks, contribute to architectural and technical decisions, participate in code reviews, and help ensure the scalability, maintainability, and performance of the platform.

Key Responsibilities

  • Design and implement core application components in C++ within a ROS2-based system.
  • Develop and maintain high-quality software using Modern C++ (C++17/20).
  • Integrate various sensors, external interfaces, and third-party components into the existing system.
  • Develop distributed, component-based applications using pub/sub and message-based communication.
  • Contribute to software architecture and design decisions, evaluate technical options, and ensure maintainable and reusable solutions.
  • Develop unit and integration tests to ensure software quality, reliability, and stability.
  • Participate in code reviews and provide constructive technical feedback.
  • Identify and implement performance optimizations, with a focus on runtime performance and efficient resource utilization.
  • Debug and troubleshoot complex issues in a Linux development environment, including profiling and performance analysis.
  • Maintain container images and build configurations for development and target environments.
  • Collaborate closely with other developers, architects, and project stakeholders.
  • Provide technical guidance and mentorship to less experienced developers.

Required Skills & Experience

  • 5+ years of professional software development experience, with strong expertise in C++.
  • Strong proficiency in Modern C++ (C++17/20).
  • Solid understanding of memory management, concurrency, multithreading, and performance-critical programming.
  • Experience developing robotic applications using ROS2.
  • Hands-on experience integrating multiple sensors into complex software systems.
  • Understanding of ROS2 architecture and distributed/component-based systems.
  • Experience with pub/sub or message-based communication and distributed systems.
  • Solid understanding of software architecture and design principles.
  • Experience writing unit and integration tests.
  • Strong Linux development skills, including debugging, profiling, and performance analysis.
  • Strong experience with Git and collaborative software development workflows.
  • Experience with Docker and containerized development/build environments.
  • Strong analytical, problem-solving, and debugging skills.
  • Ability to work independently and take ownership of complex technical tasks.
  • Good English communication skills.

Nice to Have

  • Hands-on experience with ROS2 and development of ROS2 nodes.
  • Experience with Python, particularly for non-critical ROS2 nodes, tooling, or testing.
  • Experience with Yocto / Embedded Linux.
  • Knowledge of Kubernetes and Helm.
  • Experience with CI/CD pipelines, particularly Jenkins or GitLab CI.
  • Understanding of machine learning concepts applied to perception and decision-making.
  • Experience with real-time operating systems and real-time programming concepts.
  • Experience with traffic management, traffic monitoring, or traffic law enforcement systems.

What You Will Work On

As part of an embedded vision systems project, you will contribute to a complex sensor-fusion platform designed to handle challenging traffic and junction scenarios. Your primary focus will be the development of reliable and high-performance C++ components within the existing ROS2 ecosystem, as well as integration with sensors and other system components.

You will have the opportunity to influence technical solutions, contribute to architectural decisions, and work on software where performance, reliability, scalability, and real-time capabilities are essential.

We offer*:

  • Flexible working format - remote, office-based or flexible
  • A competitive salary and good compensation package
  • Personalized career growth
  • Professional development tools (mentorship program, tech talks and trainings, centers of excellence, and more)
  • Active tech communities with regular knowledge sharing
  • Education reimbursement
  • Memorable anniversary presents
  • Corporate events and team buildings
  • Other location-specific benefits

*not applicable for freelancers

×

Easy apply

    or
    Refer a friend