Skip to content

learnwithparam/backend-accelerator

Repository files navigation

Software Engineering Accelerator Solutions

A workshop-style collection of Node.js solutions demonstrating the engineering behind famous product features.

Structure

accelerator-solutions/
├── module-1-data-infrastructure/
│   ├── week-1-resumable-uploader/     # Google Drive style uploads
│   ├── week-2-link-unfurler/          # Slack/WhatsApp previews
│   ├── week-3-auth-microservice/      # Auth0 style SSO
│   └── week-4-async-queues/           # Midjourney style job queues
├── module-2-high-scale/
│   ├── week-5-seat-locker/            # Ticketmaster concurrency
│   ├── week-6-live-auction/           # eBay WebSockets
│   ├── week-7-live-scorecard/         # Cricbuzz SSE
│   └── week-8-geospatial/             # Uber geospatial
├── module-3-distributed-systems/
    ├── week-9-event-sourcing/         # Event sourcing and snapshots
    ├── week-10-stripe-deduplicator/   # Stripe idempotency
    ├── week-11-feature-flags/         # Flags and rollouts
    └── week-12-capstone/              # Capstone project
├── module-4-production-lifecycle/
    ├── week-13-api-hardening/         # Pagination, uploads, rate limits
    └── week-14-observability/         # Logs, health checks, metrics
└── module-5-production-operations/
    └── week-15-production-ops/        # Migrations, rollbacks, flags, drills

How to Use

Each week contains:

  • CHALLENGES.md - System spec/PRD with constraints and follow-up challenges
  • Multiple solution-* folders, each addressing a different constraint
  • Each solution is independent with its own docker-compose.yml

The production lifecycle module adds the missing "ship it safely" skills:

  • API hardening for abuse resistance and scalable responses
  • Observability for debugging, health checks, and incident response

The production operations module closes the final release-safety gap:

  • schema migrations and backward-compatible release playbooks
  • request correlation and incident-oriented metrics
  • feature flags, contract checks, load checks, and rollback drills

The make smoke-all target is the recommended launch gate because it runs the module smoke suites in order across the full accelerator:

  • module 1
  • module 2
  • module 3
  • module 4
  • module 5

Running a Solution

# Navigate to any solution
cd module-1-data-infrastructure/week-1-resumable-uploader/solution-1-low-ram

# Start with Docker
docker compose up -d

# Run tests
npm test

# Run verification/demo
npm run verify

Makefile Commands

# Prerequisites
make prereq             # Start all prerequisites

# Module-specific
make m1                 # Start Module 1
make m2                 # Start Module 2
make m3                 # Start Module 3
make m4                 # Start Module 4
make m5                 # Start Module 5

# Week-specific
make w1                 # Start Week 1
make week-up WEEK=5     # Start Week 5

# General
make up-all             # Start everything (Caution: Heavy!)
make test-all           # Run all tests
make verify-all         # Run all verifications
make smoke-all          # Run module smoke suites for modules 1 through 5
make clean              # Stop all containers
make prune              # Deep clean Docker

Prerequisites

  • Docker & Docker Compose
  • Node.js 20+ (for local development)
  • Make (optional, for shortcuts)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors