Back to blog
CV & Applications7 min read

Portfolios That Actually Get You Hired: Stop Building To-Do Lists

Most graduate software portfolios look identical. Here's how to build projects that UK hiring managers actually notice - the tech stacks, the documentation, and the GitHub profile structure that stands out.

Why Your GitHub Portfolio Is Probably Hurting You

The vast majority of CS graduate GitHub profiles look like this: a todo app in React, a weather app using a public API, maybe a CRUD project from a tutorial, and a half-finished final year project with a single "initial commit." This is not a portfolio - it is a graveyard of tutorials, and UK hiring managers have seen thousands of them.

The graduates who stand out do one thing differently: they build things with a purpose, document them like professionals, and make it unmistakably clear what they personally contributed. This guide shows you exactly how to do that.

For context on what UK tech employers look for in CVs and where your GitHub fits in, see our graduate CV template and examples guide.

What Hiring Managers Actually Look for on GitHub

When a UK tech hiring manager opens your GitHub profile, they spend approximately 2 minutes. In that time, they're looking for four things:

  1. Commit history that looks like real development. A project with 1 commit ("initial commit - add all files") is not credible. A project with 40-80 commits showing iterative development, feature branches, and meaningful commit messages looks like someone who actually builds software.
  2. A README that explains what the project does, why it exists, and how to run it. If there's no README or it's a single line, they move on. The README is your first impression.
  3. Tests. A test suite - even a basic one - signals that you understand how professional software is built. Most graduate projects have none.
  4. Tech choices that make sense. Using Next.js for a simple CRUD app when Express would do, or writing a data pipeline in Java when Python is the obvious choice, signals poor judgment. Use appropriate tools for appropriate problems.

The Projects That Actually Differentiate You

The bar for a standout project is not complexity - it's realness. Here's what makes a project real:

  • It solves an actual problem someone has (including you)
  • Real users interact with it (even a small number)
  • It's deployed and publicly accessible
  • It handles edge cases and errors gracefully
  • The code reflects how you'd write it at a job, not how you'd write it to finish an assignment

Project Type 1 - Full-Stack Web Application

What it demonstrates: Frontend, backend, database, authentication, deployment - the full production stack.

Strong example: A price tracker that monitors specific products on UK e-commerce sites, stores historical prices, sends email alerts when prices drop, and has a user dashboard. Tech stack: Next.js + TypeScript, PostgreSQL, Prisma, Resend for email, deployed on Vercel/Railway.

Why it's better than a todo app: It has a real use case, handles background jobs (scheduled scraping), manages user accounts, and has a meaningful API. These are production engineering problems, not tutorial problems.

Project Type 2 - Data Pipeline or ML System

What it demonstrates: Data engineering, Python proficiency, data processing at scale, working with real-world messy data.

Strong example: A scraper that collects and analyses UK property listings data, identifies pricing anomalies, and outputs a weekly report. Tech stack: Python, Pandas, PostgreSQL, Apache Airflow for scheduling, a simple Streamlit dashboard for visualisation.

Why it works: It uses real data, has a recurring pipeline component, and produces something genuinely useful. It's a data engineering project, not a Jupyter notebook with a linear regression on the Iris dataset.

Project Type 3 - API or Developer Tool

What it demonstrates: Backend engineering, API design, documentation, thinking about developer experience.

Strong example: A REST API that aggregates UK public transport delay data and exposes it in a clean, well-documented format. Published on npm or PyPI if it's a library. Fully documented with OpenAPI/Swagger spec.

Project Type 4 - System Design Implementation

What it demonstrates: Understanding of distributed systems concepts, ability to implement non-trivial architecture.

Strong example: An implementation of a rate limiter, a distributed job queue, or a simplified version of a well-known system (key-value store, message broker). Document your design decisions, trade-offs considered, and benchmarks.

The README That Gets You Noticed

Every pinned project should have a README that includes:

  • One paragraph explaining what it is and why you built it - not "this is a project for X course"
  • A screenshot or GIF of it working - visual evidence that it's real
  • Tech stack listed clearly - interviewers and ATS systems scan for this
  • How to run it locally - shows you think about other developers, not just yourself
  • Architecture overview - even a paragraph. "The backend is a FastAPI app deployed on Railway. The scraping jobs are scheduled with APScheduler. User data is stored in PostgreSQL, accessed via SQLAlchemy."
  • What you'd improve with more time - demonstrates technical maturity and honest self-assessment

GitHub Profile Structure

Your GitHub profile itself is a document. Set up:

  • Profile README (a repo named after your username with a README.md) - a 3-5 line bio, your primary tech stack, and a link to your portfolio or LinkedIn
  • Pinned repositories - pin your 4-6 best projects. Unpin tutorials, coursework, and empty repos.
  • Contribution graph - consistent contributions look better than sporadic bursts. Commit regularly, even if it's documentation improvements or refactoring.
  • No private repos cluttering the public view - if a project isn't ready to be shown, keep it private

What Tech Stacks Are Trending in UK Graduate Roles

The most in-demand tech skills in UK graduate tech listings right now (based on GradSignal's job board data):

  • Frontend: React/Next.js, TypeScript
  • Backend: Python (FastAPI, Django), Node.js, Java (Spring Boot)
  • Data: Python (Pandas, dbt), SQL, Spark
  • Infrastructure: AWS, Docker, Kubernetes, Terraform
  • Databases: PostgreSQL, Redis, MongoDB

Build projects that use the stack relevant to the roles you're targeting. If you're aiming for data engineering roles, a full-stack web app is less relevant than a data pipeline. If you're targeting SWE roles at fintechs, a well-built API-driven application is more relevant than an ML notebook.

Browse current UK graduate tech job listings to see which specific technologies appear most frequently in roles you're targeting, then build your portfolio stack accordingly.

Find your next graduate tech role

GradSignal lists UK graduate tech jobs alongside company-specific interview playbooks - so you can apply and prepare in one place.