Senior Software Engineer – C++ and Python Video Systems
Join a video and multimedia architecture team developing software for video encoding and decoding systems. The role focuses on modern C++, Python, performance optimization, research-to-product delivery, and software quality. This is a hybrid position requiring four office days per week.
Responsabilidades
- Collaborate with architects and algorithm engineers to design, implement, and optimize solutions in modern C++ and Python.
- Review code and mentor engineers from non-software backgrounds while raising software engineering standards.
- Implement focused changes across the SDK and video stack to support research and product development.
- Guide research code through to production video encoding and decoding SDK releases.
- Profile and optimize critical codec-stack paths, using CUDA when CPU optimization is insufficient.
- Develop and maintain libraries, frameworks, and engineering tools used by the team.
Requisitos
- Bachelor’s degree in Computer Science, Electrical Engineering, or Computer Engineering; a relevant master’s degree may be accepted with applicable experience.
- At least 8 years of relevant experience, or at least 5 years with a relevant master’s degree.
- Strong proficiency in modern C++, including templates, RAII, concurrency, move semantics, and the standard library.
- Strong proficiency in Python, including idiomatic, performant, and well-tested code.
- Strong software design and code-quality skills covering APIs, modularity, testability, maintainability, and performance.
- Professional experience developing on Linux with CMake, Git, debuggers, profilers, and sanitizers.
- Experience optimizing algorithmic code using methods such as multithreading, multiprocessing, SIMD, C, or C++.
Se valora
- Familiarity with video compression and codecs such as NVENC, NVDEC, FFmpeg, GStreamer, x264, x265, AV1, or VVC.
- CUDA or GPU programming experience.
- Experience embedding Python in C++ or building Python extensions with tools such as pybind11 or nanobind.
- Experience with C++ and Python algorithmic frameworks including OpenCV, NumPy, SciPy, CuPy, Matplotlib, TensorFlow, or PyTorch.