Computer Science Portfolio Projects
Strengthen your computer science portfolio with projects that demonstrate problem solving, systems thinking, and software fundamentals. Follow each roadmap and document the decisions behind your implementation.
Career areas
- Software Engineer
- Systems Engineer
- Research Engineer
Browse Computer Science projects
- Production-Ready RAG Pipeline with Source Attribution
A RAG system with a citation engine that highlights exact source text, a faithfulness evaluator, and hybrid search.
Level: intermediate · Tools: Python, LangChain, ChromaDB, Ragas
- Distributed Edge IoT Monitoring System
A system that collects simulated IoT sensor data, processes it at the edge via Docker, and sends only critical alerts to a dashboard.
Level: intermediate · Tools: Python, Docker, MQTT, InfluxDB
- Autonomous AI Agent for Software Testing
An agent that reads a Python codebase, generates pytest tests, runs them, analyzes failures, and proposes patches — all from a CI pipeline.
Level: advanced · Tools: Python, Gemini/Claude API, pytest, GitHub Actions
- Build an AI Agent From Scratch in Python
A from-scratch agent that pairs an LLM with custom tools — no LangChain, no CrewAI, just pure Python so you understand exactly how agents work under the hood.
Level: beginner · Tools: Python, OpenAI API, LangChain (optional), JSON tool schemas
- Key-Value Store from Scratch with a Write-Ahead Log
A persistent key-value database written from nothing — an in-memory index, a write-ahead log so data survives a crash, and a compaction step that keeps the file from growing forever. The foundations every real database is built on.
Level: beginner · Tools: Python or Go, Write-Ahead Log, Binary File Formats, pytest
- Compile a Tiny Language to WebAssembly
A compiler for a small expression language — lexer, parser, type checker, and a code generator that emits real WebAssembly binaries that run in the browser and in Node. You will understand what happens between source code and the machine.
Level: intermediate · Tools: TypeScript or Rust, Hand-written Lexer and Parser, WebAssembly Binary Format, WABT Tools
- Raft Consensus Key-Value Cluster with Chaos Tests
A replicated key-value store where three to five nodes agree on every write using the Raft consensus algorithm — leader election, log replication, and safety under partitions — with a chaos suite that kills nodes and splits the network to prove it never loses a committed write.
Level: advanced · Tools: Go, gRPC, Raft (leader election + log replication), Docker Compose