All case studies

    Job Hub

    Internal — Candy Lab · other · 3 months · team 2

    Distributed job queue / task scheduler — hub keeps a queue of jobs (emails, scripts, API calls), separate workers poll the hub and execute them concurrently.

    Stack

    Angular 19NestJS 10MongoDBBull QueueRedis

    Challenge

    Long-running tasks (emails, batch scripts, periodic API sync) block the main app. We needed a reusable infrastructure to offload such work and run it across multiple workers with retries, monitoring and graceful shutdown.

    Solution

    NestJS hub exposes job CRUD + WebSocket gateway. Workers (separate Node.js containers) pull jobs by polling, run them, send heartbeat. Job types: email / script / api_call / file_process / custom. Bull Queue + Redis backing, exponential retry, per-worker statistics dashboard (Angular MF shell).

    Results

    Tasks moved off the main API: zero blocking. Adding a new worker = +1 container, no code change. Default job timeout 5 min, max retries 3 — configurable per job.