Best of Backend DevelopmentMarch 2026

  1. 1
    Article
    Avatar of facebook_codeFacebook Engineering·8w

    FFmpeg at Meta: Media Processing at Scale

    Meta runs FFmpeg and ffprobe tens of billions of times daily to handle over 1 billion video uploads. For years, Meta maintained an internal FFmpeg fork to support threaded multi-lane encoding and real-time quality metrics. By collaborating with FFmpeg developers, FFlabs, and VideoLAN, Meta contributed these capabilities upstream—threaded multi-lane encoding landed in FFmpeg 6.0/8.0 and in-loop decoding for real-time quality metrics in 7.0—allowing Meta to fully deprecate its internal fork for VOD and livestreaming pipelines. Meta also integrated its custom MSVP video transcoding ASIC via FFmpeg's standard hardware APIs, though that integration remains internal since the hardware isn't publicly accessible. Meta plans to continue investing in upstream FFmpeg development.

  2. 2
    Article
    Avatar of growwenggGroww Engineering·7w

    How Groww Migrated from MySQL to CockroachDB to Power Its Cell-Based Architecture (Part 1)

    Groww, a financial platform, migrated from MySQL to CockroachDB to support a cell-based architecture capable of 10x scale. MySQL's lack of native sharding and multi-cloud failover paths drove the decision. CockroachDB was chosen for its PostgreSQL compatibility, full ACID compliance, multi-region active-active deployment (RPO=0, RTO<10s), and its 'Regional By Row' feature that enables moving users between cells by updating a single column. Key migration challenges included eliminating auto-increment IDs (replaced with UUIDs or cached sequences), fixing sequential index hotspots using hash-sharded indexes, and handling nullable column indexes with partial indexes. An automated pipeline was built to move data with minimal downtime. Part 2 will cover multi-region node deployment and cell-to-region mapping.

  3. 3
    Article
    Avatar of kentcdoddsKent C. Dodds·7w

    Offloading FFmpeg with Cloudflare

    Kent C. Dodds shares how a long podcast episode caused his Fly.io primary server to hit 400-500% CPU load, forcing him to offload FFmpeg processing to Cloudflare Queues and Containers. The new architecture enqueues a job from the app, a Cloudflare Worker forwards it to a Container that runs FFmpeg, uploads results to R2, and POSTs a signed HMAC-SHA256 callback to the app. The post covers the before/after metrics (85% reduction in peak load), cost tradeoffs between Cloudflare and a dedicated Fly.io machine, and several implementation mistakes caught after the initial PR: a counterproductive local fallback, container lifecycle issues with sleepAfter, and a queue worker that blocked for the full transcode duration. The conclusion reinforces a 'start simple, iterate when reality demands it' philosophy.

  4. 4
    Article
    Avatar of postgresPostgreSQL·8w

    Autobase 2.6.0 released

    Autobase 2.6.0 introduces a blue-green deployment workflow for PostgreSQL clusters, enabling near-zero downtime upgrades. Users can prepare a fully upgraded cluster in advance, then switch traffic in seconds. Rollback is equally fast and lossless thanks to reverse logical replication. Autobase is an open-source DBaaS alternative that automates deployment, failover, backups, restores, upgrades, and scaling without requiring deep DBA expertise.

  5. 5
    Video
    Avatar of developedbyeddevelopedbyed·7w

    I am making a rogue like typing game...

    A developer shares a work-in-progress roguelike typing game inspired by Monkey Type, where players fight creatures by typing words. The demo showcases mechanics like items (quill of precision, lost hourglass), boss fights with word-flipping abilities, and a shop system. The creator details their AI-assisted workflow for generating sprite animations using ChatGPT, Gemini, and Grok (image-to-video), then extracting frames with ffmpeg. For coding, they use OpenCode with Claude Opus and GPT, noting Opus consumes far more credits than GPT for similar tasks. T3 chat is also mentioned for running parallel coding sessions.

  6. 6
    Article
    Avatar of kentcdoddsKent C. Dodds·7w

    Simplifying Containers with Cloudflare Sandboxes

    Kent C. Dodds shares how he replaced a Cloudflare Container-based FFmpeg audio pipeline with Cloudflare Sandboxes, eliminating heartbeat/shutdown coordination plumbing. The new design uses a one-shot sandbox.exec() call directly from the queue worker, keeping R2 credentials in the worker and passing only presigned URLs to the sandbox. The sandbox image is minimal: base Cloudflare sandbox image plus FFmpeg and a shell script. Two production bugs surfaced post-merge — a sandbox ID length limit (63 chars max) and a broken Dockerfile that replaced the required Cloudflare sandbox runtime with a plain Debian base. Both were diagnosed and fixed with help from a Cursor agent and the Cloudflare MCP server. The entire migration, including two PR iterations, took under an hour of the author's own time.

  7. 7
    Article
    Avatar of hnHacker News·7w

    A modern alternative to Protocol Buffer

    Skir is a new declarative schema language for defining data types, constants, and APIs, positioned as a modern alternative to Protocol Buffers. Write schemas in `.skir` files and generate type-safe, idiomatic code for TypeScript, Python, Java, C++, Kotlin, and more. It supports schema evolution with safety checks, RPC-style API definitions similar to gRPC, multiple serialization formats (dense JSON, readable JSON, binary), and cross-project type sharing via GitHub imports. A VS Code extension provides real-time validation, code completion, and formatting.

  8. 8
    Article
    Avatar of hnHacker News·7w

    0dd Company

    A creative coding project that glitches the 1922 silent film Häxan by directly manipulating its H.264 binary data. Three approaches were explored: NULLing out frames, overlaying noise on raw YUV data, and finally targeting I-frame chroma bits to introduce color artifacts and a melting effect. The final technique uses Python and ffmpeg to extract the H.264 stream, randomly flip least-significant bits biased toward chroma data at frame ends, then repackage the result. Each run produces a unique output due to randomness.

  9. 9
    Video
    Avatar of codeheadCodeHead·6w

    Books That Made Me A CRACKED Backend Dev

    A curated list of seven books recommended for leveling up backend development skills, presented in a suggested reading order. The books covered are: Clean Code (Uncle Bob), The Pragmatic Programmer, Designing Data-Intensive Applications, System Design Interview (Alex Xu), Database Internals (Alex Petrov), Release It! (Michael Nygard), and Fundamentals of Software Architecture (Richards & Ford). Each book is briefly described with practical takeaways, from writing readable code and DRY principles to understanding distributed systems, database B-tree indexes, circuit breaker patterns, and software architecture trade-offs. A suggested reading order is provided, starting with habits and progressing to deep systems knowledge.

  10. 10
    Article
    Avatar of thedailywtfThe Daily WTF·4w

    Three Minutes

    A cautionary tale about a developer (Barry) who, instead of fixing slow SQL queries through proper indexing and query planning, wrote a Python polling script that checks every 3 minutes whether database jobs completed. The script has multiple code quality issues: unnecessary array usage, string comparison against boolean literals, duplicated near-identical queries, and embedded retry logic that bypasses the team's existing job management system. The real fix would have been query optimization with indexes rather than a workaround that masks the underlying performance problem.