Senior Software Engineer - TV Playback
Build and evolve low-level C++ playback integrations for Spotify’s native TV experiences, working with platform media frameworks and video playback systems. The role requires expertise in codecs, adaptive bitrate streaming, buffering, synchronization, and cross-layer performance debugging.
About the job
Responsibilities
- Design, build, and evolve the C++ integration layer powering audio and video playback on TV devices running a new Rust runtime.
- Integrate playback with platform-native media frameworks such as AVPlayer, ExoPlayer, or equivalent TV player stacks.
- Own buffering strategies, playback state handling, A/V synchronization, adaptive bitrate configuration, track selection, and rendering paths.
- Debug complex performance and reliability issues across application logic, OS-level frameworks, and hardware acceleration layers.
- Partner with playback platform and device teams to translate shared APIs and designs into real-world TV implementations.
- Improve test coverage, tooling, and observability to detect regressions and accelerate iteration.
- Contribute to technical design discussions, code reviews, and knowledge sharing.
Requirements
- Strong experience building low-level systems in C++, ideally in video, media, or playback domains.
- Hands-on experience integrating native playback frameworks such as AVPlayer, ExoPlayer, vendor SDKs, or similar media stacks.
- Deep understanding of video playback fundamentals, including codecs, streaming formats, adaptive bitrate (ABR), buffering behavior, and A/V synchronization.
- Comfort working close to operating-system and media-framework layers and diagnosing issues across system boundaries.
- Experience contributing to scalable technical systems across platforms.
- Confidence debugging performance and reliability issues using logs, traces, profilers, and system diagnostic tools.
- Effective cross-team collaboration and clear communication of technical trade-offs.
- Commitment to delivering reliable, high-quality playback experiences.
Work Arrangement
- Based in London or Stockholm.
- Hybrid work with expected in-person collaboration and the option to work from home.
Skills
C++, Rust, Avplayer, Exoplayer, Video Codecs, Adaptive Bitrate, Buffering, A/V Synchronization, Streaming Formats, Vendor Sdks, Logs, Traces, Profilers, Hardware Acceleration
Similar jobs
Backend Engineering jobsSenior backend engineer building PostgreSQL and Ruby frameworks, guardrails, and tooling for data retention, lifecycle management, scalability, and database health across GitLab’s SaaS and self-managed deployments.
Build and operate a high-performance futures and options execution management platform, integrating market data, exchange connectivity, risk controls, and trading workflows. Requires 8+ years of Java software engineering experience and hands-on experience with low-latency front-office trading systems.
Senior engineer responsible for designing, delivering, and operating distributed systems supporting Cloudflare’s application security products. The role requires 6+ years of experience, strong systems programming skills, technical leadership, and experience with production reliability and mentoring.
Senior backend engineer designing scalable services and APIs that connect Phantom Cash to blockchain networks. The role requires Node.js/NestJS, REST API, event-driven, and distributed-systems expertise, with blockchain or fintech experience preferred.
Build and scale backend services for a global corporate expense and payments platform, owning features from design through production support. The role requires strong Java and Spring Boot expertise, distributed-systems experience, cloud knowledge, and 4–6 years of engineering experience.