Middle Systems / Software Engineer
Data Science UA is a service company with deep expertise in AI and Data Science. Our story started in 2016 with the first Data Science UA Conference in Kyiv, and since then, we’ve built one of the largest AI communities in Europe.
About the client
Our client is developing technology to make industrial environments safer and reduce the risk of accidents through proactive monitoring.
The Ukrainian engineering team is building a next-generation industrial safety platform combining Computer Vision, Machine Learning and IoT.
About the role
We are looking for a Middle Systems / Software Engineer to work on the performance-critical core of a real-time Computer Vision platform.
This is not a typical Python Backend role. The main challenge is building and optimising the systems underneath the CV/ML engines — where performance depends on memory, processes, concurrency, data movement, CPU/GPU utilisation and low latency.
You will work on the runtime that executes CV pipelines as a graph of processing stages, with latency measured in milliseconds. You will deal with shared memory, zero-copy data transfer, inter-process communication and process orchestration.
What matters most to us
We are open to engineers coming from C++, Python, Go or similar backgrounds.
The programming language itself is not the main selection criterion. What matters much more is a strong systems engineering mindset and experience understanding what is happening inside a system.
For example, we are particularly interested in engineers who have worked with problems such as:
- reducing unnecessary memory copies;
- optimising CPU/GPU utilisation;
- investigating latency spikes and performance bottlenecks;
- working with processes, threads and concurrency;
- debugging race conditions and difficult low-level issues;
- profiling applications and identifying bottlenecks;
- designing efficient data-processing pipelines;
- working with large amounts of data moving through several processing stages;
optimising algorithms or runtimes for performance.
A candidate does not necessarily need to have worked with exactly the same technologies before.
For example, experience with CUDA, C++, GPU optimisation, real-time processing, robotics, computer vision, video pipelines, scientific computing or other performance-sensitive systems can be highly relevant.
What you’ll work on
- Collaborate with CV/ML engineers to turn model inference code into reliable production pipeline stages.
- Develop and optimise the core Pipeline Engine — an in-process, real-time runtime executing the CV pipeline as a graph of stages.
- Work with zero-copy shared-memory pools for passing frames between processes.
- Develop and optimise low-latency ZeroMQ communication for control messages, metadata and synchronisation.
- Work with pipeline metadata and serialisation boundaries.
- Analyse and improve CPU, memory and latency performance.
- Profile, debug and troubleshoot complex runtime issues.
Contribute to the architecture and evolution of the real-time processing infrastructure.
Requirements
Must-have
- Commercial experience as a Software Engineer / Systems Engineer / C++ Engineer / Python Engineer or similar.
- Strong systems engineering mindset and understanding of:
- processes and concurrency;
- memory ownership and data movement;
- latency vs throughput trade-offs;
- performance bottlenecks;
- profiling and debugging;
- failure modes of complex systems.
- Experience working with performance-sensitive or latency-sensitive systems.
- Experience with at least one of C++, Python, Go or a similar programming language.
- Python is used in the platform, but it does not need to be your primary language. Strong C++ / systems experience is equally relevant.
- Solid Linux fundamentals.
Solid experience with Docker and containerised environments.
Nice-to-have
- CUDA, including IPC handles and stream synchronisation.
- C/C++ or Go.
- OpenCV.
- GStreamer, FFmpeg or RTSP.
- ZeroMQ.
- Shared memory / zero-copy architectures.
- FlatBuffers or other binary serialisation formats.
- Experience building or operating camera/video pipelines.
What we offer
- Competitive compensation.
- Benefits package.
- Strong engineering team.
- Opportunity to work on challenging real-time Computer Vision infrastructure.
- Meaningful industrial safety use case.
- Technical challenges and opportunities for professional growth.