Software Engineer, Video Processing
Job Description
Software Engineer, Video Processing
Our cameras capture multiple high-resolution sensor streams in real time. The Video team builds the processing pipeline that turns those raw streams into the stable, stitched, analysis-ready video our customers rely on — and that our AI, coaching, highlights, and cloud products build on top of.
You’ll work on one of the most technically challenging parts of the Veo stack: real-time video processing across embedded devices and cloud environments, using GStreamer, in-house plugins, GPU acceleration, CUDA, and Vulkan compute shaders.
This is not a role far away from the product. It is right in the middle of the value chain, where camera hardware, firmware, video processing, AI, and customer experience meet. The work is deeply technical, highly visible, and directly connected to the quality of every recording Veo delivers.
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.
What You Could Bring
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).
Environment
- 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)
- 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)