About the Role
Job Description
We are seeking a Broadcast Media Systems Software Engineer with a strong focus on data streaming and real-time processing platforms to help design, build, and operate scalable, high-throughput, low-latency systems. This role will work on distributed systems that ingest, process, and deliver streaming data used for analytics, machine learning, monitoring, and mission-critical applications. You will collaborate closely with data engineers, platform engineers, product teams, and infrastructure to ensure reliability, performance, and scalability across streaming pipelines.
Responsibilities
- Design, build, and maintain scalable data streaming pipelines
- Develop and operate transport and broadcast media related architectures
- Implement custom transport logic and socket architectures to handle high-throughput packet and frame-level media streams
- Optimize systems for throughput, latency, and resource efficiency
- Participate in capacity planning and performance tuning
- Implement monitoring, logging, alerting, and metrics for streaming applications
- Integrate and customize open-source media frameworks including FFmpeg, GStreamer, and TSDuck into proprietary streaming ecosystems.
- Implement low-level wrappers and APIs using C, C++, or Rust to interface directly with core networking and hardware-accelerated video codecs.
- Ensure strict stream compliance, packet ordering, fault tolerance, and frame-accurate timing across all linear playout systems.
- Optimize media software for CPU cache locality, minimal memory allocation, zero-copy data paths, and overall resource efficiency.
- Implement robust monitoring, logging, and metrics specifically tailored for packet-level streaming health, jitter, and transport stream analytics.
- Debug production issues related to packet loss, latency spikes, frame corruption, backpressure, or clock drift.
- Support on-call rotations and incident response for critical data systems
- Collaborate with broadcast engineering teams to build, integrate, and test streaming, MAMs, playout, automations, and graphics systems.
- Collaborate with product, analytics, and ML teams to support new use cases
- Write clean, maintainable, and well-tested code
- Participate in design reviews, code reviews, and technical discussions
- Contribute to documentation and engineering best practices
Required Qualifications
- Bachelor’s degree in Computer Science, Computer Engineering, or a related technical field (or equivalent practical experience).
- 3+ years of professional software engineering experience.
- Systems Programming: 2+ years of hands-on experience programming real-time applications at the Low-Level / Packet Level using C, C++, or Rust.
- Must be highly comfortable with manual memory management, pointer manipulation, and multi-threaded optimizations.
- Strong experience in a modern concurrency language like Go or Python for stream orchestration, tooling, and control-plane API development.
- Network Protocols: Deep, foundational understanding of UDP and TCP/IP networking mechanics. Direct experience managing socket programming, custom congestion control, packet pacing, and error correction techniques (ARQ / selective retransmission).
- Media Transport: Proven experience with broadcast and linear video workflows, including media containers and multiplexing (specifically MPEG-TS wrappers).
- Experience building custom stream troubleshooting, diagnostic, or real-time monitoring software.
- Codecs: Codec-agnostic architecture mindset with low-level implementation knowledge of H.264/AVC, H.265/HEVC, and emerging standards like AV1.
- Automation & Scripting: Strong scripting capabilities in Python or Bash for stream orchestration, pipeline automation, and local-first systems management.
Preferred Qualifications
- Direct development experience with libsrt, librist, RTMP, or similar APIs.
- Deep familiarity with open-source media frameworks like FFmpeg, Astreamer, GStreamer, TSDuck and low level packet streaming tools.
Requirements
Bachelor's degree
A degree in Computer Science, Computer Engineering, or a related technical field is required.
3+ years experience
Candidates must have over three years of professional software engineering experience.
Systems programming
Experience programming real-time applications at the low-level using C, C++, or Rust is essential.
Network protocols
A deep understanding of UDP and TCP/IP networking mechanics is necessary.
Media transport
Proven experience with broadcast and linear video workflows is required.
Nice to Have
Experience with libsrt, librist, RTMP, or similar APIs is preferred.
Familiarity with open-source media frameworks like FFmpeg and GStreamer is a plus.