RabbitMQ Video Processing Pipeline

The problem

Video processing needed to scale beyond synchronous API calls. Resizes had to be validated, queued, and processed reliably while staying compatible with existing asset workflows and team boundaries (API owners, workers, downstream movers).

What I designed

I implemented a Video Resize API responsible for input validation, message serialization, and publishing jobs to a RabbitMQ quorum queue. That decoupled “accept the request” from “do the heavy work,” and gave the pipeline room to absorb bursts without tying up web threads.

Coordination work

The effort wasn’t code in isolation — it included aligning Assets Mover configuration, formats with the video team, worker consumer behavior, and demo planning for stakeholders. Backward compatibility mattered as much as the new architecture.

What I took away

Message-driven design shines when failure modes are explicit: poison messages, retries, idempotency, and observability on queue depth. This project was a practical lesson in re-architecting a pipeline without breaking consumers that still expected the old world to work.