Software Engineer, Video Processing
Veo is a global leader in AI-based sports camera technology. Our innovative, fully automatic camera solution enables sports teams to record matches and training sessions without a camera operator. We’re democratizing the world of sports by granting video analysis for teams on all levels—a privilege that used to be only for the few. More than 40,000 clubs in 90+ countries record their games every week.
But what truly sets us apart? Our people. We’re a diverse group of innovative thinkers, creators, and problem-solvers who believe in delivering an incredible product—and having fun while doing it.
The Opportunity
At the heart of our technology is an embedded Linux–based camera system that records sports matches using multiple sensors. Using our advanced video processing algorithms, these streams are stitched together to present one continuous playfield.
Our AI and cloud teams then process the video using proprietary models that lead the industry in our field, enabling players and coaches to access detailed statistics such as goals, ball possession, passes, and more.
While dedicated teams own most of the video processing and AI development, you will interface closely with both worlds and have the opportunity to gain exposure across these domains.
Most work in this role focuses on Rust- and Python-based user-space Linux applications, Linux platform engineering, and firmware architecture, rather than low-level hardware or driver development. Our firmware stack primarily uses Rust, Python, and C, and fluency in at least two of these languages is preferred.
What You Will Do
- Design, build, and maintain real-time video processing pipelines using GStreamer in embedded and cloud environments.
- Contribute to GPU-accelerated video processing algorithms (e.g., CUDA and Vulkan compute shaders).
- Improve video quality, robustness, latency, synchronization, keyframe handling, and failure recovery.
- Build CI-friendly testsuites, reproducible builds, and debugging tools that make complex media pipelines easier to develop and operate.
- Collaborate closely with firmware, camera, AI, platform, and cloud teams to ensure the video stack integrates cleanly and ships reliably.
- Help shape the long-term architecture of Veo’s video processing stack as our cameras, algorithms, and product ambitions evolve.
You do not need to match every item below. We are looking for strong engineers who enjoy difficult systems problems and want to learn deeply.
You’ll likely thrive in this role if you have experience with some of the following:
- Experience with GPU programming and compute shaders (Vulkan and/or NVIDIA/CUDA)
- Knowledge of video processing, computer vision and/or media pipelines, especially GStreamer (elements, caps negotiation, debugging, plugin development).
- Solid software engineering fundamentals: architecture, APIs, testing, observability, and maintainable systems.
- Proficiency in one or more of the languages we commonly use around the stack (depending on area): Rust / C++ / Python / Slang.
- Comfortable working in Linux environments and with build systems/tooling used in native code projects (e.g., Meson/Ninja-based workflows).
- Media stack: GStreamer + in-house GStreamer plugins
- Plugin development: includes Rust-based plugins and Rust↔C/C++ interop patterns (bindgen/FFI)
- Build & packaging: Meson/Ninja workflows; Debian packaging and Docker-based dev/build flows
- GPU acceleration: CUDA and Vulkan
- Environments: Docker/Kubernetes, Embedded Linux (Yocto)
Dette opslag er fra ats_lever. Se originalopslag ↗