Portfolio
Project Ideas
Projects prove what your resume claims. Each one here is chosen to be job-relevant, interview-walkable, and actually buildable in 1–3 weeks.
URL Shortener API
Python, FastAPI, PostgreSQL, Redis
Demonstrates API design, database modeling, caching, and a system design problem interviewers actually ask about.
- ›POST /shorten → returns short code
- ›GET /:code → redirect
- ›Click analytics endpoint
- ›Rate limiting
- ›Redis cache for hot URLs
“Built a URL shortener with FastAPI and PostgreSQL. Implemented Redis caching that reduced database load by ~90% for hot URLs. Designed with a hash-based short code system that scales to billions of entries.”
Job Queue System
Python, FastAPI, Redis (or RabbitMQ), PostgreSQL
Demonstrates async processing, worker patterns, and real backend engineering — not just CRUD.
- ›Submit jobs via API
- ›Worker pool processes jobs async
- ›Job status tracking
- ›Retry on failure
- ›Dead letter queue for failed jobs
“Built an async job processing system with a FastAPI producer and Python worker pool. Implemented retry logic with exponential backoff and a dead letter queue for failed jobs.”
REST API with Auth
Node.js or Python, JWT auth, PostgreSQL
Every backend role expects you to understand auth patterns, middleware, and API design.
- ›User registration + login
- ›JWT access + refresh tokens
- ›Protected routes
- ›Role-based authorization
- ›Rate limiting per user
“Built a production-style REST API with JWT authentication, refresh token rotation, and role-based access control. Designed with layered middleware for auth, logging, and rate limiting.”
Personal Finance Tracker
Next.js, TypeScript, PostgreSQL or SQLite
Real data modeling, user state, CRUD, and charts — hits almost every junior SWE interview topic.
- ›Add/categorize transactions
- ›Monthly summary dashboard
- ›Category breakdown chart
- ›CSV import
- ›Budget targets with alerts
“Built a full-stack finance tracker with Next.js and PostgreSQL. Implemented CSV import with validation, real-time budget tracking, and a dashboard with category breakdowns.”
Dev Tools Dashboard
Next.js, TypeScript, external APIs
Shows API integration, data fetching patterns, and actually useful — easy to demo.
- ›GitHub stats integration
- ›Weather or news widget
- ›Uptime checker for URLs
- ›Notes with markdown
- ›Dark/light theme toggle
“Built a personal dev dashboard integrating GitHub API for contribution stats, uptime monitoring for personal projects, and a markdown notes system.”
Component Library
React, TypeScript, Storybook
Shows you understand composition, accessibility, prop design, and documentation.
- ›10+ reusable components
- ›Storybook docs for each
- ›TypeScript props with JSDoc
- ›Dark/light mode support
- ›Published to npm (bonus)
“Built a typed React component library with Storybook documentation. Focused on accessibility, composability, and consistent prop APIs across 10+ components.”
Real-time Crypto/Stock Tracker
React, TypeScript, WebSockets or polling
Demonstrates real-time data, state management, and UI performance with frequent updates.
- ›Live price updates via WebSocket
- ›Watchlist with local persistence
- ›Price change alerts
- ›Chart with historical data
- ›Search and filter
“Built a real-time price tracker using WebSocket connections for live updates. Optimized rendering with React.memo and virtualized lists to handle 100+ simultaneous price updates without jank.”
Data Pipeline + Dashboard
Python, Pandas, FastAPI, PostgreSQL, React
Combines data engineering and backend — strong signal for platform/data-adjacent roles.
- ›Ingest CSV or API data on schedule
- ›Clean and normalize records
- ›Store in PostgreSQL
- ›REST API to query aggregates
- ›Simple dashboard to visualize
“Built an end-to-end data pipeline that ingests raw CSV data, normalizes and validates it, stores in PostgreSQL, and exposes aggregated metrics via a REST API with a React dashboard.”
- ✓One deployed, working project beats five half-finished ones.
- ✓Every project needs a clean README: what it does, why you built it, how to run it.
- ✓Be ready to walk through the code live — don't list anything you can't explain.
- ✓Pick projects that match the role you're applying for — a React portfolio won't impress a backend team.
- ✓GitHub commit history matters — spread commits over time, not 'initial commit + final push'.