# Software Engineer

**Company:** [Wowza Media Systems](http://jobs.workable.com/companies/qgQqF7yXz6qpkF1Dp9WDov.md)
**Location:** Remote
**Workplace:** remote

[Apply for this job](http://jobs.workable.com/view/7299b035-3340-4c85-99b1-d42a4c2c2008)

## Description

We’re hiring a junior/mid software engineer with **grit** to work on the core of Wowza Streaming Engine — a large, performance-critical Java media server with a C/C++ transcoder underneath. You don’t need to be a video expert yet; you need to **want to become one**, learn fast, and use modern AI tooling (**Aider** or **Claude Code**) to punch above your weight.

### The job

Wowza Streaming Engine powers live and on-demand video for customers in 100+ countries — live events, education, healthcare, government. The engine is a big, mature Java codebase (with a native C/C++ transcoding layer) that handles real-time media at scale, where a pause at the wrong moment means someone’s live stream stutters.

You’ll be working _inside_ that engine codebase. That means:

-   **Building core features** — designed for testability and scale, reviewed by engineers who’ve been doing streaming for a long time and will actually teach you.
-   **Debugging real customer problems** — the kind where you read logs, form a hypothesis, reproduce it, and fix it. This is where you’ll learn the most.
-   **Reading a lot of existing code** before you write new code. The codebase is large and parts of it are old; navigating it well (and using tools like Claude Code to navigate it _faster_) is a considerable part of the job.
-   **Writing tests** and caring whether your change actually works — not just whether it compiles.
-   **Growing into the video domain**: codecs (H.264/HEVC/AV1), streaming protocols (RTMP, HLS, MPEG-DASH, WebRTC, SRT), packaging, transcoding, the JNI boundary between Java and native code. We’ll help you get you there; you bring the passion and curiosity.

### What’s a big bonus (not required)

-   **Any video/streaming exposure** — codecs, FFmpeg or GStreamer, streaming protocols, a side project that pushed pixels. Even hobbyist-level counts; it tells us the domain excites you.
-   **C/C++ reading ability** — enough to follow the native transcoder code across the JNI boundary.
-   **Concurrency / performance work** — thread dumps, profilers, heap analysis, or just war stories.
-   **Open-source contributions** of any kind — they show us how you work when nobody’s assigning tickets.

### What you’ll get out of it

This is a role where the ceiling is high and the domain is deep. In your first couple of years you can realistically go from “solid Java developer” to someone who understands **low-latency media delivery end to end** — a skill set that is rare, in demand, and genuinely hard to acquire anywhere that isn’t shipping a real streaming server. You’ll do it alongside senior engineers who own the transcoder, the protocols, and the packaging pipelines, and who expect to hand you real work — not busywork.

## Requirements

### What we need

-   **Solid fundamentals in Java or a similar language** — roughly 1–4 years of real, hands-on development. The engine is Java and that’s what you’ll write here, but if you’re coming from a kindred language (C#, Kotlin, Scala), that’s fine — the fundamentals transfer. You understand objects, collections, exceptions, and have at least a general understanding of threads and know why they’re dangerous.
-   **Grit.** You don’t bounce off a hard problem or a big unfamiliar codebase. You dig, you ask good questions, you come back with what you found — not just “it doesn’t work.”
-   **Real experience with AI coding tools** — Claude Code, or similar agentic tooling. Not “I tried Copilot once”: you use these tools daily as a lever, you read and verify what they produce, and you know when _not_ to trust them. You experiment different workflow, refine your harness and make your AI context better every day.This is how a junior/mid engineer catches up quickly on a codebase this size, and we treat it as a first-class skill.
-   **Fast, honest learning.** You’ll be surrounded by concurrency, JVM performance, native interop, and 20 years of streaming standards. Nobody expects you to know it on day one; everybody expects you to be visibly further along each month.
-   **Ownership of quality.** You test your own work, you care about the person debugging your code in two years, and you say so plainly when something is broken.

## Benefits

### Benefits

-   Generous Paid Time Off
-   Medical, Dental, and Vision insurance (effective Day 1)
-   401(k) with strong company match
-   Dependent Care FSA
-   Employer-paid Life Insurance and AD&D
-   Voluntary Life Insurance (Employee/Spouse/Child)
-   Paid Parental Leave
-   Short-Term and Long-Term Disability
-   Training & Development opportunities
-   Employee Assistance Program (EAP)

### Who we are

Wowza Media Systems is a Colorado-based global leader in video streaming software. Our technology powers live and on-demand video delivery for education, healthcare, enterprise, gaming, government, and more — reaching customers in over 100 countries. Backed by Clearhaven Partners, we continue to grow by pushing innovation in scalable, low-latency video streaming.

### Why join Wowza?

At Wowza, you’ll be part of a fast-paced, mission-driven team working on solutions that power critical real-world applications — from live-streaming graduations to helping parents monitor NICU care. We encourage ownership, collaboration, and innovation while providing a supportive, global team environment.

**Bottom line:** if you’re early in your career, hungry, good with Java or similar language, fluent with AI-assisted development, and the idea of learning how live video _actually_ works excites you — we want to talk to you.
