Project Roulette / Projects

Backend, Embedded & IoT and Security projects

9 of 30 projects. Each has a stack, five features to ship, a difficulty, a time estimate, and a bonus challenge.

Backend · Advanced · 2–3 weeks

Distributed Background Job Queue

A Redis-backed job system with multiple workers, retries, scheduled jobs, and a dead-letter queue, plus a small dashboard showing what's running and what failed.

  • Go
  • Redis
  • PostgreSQL
  • Docker Compose
  • Prometheus

Features

  1. Enqueue API with priorities and delayed jobs
  2. Exponential-backoff retries and a dead-letter queue
  3. Horizontally scalable workers with graceful shutdown
  4. Idempotency keys that prevent duplicate processing
  5. Metrics endpoint for throughput, latency, and failure rate

Bonus: A chaos test script that kills workers mid-job and proves, with logs, that no job is ever lost.

Backend · Intermediate · 1–2 weeks

Webhook Relay & Replay Service

Receives webhooks from services like Stripe or GitHub, verifies their signatures, stores them, and forwards them reliably to your apps with retries and one-click replay.

  • Node.js
  • TypeScript
  • Fastify
  • PostgreSQL
  • BullMQ
  • OpenAPI

Features

  1. Per-source HMAC signature verification
  2. Durable storage with a searchable delivery log
  3. Retries with backoff and a per-endpoint circuit breaker
  4. Replay any stored event to any endpoint
  5. OpenAPI spec with generated API docs

Bonus: A small CLI that tunnels live events to localhost so developers can test webhooks on their own machine.

Backend · Advanced · 2 weeks

API Gateway with Rate Limiting

A reverse proxy that sits in front of your services and handles authentication, rate limiting, caching, and request logging so the services don't have to.

  • Go
  • Redis
  • JWT
  • Docker
  • k6

Features

  1. Config-driven routing to multiple upstream services
  2. Token-bucket rate limiting per API key, shared across instances through Redis
  3. JWT validation and API key management
  4. Response caching with TTLs and manual invalidation
  5. Structured access logs and latency metrics

Bonus: k6 load tests that publish p50, p95, and p99 latency with and without the gateway in front.

Embedded & IoT · Intermediate · 1–2 weeks

ESP32 Air Quality Station

A connected sensor node that measures CO₂, PM2.5, temperature, and humidity, and streams readings over MQTT to a live dashboard.

  • ESP32
  • C++ (ESP-IDF or PlatformIO)
  • MQTT
  • InfluxDB
  • Grafana

Features

  1. Sensor drivers over I²C and UART with calibration
  2. Deep-sleep power management for battery use
  3. MQTT with reconnect and local buffering during outages
  4. Over-the-air firmware updates
  5. Dashboard with thresholds and alerts

Bonus: A custom PCB designed in KiCad and a 3D-printed enclosure, shown in photos in the README.

Embedded & IoT · Advanced · 2–3 weeks

PID Motor Controller on FreeRTOS

A closed-loop DC motor speed and position controller on an STM32, with a desktop app for live plotting and tuning.

  • STM32
  • C
  • FreeRTOS
  • Quadrature encoder
  • Python (PyQt, pyqtgraph)

Features

  1. Encoder reading using hardware timer peripherals
  2. PID loop running at a fixed rate in its own RTOS task
  3. Serial protocol with framing and checksums
  4. Desktop GUI with live plots and gain sliders
  5. Host-side unit tests for the control logic

Bonus: An auto-tuning routine (relay or Ziegler–Nichols) with a before/after step-response plot.

Embedded & IoT · Advanced · 2–3 weeks

FPGA Game Console with VGA Output

Pong or Breakout built entirely in hardware with Verilog, driving a VGA monitor straight from an FPGA board with no CPU at all.

  • Verilog or SystemVerilog
  • Vivado or Quartus
  • Basys 3 or DE10-Lite board
  • Verilator

Features

  1. VGA timing generator for 640×480 at 60 Hz
  2. Sprite drawing and collision logic in hardware
  3. Debounced button input and a score on the seven-segment display
  4. Testbenches with automated waveform checks
  5. Clean module hierarchy with resource and timing reports

Bonus: Sound effects generated in hardware through PWM audio output.

Security · Intermediate · 1–2 weeks

Git Secrets Scanner & GitHub Action

A CLI and GitHub Action that scans repositories, including full commit history, for leaked API keys, passwords, and private keys.

  • Go
  • Regex + entropy analysis
  • GitHub Actions
  • SARIF

Features

  1. Pattern and entropy-based secret detection
  2. Fast scanning of the full Git history
  3. Allowlist file to suppress false positives
  4. SARIF output that shows up in GitHub code scanning
  5. Pre-commit hook mode that blocks leaks before they happen

Bonus: A seeded test corpus that reports precision and recall, compared against an existing open-source scanner.

Security · Intermediate · 1–2 weeks

SSH Honeypot with Attack Dashboard

A fake SSH server on a cheap cloud VM that records the logins and commands real attackers try, shown on a live dashboard.

  • Python (asyncssh) or Go
  • Docker
  • PostgreSQL
  • Grafana
  • GeoLite2

Features

  1. Fake shell that imitates a Linux machine and logs every command
  2. Analytics on the most common passwords and commands
  3. World map of where attempts come from
  4. Strong isolation: its own VM, a container, and no outbound network
  5. Automatically generated weekly threat summary

Bonus: A write-up analyzing one week of real attack data, published alongside the repo.

Security · Advanced · 2 weeks

End-to-End Encrypted File Sharing

Share files by link, with encryption done in the browser so the server never sees file contents or keys.

  • TypeScript
  • Web Crypto API
  • Node.js or Go
  • S3-compatible storage

Features

  1. AES-GCM encryption in the browser, with the key kept only in the URL fragment
  2. Chunked streaming encryption for large files
  3. Links that expire or stop after a set number of downloads
  4. Optional password protection with proper key derivation
  5. A written threat model in the README

Bonus: A verification page that shows the stored ciphertext is unreadable without the link.