Reverse engineered by Jungho Lee
• Cross-Platform Release Management: Own end-to-end release cycles across 7 platforms (iOS, Android, Roku, tvOS, Tizen, webOS, Vizio). Manage App Store submissions, platform certification, and device-specific QA. Define user stories with acceptance criteria and drive backlog prioritization through sprint planning.
• API & Backend Collaboration: Work with backend engineers on EPG channel API responses and video playback request parameters in Django. Identify missing or invalid ad parameters (us_privacy, npa, lat, did) across the ad delivery chain, define fixes, and validate via Postman. Resolved a hardcoded parameter issue, increasing CTV ad impressions by 50%.
• Content Feeds & FAST Distribution: Own MRSS feed generation for FAST channel distribution and manage content feed delivery (XML/JSON) to platform partners including Google, Roku, and Android. Collaborate with content operators across OnDemandKorea and AmasianTV to audit metadata, subtitles, and media assets. Built n8n automation to audit registered posters and logos.
• Frontend, UI/UX & User Journey: Partner with frontend and UI/UX teams to design user journey flows for new features from wireframe through UAT. Debug subtitle delivery by inspecting HLS manifests (m3u8) using browser dev tools.
• Data-Driven Roadmap & Stakeholder Management: Built playback health dashboards using MUX Analytics and Google Data Studio, tracking KPIs across devices to inform roadmap decisions. Provide daily updates on product health, timelines, and feature performance to leadership.
• Enterprise Migration: Led migration to Google Workspace across 30+ SaaS apps and AWS infrastructure, reducing licensing costs by 15%. Primary point of contact for internal client groups across Sales, Ops, and Engineering.
• Process Improvement & AI Adoption: Redesigned Jira/Confluence workflows for cross-functional teams, increasing tool adoption by 60%. Championed internal AI adoption with training programs and AI-assisted workflows.
• RAG Recruitment Agent (ask.jungholee.com): Architected a conversational AI agent using Next.js, TypeScript, and n8n for RAG orchestration. Integrated Google Gemini with Supabase (PostgreSQL/pgvector) for vector retrieval and Airtable as headless CMS. Managed with Git and deployed on Vercel.
• Business Directory Platform (hanin.store): Shipped a bilingual (Korean/English) business directory with Next.js, Supabase, and Airtable, featuring a job board, bounty system, and Instagram live feed integration.
• Python Scripting & Automation: Wrote Python scripts for web scraping and data aggregation pipelines. Designed n8n workflows for daily Slack/Gmail summarization and generative media tools, from ideation to production.
• Administered virtualized server environments for 200+ users across 4 offices (99%+ uptime). Managed $400K+ annual software/hardware budget and vendor contracts. Worked directly with client user groups across departments to ensure operational needs were met.
manifest.hls.useSafariBehaviorForLive fires on every HLS channel load in the web player. Deprecated since Shaka v4.x and removed in v5.0 — v4.14.1 still supports it, but upgrading to v5.0 will break live HLS playback. CTV apps (Roku, Fire TV, Apple TV) use native player SDKs — this finding is web-specific. Migration path: adopt streaming.liveSync config.
Golazo and select event channels (UEFA, 48 Hours) use HLS AES-128 key delivery instead of Widevine. Endpoint: /licenseServer/hls/v1/cbsi/key. Golazo streams at 8,941 kbps — nearly 50% higher than other HLS channels (5,980 kbps). This is a manifest-level DRM decision — applies identically across web, CTV, and mobile since AES-128 key rotation is handled server-side via EXT-X-KEY tags.
The web player loads both Shaka Player (v4.14.1) and HLS.js (v1.5.8) simultaneously — adding ~354KB (gzipped) to the initial payload. This enables zero-reload protocol switching between DASH linear and HLS event channels. CTV apps use native platform player SDKs (e.g., Roku Media Player, ExoPlayer on Fire TV) and would not carry this dual-JS overhead. Web TPM decision: consolidate to one player (Shaka already supports HLS) vs. maintain dual-player for protocol-specific tuning.
The web platform fires both legacy Adobe AppMeasurement (JS-2.23.0 via /b/ss/) and modern AEP Web SDK (Alloy) (via /ee/or2/v1/interact) simultaneously to saa.paramountplus.com. This indicates an active web migration to AEP. CTV apps use Adobe Experience Platform Edge SDKs (native per platform) and may already be on the modern stack. Completing the web migration would eliminate duplicate event collection on the browser surface.
FreeWheel VAST macros [GPPSTRING] and [GPPSECTIONID] pass through unpopulated — yet DoubleClick correctly sends gpp=DBABLA~BVQqAAAAAWA.QA. This confirms OneTrust CMP generates GPP, but the FreeWheel ↔ OneTrust integration is not wired. This is not a timing issue — raw template brackets mean macro substitution is missing entirely. Separately, [IFA] / [IFATYPE] are expected empty on web (no device ad ID in browsers); on CTV these carry Roku RIDA, Fire TV Ad ID, etc. GPP is a compliance gap across all platforms.
32 unique Akamai Airspace hostnames observed across web sessions. Initial sessions showed host sharing (e.g., propeca301a3 serving both History Undiscovered and 80s Sitcoms), while extended sessions revealed near 1:1 channel-to-host mapping. CDN edge allocation is infrastructure-level — the same Akamai routing serves web, CTV, and mobile clients identically. This behavior is consistent with geo-based load balancing and session affinity at the CDN layer.
| # | Channel | Category | DRM | CDN Origin | DAI Event ID |
|---|---|---|---|---|---|
| 1 | CBS News | News | None (clear) | news20e7hhcb | Sid4xiTQ... |
| 2 | CBS News Los Angeles | News | None (clear) | losandd87138 | K_2aA7OV... |
| 3 | CBS Sports HQ | Sports | None (clear) | propee33f9c2 | 9Lq0ERvo... |
| 4 | Golazo | Sports | HLS AES-128 | dai.google.com | RGKIw3F7... |
| 5 | UEFA Champions League | Sports | HLS AES-128 | dai.google.com | e_J20hQl... |
| 6 | 48 Hours | Entertainment | HLS AES-128 | 48hoa39aa69 | JUr94WL2... |
| 7 | 60 Minutes | Entertainment | None (clear) | 60mi203g0hb | nrb-l85C... |
| 8 | Entertainment Tonight | Entertainment | None (clear) | enterbcef94b | xrVrJYTm... |
| 9 | Inside Edition | Entertainment | None (clear) | insidgfe884c | Y2DMgfcl... |
| # | Channel | Category | DRM | Airspace CDN Host | MediaPackage Output ID |
|---|---|---|---|---|---|
| 1 | Movies | Entertainment | Widevine (Irdeto) | prope7000cg2 | 7327de9b... |
| 2 | All Day Drama | Drama | Widevine (Irdeto) | propeeh880hf | 6478afc2... |
| 3 | Crime & Justice | Drama | Widevine (Irdeto) | propec8a8g5d | ea5a1b95... |
| 4 | History Undiscovered | Drama | Widevine (Irdeto) | prope828e699 | 51a87d4b... |
| 5 | Black Voices | Drama | Widevine (Irdeto) | propehd52184 | 971649db... |
| 6 | SpongeBob Universe | Kids | Widevine (Irdeto) | propehdbb66a | 202a929c... |
| 7 | PAW Patrol | Kids | Widevine (Irdeto) | prope326ef10 | c66b469c... |
| 8 | Animation Favorites | Kids | Widevine (Irdeto) | prope12dc513 | 9bf3c299... |
| 9 | Kids & Family Fun | Kids | Widevine (Irdeto) | prope7da52h4 | 65122b02... |
| 10 | Preschool Corner | Kids | Widevine (Irdeto) | propeh201d65 | 08d01a37... |
| 11 | RuPaul's Drag Race | Reality | Widevine (Irdeto) | prope26af1ac | 1cc5d232... |
| 12 | Survivor | Reality | Widevine (Irdeto) | prope4h423g3 | 2dc3d623... |
| 13 | The Challenge | Reality | Widevine (Irdeto) | prope4h4545h | d79756ea... |
| 14 | Reality TV Competition | Reality | Widevine (Irdeto) | prope1b2ebf3 | eb303946... |
| 15 | Reality TV Shores | Reality | Widevine (Irdeto) | prope6hd09cc | 469ea5b2... |
| 16 | Adult Animation | Comedy | Widevine (Irdeto) | prope97d0g68 | f85f9f08... |
| 17 | 80s Sitcoms | Comedy | Widevine (Irdeto) | propeca301a3 | d6c098d5... |
| 18 | 90s Sitcoms | Comedy | Widevine (Irdeto) | prope8hfb933 | dfb5a1e6... |
| 19 | 24/7 Laughs | Comedy | Widevine (Irdeto) | prope7590e38 | e782698a... |
| 20 | Nostalgic Hits | Comedy | Widevine (Irdeto) | propef5ch9b2 | 79b99cd4... |
| 21 | TV Classics | Comedy | Widevine (Irdeto) | propede8cf4h | 10a73b1d... |
| 22 | Star Trek | Franchise | Widevine (Irdeto) | prope4197c75 | 33c91e46... |
| 23 | CSI | Franchise | Widevine (Irdeto) | prope664bgd7 | 0f983bdd... |
| Attribute | HLS — Google DAI | DASH — AWS MediaPackage | HLS — SyncBak Local |
|---|---|---|---|
| Channel Types | News, Sports, Talk Shows | Entertainment, Kids, Drama, Reality, Comedy, Franchise | CBS Local Affiliates |
| Count | 9 channels | 23 channels | 14 stations |
| Protocol | HLS (MPEG-TS segments) | DASH (fMP4 segments) | HLS (master.m3u8) |
| Ad Insertion | Google DAI SSAI (server-side stitching) | FreeWheel / None observed | Local affiliate ads |
| DRM | None (clear) or AES-128 key rotation | Widevine via Irdeto | JWT auth token |
| License Server | dai.google.com | cbsi.live.ott.irdeto.com | cbsplaylistserver.aws.syncbak.com |
| Max Bitrate | 8,941 kbps (Golazo) | ~8,000 kbps | 60fps enabled |
| CDN | Akamai Airspace + Google CDN | Akamai Airspace (unique host per channel) | SyncBak (AWS) |
| Player | HLS.js v1.5.8 | Shaka v4.14.1 | Shaka v4.14.1 |
| DAI Events | 9 unique event IDs | — | — |
| Geolocation | — | — | DMA-based (lat/long) |
saa.paramountplus.com) masks Adobe collection server.
JS-2.23.0) and modern AEP Web SDK (Alloy) are firing simultaneously. This indicates an active migration — AppMeasurement will likely be deprecated once AEP coverage is validated.
order property.
POST /va/api/v1/sessions/{session_id}/eventsHow Paramount+ adapts its streaming stack per CTV platform — each with distinct rendering engines, DRM requirements, and certification processes.
| Platform | Rendering Engine | Video Player | DRM | Streaming Protocol | Memory Limit | Certification Cycle |
|---|---|---|---|---|---|---|
| Roku | BrightScript / SceneGraph | roVideoPlayer (native) | PlayReady | HLS (primary), DASH (fallback) | ~512 MB (varies by model) | 2-4 weeks |
| Amazon Fire TV | Android (forked AOSP) | ExoPlayer / Shaka | Widevine L1 | DASH (primary), HLS | 1-2 GB | 1-2 weeks |
| Apple TV | tvOS (UIKit + SwiftUI) | AVPlayer (native) | FairPlay | HLS (required) | ~3 GB | 5-10 days (App Store review) |
| Samsung Tizen | Tizen Web Engine (Chromium-based) | AVPlay / Shaka Player | Widevine L1 + PlayReady | DASH + HLS | ~1 GB (2018+ models) | 3-5 weeks |
| LG webOS | webOS Web Engine (Chromium-based) | Luna Service / Shaka Player | Widevine L1 + PlayReady | DASH + HLS | ~1 GB | 3-5 weeks |
| Android TV / Google TV | Android (full AOSP) | ExoPlayer / Shaka | Widevine L1 | DASH (primary), HLS | 1.5-4 GB | 1-2 weeks (Play Store) |
| Chromecast / Built-in | Cast Web Receiver (Chromium) | Cast CAF (Shaka-based) | Widevine L1 | DASH (primary) | ~512 MB | Self-certified (Google Cast SDK) |
/freewheel/fms.jsondai.google.com/segments/redirect/c/dai.google.com/linear/pods/v1/p/slid=pause_ads-1018x674tpcl=PAUSE_MIDROLL, slau=PAUSE_AD/freewheel/fms.jsondai.google.com/segments/redirect/c/btn-play-pausepauseStart eventns_st_ev=pause
slid=pause_ads-1018x674tpcl=PAUSE_MIDROLLslau=PAUSE_AD
s1.fwmrm.net/m/1/520311/.pause-panel-return-buttonplay
| Pipeline | Ad | Video/Creative ID | Duration | CDN / Edge Server | Advertiser |
|---|---|---|---|---|---|
| VOD | Ad 1 | 2222756b23a632d9 | ~30s | r4---sn-qja5mc-5j.googlevideo.com | — |
| VOD | Ad 2 | b0c790e1d45c7b2d | ~30s | r3---sn-a5msen7s.googlevideo.com | — |
| VOD | Ad 3 | 81f568a32f216810 | ~30s | r5---sn-a5meknzr.googlevideo.com | — |
| VOD | Ad 4 | 66266564 (reid: 276502044) | ~5s | r4---sn-qja5mc-5j.googlevideo.com | — |
| VOD | Ad 5 | 7df398c869b72aec (reid: 1164819249) | ~15s | r4---sn-a5mekn6s.googlevideo.com | — |
| Live HLS | Slot 1 | 68179315 | 30.03s | cdn1.extremereach.io | Stamps.com |
| Live HLS | Slot 2 | 305071423 | 30.03s | p-ause1-adops-output.cbsivideo.com | CBS (Star Trek promo) |
| Pause | Pause 1 | 90598183 (reid: 1202013972) | PNG 1018×674 | s1.fwmrm.net → CloudFront | Expedia (BEX Q1 2026) |
| Pause | Pause 2 | 90597745 (reid: 1165760354) | PNG 1018×674 | s1.fwmrm.net → CloudFront | Bayer Aspirin |
| Pause | Pause 3 | 193124147 (reid: 754599923) | PNG 1018×674 | s1.fwmrm.net → CloudFront | Star Trek Shop (TOS Uniforms) |
| Pause | Pause 4 | 309603850 (reid: 1201710563) | PNG 1018×674 | s1.fwmrm.net → CloudFront | Star Trek Shop (Tricorder) |
| Pause | Pause 5 | 150591479 (reid: 604234729) | PNG 1018×674 | s1.fwmrm.net → CloudFront | Star Trek Shop (Badges) |