
Software Engineer
I design and ship resilient software at scale, from React Native apps on mobile and TV to the cloud infrastructure, APIs and video players behind services millions rely on every day.
Live · OTNet circle player
About

Samuel East
Senior Software Engineer with 15+ years experience, specialising in media streaming. Cardiff, UK.
I have been working in software engineering for over 15 years, with a deep focus on media streaming, running my own company and building services across the industry. Most recently I was on the player team at Plex, working in React Native and TypeScript with native Swift and Kotlin underneath, shipping one codebase to iOS, tvOS, Android, Android TV, Fire TV, Samsung Tizen and web. Before that, two years at 3SS building Vodafone's next generation set top box from the ground up, and two years at NBC PeacockTV across PeacockTV, SkyShowTime, and NowTV.
My role at Plex was eliminated in October 2026 when the company cut 24 positions and restructured its development teams, so I am available immediately and looking for React Native contract work.
I specialise in video player architecture, React Native apps on mobile and TV, DRM integration (Widevine, PlayReady, FairPlay), adaptive streaming (HLS, DASH, CMAF), and cross platform delivery across iOS, Android, web, Samsung Tizen, LG WebOS, Xfinity, and custom STB hardware.
I ship reliable, performant video experiences at scale. Whether it's reducing video start times, solving playback issues on constrained devices, or architecting a player that handles live, VOD, catchup, and recordings, I deliver.
Agentic AI is how I build software now. At Plex the whole engineering workflow ran on it. A Linear ticket went into Claude Code, an agent planned and wrote the change, AI reviewed the pull request, and an engineer signed it off. We shipped production React Native, Swift and Kotlin that way every day, so this isn't something I've only tried on side projects.
Working like that taught me that agents are fast but not careful. Left alone, they duplicate logic, ignore the patterns already in the codebase and slowly wear the architecture down one pull request at a time. So I treat the architecture as my job. I set the boundaries and the contracts between layers and platforms, and I keep the agents working inside them.
Skills and plugins are how I make that stick. An agent will happily solve the same problem a different way every time, so I write the way a team works into Claude skills, plugins and MCP tooling: how to trace the code before changing it, how to keep platforms in parity, how to test and verify a change. Every engineer and every agent then works the same way, and the output stays consistent and easy to review.
Testing holds it all together. I write the tests first, so each agent has a clear definition of done, and I run agents in parallel with a plan agreed before any code is touched. Nothing lands until the E2E tests and on device checks pass. Along the way I question the decisions agents make, catch the regressions they introduce and push back when an AI review invents a fix for something that was never broken. That's what lets me take a feature from ticket to production cleanly, with code that's small, readable and easy for the next engineer to pick up.
Outside of work I built my own AI suite, a desktop app in Rust and TypeScript (vybecoding.sh), and I use it to build iOS apps in Swift, Android apps in Kotlin, Electron desktop apps and web platforms that run on a single API.
After 15 years as a software engineer, working with Claude and Codex feels like running my own dev team. The experience is what lets me direct that team well, and that combination is what I bring to a role.
Skills
Languages & Frameworks
React Native
Video Players
DRM & Protocols
Mobile, TV & STB Platforms
AWS Media
AWS Infrastructure
Tooling
Experience
Plex
Aug 2026 – Oct 2026 · PermanentSenior Software Engineer · Player Team (most recent)
Player team engineer on Plex's cross platform React Native client, shipping one TypeScript codebase to iOS, tvOS, Android, Android TV, Fire TV, Samsung Tizen and web, with native Swift and Kotlin underneath. My role was eliminated in October 2026 when Plex cut 24 positions and restructured its development teams, a company wide decision rather than anything to do with the work.
- Extracted the native playback layer into a standalone PlexPlayerSDK across Swift and Kotlin, a 134 file refactor, with a reference app and an automated SDK boundary check wired into CI
- Rebuilt the seek path so the dpad, the remote's seek buttons and double tap gestures all run one implementation on Apple TV, Fire TV and Android, coalescing bursts of step seeks into a single engine seek to stop playback stalling minutes behind
- Fixed seek preview thumbnails so they hold for the whole scrub, and brought them to the remote's seek buttons across both the current and the next player UI
- Fixed Android picture in picture rendering and controls in Kotlin, hiding the OSD and fitting the video to the PiP tile
- Pinned the Android navigation bar hidden behind the OSD using react-native-edge-to-edge, including a patch to react-native-safe-area-context for a stale inset bug on Android 10
- Shipped pre roll ads on FAST channels, carrying the ad tag through play queue rebuilds and fixing the ad pod lifecycle, seek blocking and countdown
- Worked across three playback engines: AVPlayer and KSPlayer (FFmpeg based) on Apple, ExoPlayer and androidx-media on Android, including engine selection by codec and content type
- Added playback metrics for the skip buttons, a post play overlay over the closing credits, and Siri transport commands that honour the skip interval asked for
- Built plex-test, a Claude Code plugin that drives a real device or simulator through a library, measures start time, seeking and sustained playback against an adb audio counter, then scores the run and renders it in a dashboard
- Delivered inside a fully AI driven workflow, writing custom Claude skills, MCP tooling and plugins so generated code stayed reviewable and grounded
3SS
Mar 2024 – Mar 2026 · ContractSenior Software Engineer · Vodafone
Built Vodafone's next generation set top box from the ground up. Also worked across Yettel, Entel, and OneTV, delivering live, catchup, start over, channel switching, on demand, and recordings. Worked closely with Nagra on DRM and content protection integration. Helped the team hit critical launch deadlines, working remotely from the UK.
- Architected DVB/OTT playback switching using Shaka Player with seamless protocol handoff
- Built high performance UI with LightningJS optimised for low end STB hardware
- Implemented Live, StartOver, TimeShift, Catchup, VOD, and recording playback with 7 day rolling buffer
- Created remote development suite using ZeroTier & Raspberry Pi for real time STB access
- Reduced zapping times and improved playback resilience through KPI driven optimisation
- Developed stall detection, manifest manipulation, and custom debug UI for memory diagnostics
- Ported STB app to Samsung Tizen with minimal code changes
NBC PeacockTV
Mar 2022 – Mar 2024 · ContractSenior Software Engineer
Worked across PeacockTV, SkyShowTime, and NowTV. Focused on video start times, rebuffering reduction, and cross platform delivery at scale.
- DASH, HLS, MSE & EME implementation across Web, Xfinity, and Samsung
- KPI monitoring and performance optimisation using Conviva (VST, VSF)
- BrightLine ad integration and mid stream adaptive bitrate capping
- Memory and CPU profiling on low end Samsung and Xfinity Xi3/Xi6 devices
- AAMP player development for Xfinity X1 platform
- CVSDK development in TypeScript with Jest and CI integration
S3Bubble
2014 – 2021 · 7 yearsFounder & CEO · AWS Certified
Founded and scaled a cloud media streaming platform on AWS, distributing millions of video players monthly via API. Built the full product stack end to end, from encoding tools and DRM protected playback to the underlying Amazon infrastructure: large RDS databases, EC2 Auto Scaling groups behind Elastic Load Balancers, bastion hosts inside hardened VPCs for secure access, and the full AWS Media stack. AWS Certified, with hands on experience running production services at scale.
- Built and scaled a media streaming API serving millions of video players monthly across thousands of sites
- Architected resilient AWS infrastructure: RDS (MySQL/Postgres) at scale, EC2 Auto Scaling groups, ELB / ALB load balancers, multi AZ VPC with bastion hosts and IAM hardened security
- ElectronJS encoding app with multi bitrate HLS/DASH, encryption, subtitles, thumbnails, and bulk upload
- CloudFormation & Lambda automated encoding pipeline via MediaConvert
- Studio approved DRM player via SPEKE API with Widevine, PlayReady, FairPlay using BuyDRM and EZDRM
- Production live streaming workflow with MediaLive, MediaPackage, and OBS integration
- Fully automated CloudFormation stack that spun up complete live streaming setups on demand, covering MediaLive channels, MediaPackage endpoints, IAM, networking, and DRM wiring
- AngularJS media streaming application integrated with AWS cloud workflows
Side Projects
OTNet
Bring your own infrastructure streaming platform. Publishers encode on their own machine, keep content in their own cloud bucket, and ship branded apps to every screen.
- Desktop encoder for HLS and DASH with multi bitrate presets
- Widevine, PlayReady and FairPlay DRM via EZDRM or BuyDRM
- Content stays in your own S3 or Cloudflare R2 bucket
- Live channels with an EPG and server side ad insertion
- TV apps for Samsung Tizen, LG webOS, Android TV and Fire TV
- Embeddable player web component built on Shaka Player
Built with Next.js, Electron, FFmpeg, Shaka Packager, Lightning, SwiftUI, Kotlin
Vybe Coding
AI coding terminal. The desktop app runs your coding agents, and the phone app picks up the same sessions so you can keep working away from your desk.
- Carry desktop AI coding sessions over to your phone
- Runs Claude Code, Codex, Copilot and Gemini
- Voice commands turned into shell commands
- Safety checks that flag or block destructive commands
- Build on your computer, install straight to your phone
- VNC remote desktop and SFTP file transfer
Built with Tauri (Rust), React, xterm.js, whisper.cpp, SwiftUI, Kotlin
Audibase
Marketplace for creators selling AI generated music. Listeners preview for free and buy the full quality master to keep.
- Upload tracks and set your own price
- Choose the preview: short clip, lower quality or audio tagged
- Creator store pages with payouts straight to Stripe
- Radio stations by genre, BPM or musical key
- Sales charts and Slop or Drop listener voting
- Desktop app detects tempo and key automatically
Built with Next.js, Hono, Electron, SwiftUI, Kotlin, Firebase, Stripe, R2
YT Streamer
Go live on YouTube straight from your phone, with no stream keys or RTMP setup.
- One tap Google sign in connects your channel
- Broadcast at up to 1080p and 60fps
- Adjustable resolution, bitrate and frame rate
- Front and back cameras, mute on the fly
- Auto reconnect when the network drops
TVProber
Desktop developer suite for LG webOS and Samsung Tizen TVs. Deploy, inspect and debug TV apps on real sets without the SDK ceremony.
- Finds LG and Samsung TVs on your network automatically
- One click install from a URL, .ipk or .wgt
- Built in Chrome DevTools inspector for TV apps
- Virtual remote and Wake-on-LAN
- Live webcam view of the TV over WebRTC
- Remote access to TVs over ZeroTier
Built with Electron, Express, FFmpeg, MediaMTX, WebRTC
Education
Swansea Metropolitan University
2007 – 2009BA Hons Interactive Digital Media, 2:1
Swansea College, Tycoch
2003 – 2005BTEC National Diploma Music Technology, Distinction, Merit, Merit
John Colet School, Wendover
1994 – 19989 GCSEs (A–C) including English, Maths, Sciences
Contact
Let's build something
amazing.
Cardiff, South Wales. Open to remote & travel.