Skip to main content
Python Careers2026-08-06 Β· 12 min read

Building a Python Portfolio That Actually Gets Berlin & Amsterdam Interviews (2026)

A portfolio of "learned Python from a course" projects gets rejected on sight by hiring managers at Delivery Hero, Booking.com, Adyen, N26, TIER, Personio, and every YC/Sequoia-backed EU SaaS startup. This is what actually works instead.

The reference audience: junior Python roles at Berlin, Amsterdam, Munich, Paris, Barcelona companies where English is the working language and the stack is FastAPI / Django / data pipelines. Salaries: €45-65k for junior, €70-95k for mid, €100-140k for senior.

The 3-project shape that opens interviews

Hiring managers open portfolios that show you can handle an actual production shape, not that you can complete a course. The 3 projects below cover the three axes they check for:

Project 1: An API with auth, database, tests, and a deployment

Not a to-do app. Something with a real domain. Example: "BookSwap" β€” users list books they've read, request swaps, mark books as sent. Or "MeetupCarpool" β€” coordinate driving to conferences.

Stack that reads modern:

  • FastAPI (Django is fine but reads dated for a junior)
  • Pydantic v2 for request/response validation
  • PostgreSQL via SQLAlchemy 2.0 (or Postgres via Supabase for lower-friction hosting)
  • JWT auth (users can register, log in, log out)
  • pytest with real DB fixtures (not mocks)
  • Deployed on Fly.io / Railway / Render (Vercel is fine for Next.js, not Python β€” hiring managers notice)
  • README with: 1 architecture diagram, screenshot, live URL, tech stack, tradeoffs section explaining ONE decision

The tradeoffs section is the piece that separates "did the course" from "thinks about engineering". Example: "I chose Fly.io over Railway because their volume mounts are cheaper for the DB. Downside: cold-start latency is 2s vs Railway's ~500ms."

Project 2: A data pipeline

Real data, real transformation, real output. Example: scrape your city's job board β†’ clean into structured rows β†’ save to Postgres β†’ generate weekly HTML report β†’ email it to yourself. Or: pull GitHub trending Python repos β†’ dedupe β†’ summarize with an LLM β†’ publish to a static site.

Stack:

  • requests or httpx for HTTP
  • beautifulsoup4 or playwright for HTML parsing (playwright if JS-rendered)
  • pandas or polars for transformation
  • APScheduler / GitHub Actions cron for scheduling
  • SQLite or Postgres for storage
  • ruff format, ruff check, mypy for cleanliness

Show you handle failures: a section in the README that says "here's what happens when the source site changes HTML β€” the pipeline logs an error, alerts on Slack, and skips the row instead of crashing the whole run."

Project 3: Something LLM-integrated

This is the 2024-2026 differentiator. Anthropic + OpenAI SDKs are ubiquitous; showing you can integrate them cleanly is a strong signal for any modern Python team.

Examples:

  • A CLI tool that takes a Python file and returns AI-generated docstrings for every function.
  • A Slack bot that summarizes the day's PR reviews.
  • A RAG (retrieval-augmented generation) chatbot that answers questions from your own notes.

Stack:

  • Direct Anthropic or OpenAI SDK (NOT LangChain β€” hiring managers see LangChain-only projects as "didn't understand the underlying API")
  • Vector store: Chroma (embedded) or pgvector (real database)
  • Cost + latency section in README ("costs $0.02 per query, avg 800ms")

The 5 projects that get rejected on sight

1. A to-do list. Standard bootcamp completion project. Signals "did the course, didn't build anything real."

2. A calculator or unit converter. No domain, no reason to exist.

3. A landing-page clone (Netflix, Airbnb). Frontend clone with a Python backend doing nothing meaningful.

4. A quiz app. Multiple-choice questions from a hard-coded list. Zero real Python.

5. A tutorial project you didn't customize. If your README matches the tutorial's README word-for-word, the reviewer knows.

If any of these are in your portfolio, delete them.

What EU hiring managers actually check

Interviewed 8 tech recruiters at Berlin / Amsterdam companies across 2025-2026. Their pattern:

1. Live URL. If the project isn't deployed, they don't open the GitHub. Localhost screenshots do not count.

2. Commit history depth. 5 commits total (dump-and-run) = suspicious. 50+ commits over 4-8 weeks = you actually built it.

3. README quality. If they can't understand what your project does in 30 seconds, they close the tab. One-sentence pitch β†’ screenshot β†’ tech stack β†’ tradeoffs β†’ live URL β†’ GitHub link. That order.

4. Any tests at all. tests/ folder with 5+ real assertions puts you ahead of 80% of junior candidates.

5. Realistic Python β€” no over-engineering (no Redis + Kafka + microservices for a 3-endpoint API). Simple architecture, well executed.

Timeline: 6-10 weeks realistically

  • Weeks 1-4: Project 1 (API + auth + DB + deploy)
  • Weeks 5-7: Project 2 (data pipeline)
  • Weeks 8-10: Project 3 (LLM integration)

Full-time this compresses to 3-4 weeks. Evenings-only stretches to 10-12 weeks. Both are fine β€” hiring managers don't ask timeline.

Where CodeMentor fits

Our FastAPI Production track walks you through Project 1's shape lesson-by-lesson β€” same JWT + Pydantic v2 + SQLAlchemy 2.0 stack Berlin startups use. The AI Engineering track covers Project 3's Anthropic / OpenAI patterns with real code you can pull into your portfolio.

FAQ

Do I need all 3 projects to interview?

No β€” 1 solid project beats 3 half-built ones. Ship Project 1 first, then decide if you have time for the others. But: hiring managers who see only ONE project ask "what else have you built?", so having 2-3 answers that question up-front.

Should I use Django or FastAPI?

FastAPI for anything new. Django is fine on your CV if you already know it or the specific role is Django. Berlin/Amsterdam startups mostly hire on FastAPI.

Does my portfolio need to be in German / Dutch / French?

No β€” English is the working language at all these companies. GitHub in English. LinkedIn in both English and your local language.

How important is a personal domain (mycoolname.dev)?

Nice-to-have, not required. hiring managers care about the projects; the domain is decoration. If you have $10/year, get one. If not, GitHub Pages / Vercel default subdomains are fine.

Should I add my portfolio to a Bootcamp resume?

If you did a bootcamp AND built these 3 projects on your own: put the projects FIRST, bootcamp as "supplemental". Bootcamp-alone portfolios are the ones getting rejected β€” real projects on top of bootcamp are fine.

Start with FastAPI Production if you want a proven Project-1 shape end-to-end. Or the Senior track if you're an experienced dev pivoting from another language.

Ready to try it?

15 lessons free after a free signup β€” no card. Sample the platform, then decide.

Start free β†’

Or unlock every lesson

Pro β€” $12/mo, unlimited AI, cancel any time. Refund within 14 days worldwide.

See Pro plans β†’

Get one Python lesson + one career idea every Friday

No spam, no "buy our course now". Three bullets, every Friday. Unsubscribe with one click.