Senior C++ Playback Engineer
GeorgiaTEK Systems Inc.
Sobre a vaga
Job Description – Senior C++ Playback Engineer
Position: Senior C++ Playback Engineer
Experience: 7+ Years
Work Mode: Remote
Employment Type: Contract
Position Overview
We are looking for an experienced Senior C++ Playback Engineer to design, develop, and optimize native C++ video playback solutions using GStreamer for Smart TVs, Set-Top Boxes, and Gaming Consoles.
The ideal candidate will have strong expertise in native C/C++ development, multimedia frameworks, video streaming technologies, and Digital Rights Management (DRM). The role involves developing high-performance streaming video players, integrating content protection technologies such as Microsoft PlayReady and Google Widevine, and optimizing playback performance across multiple platforms.
Key Responsibilities
- Design, develop, and maintain native C++ streaming video players for Smart TVs, Set-Top Boxes, and Gaming Consoles.
- Develop and maintain video player plugins and components using GStreamer.
- Integrate and implement DRM technologies, including Microsoft PlayReady and Google Widevine.
- Optimize video playback performance, including Time to First Frame (TTFF), startup time, and playback stability.
- Design and implement scalable and efficient video player architectures.
- Research, evaluate, and implement suitable multimedia technologies and technical solutions.
- Support multiple streaming protocols and adaptive bitrate (ABR) playback.
- Troubleshoot and resolve complex multimedia, playback, and platform-specific issues.
- Maintain technical documentation and ensure clean, maintainable, and testable code.
- Collaborate with cross-functional teams, including engineers, QA testers, product managers, and project stakeholders.
- Take ownership of assigned components and deliver features within agreed timelines.
- Participate in Agile/Scrum ceremonies, sprint planning, and technical discussions.
Required Qualifications & Technical Skills
1. C/C++ & Native Development
- 7+ years of hands-on experience in C/C++ programming.
- Strong experience in native application development for TV platforms.
- Experience developing high-performance applications with low-level platform APIs/NDK.
- Experience building and maintaining streaming video players, preferably using C++.
2. Multimedia Frameworks
- Strong familiarity with multimedia frameworks and open-source projects such as:
- GStreamer
- FFmpeg
- WebRTC
- Experience developing and integrating GStreamer-based plugins and pipelines.
3. Video Streaming Protocols
- Strong understanding of video streaming protocols and formats, including:
- HLS and Low-Latency HLS (LL-HLS)
- MPEG-DASH
- CMAF
- RTP and RTMP
- Timed Metadata (ID3)
- Experience with Adaptive Bitrate (ABR) streaming and ABR ladder algorithms.
4. DRM & Content Protection
- Strong experience with digital rights management (DRM) technologies, including:
- Google Widevine
- Microsoft PlayReady
- Apple FairPlay
- MPEG Common Encryption (CENC)
- Experience implementing secure content playback and DRM integration.
5. Smart TV & Device Platforms
Experience developing or optimizing applications for one or more of the following platforms:
- Samsung Tizen
- Roku
- Amazon Fire TV
- Apple tvOS
- Vizio
- Hisense
- Xbox
- PlayStation
- Other Smart TV, Set-Top Box, or Gaming Console platforms
6. Audio, Video & Subtitle Technologies
- Knowledge of multilingual text tracks, closed captioning, and subtitle formats such as WebVTT.
- Understanding of multilingual audio tracks and audio description.
- Knowledge of modern video codecs, including H.264, H.265/HEVC, VP8, VP9, and AV1.
- Familiarity with Dolby Vision, HDR, and high-refresh-rate video playback.
7. Video Streaming & Delivery Workflows
- Basic understanding of Video-on-Demand (VOD) and linear streaming workflows.
- Familiarity with content ingest, transmuxing, encoding, packaging, playout, and Server-Side Ad Insertion (SSAI).
- Understanding of multi-CDN streaming environments and content delivery workflows.
- Experience with REST API integration and development.
Additional Requirements
- Strong understanding of Agile/Scrum development methodologies.
- Ability to write clean, efficient, maintainable, and testable code.
- Proven ability to manage large-scale development projects from design through delivery.
- Ability to independently own and deliver specific components or features.
- Experience with Jira and Confluence for project tracking and documentation.
- Strong problem-solving, analytical, and troubleshooting skills.
- Excellent communication and collaboration skills.
- Ability to provide regular progress updates, effort estimations, and delivery timelines to project managers and Scrum Masters.