Backend Engineer
Design and ship the systems that sit behind real products.
45+
completed
~35.5h
total time
10
projects
REST API Fundamentals with Node.js
Build a working REST API from scratch with Express — routing, middleware, request validation, and proper HTTP status codes.
Database Schema Design
Design a normalized relational schema for a small application, model one-to-many and many-to-many relationships, and manage changes with a real migration tool.
Authentication and Session Management
Implement two production authentication patterns — server-side sessions and stateless JWTs — and understand the security tradeoffs of each.
Build a Job Queue with Redis
Move slow work off the request/response cycle with a Redis-backed job queue — producers, workers, retries with backoff, and multi-step flows using BullMQ.
Caching Strategies at Scale
Put a Redis cache in front of a slow data path with the cache-aside pattern, choosing sensible TTLs and protecting against stampedes.
Rate Limiting and API Gateways
Protect an API from abuse with a Redis-backed rate limiter that stays consistent across multiple server instances.
Microservices with gRPC
Define a service contract in Protocol Buffers and implement a typed gRPC client and server pair in Node.js.
Event-Driven Architecture with Kafka
Decouple two services with Apache Kafka — produce and consume events, and understand partitions and consumer groups.
Database Sharding and Replication
Scale a single PostgreSQL database beyond one machine with streaming replication for read scaling and high availability.
Production Logging and Monitoring
Replace ad hoc console.log calls with structured JSON logging via Pino, correlated with distributed traces through OpenTelemetry.
