All guides
The Software Engineer's Guide to Working in GermanyPart 2 of 3
software-engineeringgerman-cvlebenslauf

The developer's German CV: stacks, GitHub, and titles that actually land

How software engineers should adapt a résumé to the German Lebenslauf — where to put your tech stack, whether GitHub and side projects belong, how to handle job titles that don't map, and getting past ATS keyword filters.

Part one mapped where the software jobs are. This part is about the document that gets you in the door: the German CV, from a developer's angle. The general format rules are covered in our German Lebenslauf guide — here we focus on what's specific to software engineers.

Put your stack where it can be found

A German Lebenslauf is tabular and factual, and for a developer the skills section carries real weight — both for the human reviewer skimming you in a few seconds and for any applicant-tracking system (ATS) that ranks applications before that. Make it easy to parse:

  • Group by category — languages, frameworks, infrastructure/cloud, databases, tools — rather than one long comma soup.
  • Name technologies precisely. "Kubernetes," "PostgreSQL," "Terraform," "React" — the exact tokens a recruiter or filter searches for. Vague phrasing ("cloud technologies") matches nothing.
  • Be honest about depth. German engineering culture values precision; padding your stack with things you touched once is the fastest way to get caught in the Fachgespräch (the technical interview, covered in part three).

GitHub and side projects: yes, if they're real

Unlike the more formal end of the German market, software teams generally welcome a GitHub or portfolio link — it's evidence. Include it if the work is genuinely yours and reasonably presentable. A dormant profile with one forked repo adds nothing; a couple of real projects with clear READMEs can carry a junior or career-changer profile a long way. For projects, state what you built, the stack, and your specific role — the same restraint the rest of the Lebenslauf rewards.

The details international developers get wrong

A German Lebenslauf carries a few things a US/UK résumé doesn't — and for a visa candidate, some of them work in your favour:

  • The photo. A Bewerbungsfoto (professional headshot, top-right) is legally optional and increasingly dropped — and tech is where dropping it is most accepted, especially at Berlin startups, big tech, and English-first employers, some of whom prefer you leave it off. At traditional and Mittelstand firms it's still commonly expected. When in doubt, match the employer. (More in our guide to the photo, birth date and personal details on a German CV.)
  • State your work authorization. This is the single highest-value line an international can add. Applying from abroad: "EU citizen," "EU Blue Card eligible," or "requires visa sponsorship." Already in Germany: say so plainly — "EU Blue Card holder," "permanent residence (Niederlassungserlaubnis)," or "authorized to work in Germany, no sponsorship needed" — because it removes the single biggest friction a recruiter worries about. Either way it answers the first question a German recruiter has and saves you dead-end applications.
  • A languages line. "English (C1), German (A2, learning)" is a standard Lebenslauf element and a real signal — day-one productivity for an English-first team, and an honest filter for a German-speaking one.
  • Dated, continuous history. German reviewers expect a lückenlos (gap-free) timeline with month/year dates; account for any gaps briefly rather than leaving them unexplained.

Titles that don't map — the quiet filter

Software titles are wildly inconsistent across countries and companies. "Software Engineer II," "Member of Technical Staff," a country-specific grade — these don't always land with a German recruiter or an automated match. Two fixes:

  • Describe the function in plain terms alongside your title, so both a human and a system can place you ("Backend Engineer — designed and ran the payments service").
  • Don't inflate. "Senior" and "Lead" carry specific expectations here; claiming one you can't defend backfires in the interview.

Helping the skim — human and machine

Two things read your CV first: a busy human giving it a ~10-second skim, and, at larger employers, an ATS (Personio, Softgarden and SuccessFactors are common here) that ranks applications. Worth being clear about what an ATS does and doesn't do: contrary to a popular myth, it rarely auto-rejects you for a missing keyword — a human still makes the call, and a lot of Mittelstand hiring skips the ATS entirely and takes a PDF by email. What it does is surface and rank, so the winning move is the same either way: a scannable, precisely-worded skills block that a human parses in seconds and a machine ranks highly. Where exact-string matching genuinely fails is the reverse problem — the same experience described in different words — which is what we wrote about in why keyword search misses good candidates.

This is exactly the gap our matching closes from the candidate's side: it reads the meaning of your experience rather than the exact tokens, so roles surface even when the wording doesn't line up. You can match your CV against live German roles to see it work on your own profile — no account needed to try.

Beyond the CV: the rest of the application

German employers — the Mittelstand especially — expect a complete application, not a bare one-page résumé:

  • Send a full set (Bewerbungsunterlagen), often as one PDF — cover letter, Lebenslauf, and scans of your degree and reference letters (Zeugnisse). A lone résumé reads as low-effort. (Our Application Kit assembles the bundle for you.)
  • The Anschreiben (cover letter) still gets read here — unlike the fading US/UK version — and a short, specifically-tailored one matters, especially at Mittelstand firms. See our guide to the German cover letter.
  • References and the Arbeitszeugnis. Applying from abroad or into your first German role, you're not expected to have a German Arbeitszeugnis — bring English reference letters or named referees instead. If you've already worked in Germany, include your Arbeitszeugnisse — German reviewers read their coded wording closely, and their absence gets noticed. Either way, always collect your Arbeitszeugnis when you leave a German employer; the next one will expect it. More in Zeugnisse and attachments.
  • Optimise LinkedIn; don't sweat XING. For tech, sourcing happens on LinkedIn (English is fine) — set your location to Germany, flag "open to relocation," and stay open to recruiters. XING has receded to non-tech and traditional DACH hiring, so a bare profile there is plenty.

Next in this series

You've found the roles and shaped the CV. Part three is the one most guides skip: the software-engineer interview in Germany — the Fachgespräch, system design, take-home tasks, and the etiquette that quietly counts.

Written by The kandidate.ai team, with AI assistance — every figure checked by hand. Last reviewed 20 July 2026.

See which German roles actually fit you

Match your CV against live engineering, tech and renewable-energy roles across Germany — with visa, Blue Card and language signals on every result. No account needed to try it.

Match my CV