The Resume & Applying
Your resume has one job: survive two brutal filters — a six-second human glance and a keyword-matching robot — long enough to earn a conversation. It is a marketing document, not an autobiography. This chapter shows you how to structure it for data engineering, write bullets that prove impact, feature your capstone when you have no on-the-job DE experience, and apply in a way that actually gets answered: referrals first, quality over volume.
What actually happens to your resume
Before you write a word, understand the gauntlet your resume runs. When you click "apply," it doesn't go straight to a hiring manager who reads it carefully over coffee. It hits two filters in sequence, and you have to pass both:
The first reader is software — an applicant tracking system (ATS). It parses your file into fields, scans for keywords from the job description, and either filters you out or ranks you for a human. The second reader is a busy recruiter who spends roughly six to eight seconds on the first pass, scanning for: the right title, the right skills, a few numbers that signal impact, and recency. If either filter trips, you're out — no matter how good you'd be at the job.
Your resume is not a record of everything you've done. It's a highlight reel aimed at one specific job, designed to pass a robot and then win six seconds of human attention. Once you internalize that, every decision below gets easier.
Resume structure for a data engineer
Keep it to one page. You're early-career or career-changing; a second page dilutes your strongest material and signals you don't know what matters. Use this order, and notice how it differs for a career-changer:
CONTACT Name · City · email · phone · LinkedIn URL · GitHub URL
(no full street address; no photo)
SUMMARY 2-3 lines. Who you are + what you do + what you're targeting.
"Career-changing data engineer with a production-grade ELT
platform (dbt, Airflow, Snowflake). Former [X] who now builds
reliable, tested data pipelines."
SKILLS The literal tools, grouped. THIS is where ATS keywords live.
Languages: SQL, Python
Transform/Orchestrate: dbt, Airflow, Dagster
Cloud/Warehouse: AWS, Snowflake, BigQuery
Infra: Docker, Git, Linux, Terraform
PROJECTS ← For a career-changer, put this HIGH (right after Skills).
Your capstone goes here. This is your proof you can do the job.
EXPERIENCE Your work history, with impact bullets. Even non-data jobs count
if you frame the transferable parts (data, automation, scale).
EDUCATION Degree(s), bootcamp/certs. One or two lines. Keep it last.The classic resume puts Experience right after the summary. But if your experience isn't in data yet, that buries your best evidence. As a career-changer, lead with Skills + Projects so the recruiter sees "this person can do DE work" in the first six seconds — then let Experience reinforce it. Once you have a data job under your belt, flip Experience back above Projects.
Why a dedicated Skills section matters so much: it's the densest, most scannable place for the exact tool names a recruiter and an ATS are hunting for. Don't make them infer "they probably know dbt" from a buried sentence — list it plainly. We'll come back to which keywords to include in the ATS and tailoring sections.
Impact-driven bullets
This is where most resumes are weakest and where you can stand out fastest. A weak bullet describes a task ("responsible for managing reports"). A strong bullet proves an outcome. Use this formula on every single bullet:
Accomplished [X] by doing [Y], measured by [Z]. In plain terms: what improved, how you did it, and a number that proves it. Start with a strong verb. Quantify everything — time saved, volume processed, cost cut, errors reduced, runtime shortened. If you don't have a precise number, a reasonable estimate ("~", "roughly") is far better than none.
Strong verbs to open with: built, automated, designed, reduced, migrated, optimized, scaled, shipped, eliminated, cut. Avoid limp openers like "responsible for," "helped with," "worked on." Here's the transformation in practice:
| Weak (task-based) | Strong (X by Y, measured by Z) |
|---|---|
| Responsible for cleaning data for the team's reports. | Automated a daily ingestion + cleaning pipeline in Python, eliminating ~6 hours/week of manual spreadsheet work for a 4-person team. |
| Worked on a database to make queries faster. | Cut dashboard query time from 40s to under 3s by adding partitioning and rewriting three core SQL models. |
| Helped build pipelines using dbt. | Built a 25-model dbt project with tests and documentation, catching data-quality issues before they reached business dashboards. |
| Used Airflow for scheduling jobs. | Orchestrated 12 daily ETL jobs in Airflow with retries and alerting, raising on-time completion from ~85% to 99%. |
For your capstone or personal projects you can still quantify: rows processed ("ingests ~2M rows/day"), model count, test coverage, runtime, or the manual effort it would replace. Hiring managers care that you think in terms of impact and measurement — that mindset is half the job.
Featuring your projects when you lack DE experience
Here is the career-changer's secret weapon. You may not have a "Data Engineer" job on your resume yet — but you have something most applicants don't: a real, working, documented platform from your capstone. Treat it exactly like a job. Give it a name, a one-line description of what it does, and impact bullets using the same formula.
For each project, answer three things: what it does, the stack, and what you personally handled. Here's the shape:
mini-GridDP — data platform for a GPU-rental marketplace [GitHub] [demo]
Python · SQL · dbt · Dagster · DuckDB · Redpanda · Docker · GitHub Actions
• Built an end-to-end platform ingesting rentals from Postgres and ~[N] GPU
telemetry events/day from a Redpanda stream into a DuckDB warehouse,
modelled bronze → silver → gold by a [N]-model dbt project with tests.
• Orchestrated nightly runs in Dagster with retries and failure alerts; added
data-quality tests that block bad data from reaching the Metabase dashboard.
• Containerized the full stack with Docker Compose and wired CI to build and
test every pull request, so the whole platform spins up from one command.A recruiter scanning your resume sees the exact tools the JD asks for, used in a realistic architecture, with quantified outcomes — indistinguishable at a glance from on-the-job experience. (Swap each [N] for the real figure from your build; an invented number is the first thing an interviewer will probe.) And because it's your project, you can talk about every decision in the interview, which is where it pays off. Two to three project entries (capstone + one or two smaller builds) can carry an entire resume for a first DE role.
Pair every project with a working GitHub link and, if you can, a short README or demo. The link turns a claim into evidence — and a clickable repo is exactly what a curious hiring manager wants on that six-second pass.
Beating the ATS
The applicant tracking system parses your file and matches it against the job description. Most early rejections aren't human decisions — they're parsing failures and missing keywords. You beat the ATS by being boring and explicit:
| Do | Avoid (parsers choke or miss it) |
|---|---|
| Mirror keywords from the JD verbatim — if it says "Airflow," write "Airflow," not just "orchestration." | Synonyms only, or assuming the parser infers tools you never named. |
| Single-column layout, plain text, top-to-bottom flow. | Multi-column layouts, text boxes, tables, sidebars — parsers scramble their reading order. |
| Standard section headings: Summary, Skills, Experience, Projects, Education. | Cute headings ("My Journey," "What I Bring") the parser can't map to fields. |
| A normal font (Arial, Calibri, Helvetica), real text, 10–12pt. | Graphics, icons, logos, photos, or skills as images/charts — invisible to the parser. |
| Submit a PDF exported from a text editor (selectable text). | Scanned/image PDFs, or fancy templates from design tools that flatten text. |
Paste the job description and your resume side by side. For every hard skill in the JD that you genuinely have, make sure the exact term appears somewhere on your resume — ideally in your Skills section. Missing keywords are the #1 reason qualified people get auto-filtered. Never lie or keyword-stuff invisibly (white text, hidden lists); modern systems and humans catch it and it ends the application.
Tailoring per role
A single generic resume is the slowest path to a job. You don't need a from-scratch rewrite each time — but you should tailor at least the summary and skills to each posting. Read the JD, note its top 5–8 hard skills and the phrases it repeats, and adjust:
- Summary: echo the role's framing. If they want someone "building reliable batch pipelines on AWS," your summary should say roughly that — in your own words, truthfully.
- Skills: reorder so the tools they emphasize appear first, and make sure every JD keyword you legitimately have is present.
- Bullets: if you have several, surface the ones most relevant to this role toward the top.
For most online applications, a cover letter is optional and rarely read — don't agonize over it. It earns its keep in two cases: when the application requires one, and when you're making a deliberate, targeted application (a referral, a small company, or a role you really want) where a tight 3–4 sentence note connecting your capstone to their problem can tip the balance. Quality and specificity over length; a generic letter adds nothing.
Application strategy
Where you apply matters more than how many times you apply. The single highest-yield channel, by a wide margin, is a referral — a current employee passing your resume to the recruiter. Referrals skip much of the ATS lottery and arrive with built-in credibility. Here's how channels stack up:
| Channel | Relative yield | How to use it |
|---|---|---|
| Referral (employee refers you) | Highest by far | Build relationships first; ask warmly and specifically. |
| Recruiter / hiring manager outreach | High | A short, specific LinkedIn message + your capstone link. |
| Smaller companies / direct careers page | Medium | Less ATS noise, faster human eyes than giant job boards. |
| Job boards (LinkedIn, Indeed) "cold apply" | Low | Volume play; still worth it, but never your only channel. |
How to get referrals (you have more reach than you think):
- List people you know — former colleagues, classmates, bootcamp peers, friends — and check who works at companies you'd like.
- Reconnect before you ask. A genuine catch-up beats a cold "can you refer me."
- Make the ask easy: name the specific role and link, share your capstone, and offer your tailored resume. "Would you be comfortable referring me for this role? Here's the link and my resume — no worries either way."
- Use LinkedIn (Chapter 02) to find second-degree connections at target companies, and engage authentically before reaching out.
Quality over volume: ten tailored applications with referral attempts beat a hundred generic submissions. Keep a steady weekly cadence (e.g., 5–10 quality applications a week) rather than a single exhausting binge. Log every application in your funnel sheet from the Start Here chapter, and follow up politely after 7–10 days of silence. Data engineers instrument their pipelines — instrument your job search the same way.
✓ Check yourself
Answer from memory before opening each one.
-
A posting asks for "Airflow" and "dbt". Your resume says you "built orchestrated transformation workflows" and lists your tools as icons in a sidebar of a two-column template. You have used both tools and are rejected within the hour. What most likely happened?
Show answer
No human decided anything: the ATS parsed the file, could not read the icons, may have scrambled the two columns, and found neither exact keyword — a synonym like "orchestrated workflows" does not match "Airflow". Use a single-column, real-text PDF with standard headings, and put the JD's exact terms for skills you genuinely have in the Skills section. See Beating the ATS.
-
Once the resume reaches a recruiter, roughly how long is the first pass, what are they scanning for, and what does that imply about where your strongest material goes?
Show answer
About six to eight seconds, scanning for the right title, the right skills, a few numbers that signal impact, and recency. So the resume is a one-page highlight reel aimed at one job, with the best evidence at the top — not a complete record of everything you have done. See What actually happens to your resume.
-
You spent six years as an operations analyst and have never held a data engineering title. What order do the sections go in, why, and when does that order change?
Show answer
Contact, Summary, Skills, then Projects — with the capstone — above Experience, and Education last. The classic order would bury your best evidence under six years of non-data work; leading with Skills + Projects puts "can do DE work" inside the six-second look, and Experience then reinforces it through its transferable parts. Once you have a data job, Experience goes back above Projects. See Resume structure.
-
Your capstone entry reads "Worked on a data pipeline project using dbt and an orchestrator." You have no employer metrics to cite. Rewrite it with the chapter's formula — what can you legitimately quantify?
Show answer
Accomplished X by doing Y, measured by Z, opening with a strong verb — for example: "Built an end-to-end ELT platform ingesting ~2M rows/day, transformed by a 30-model dbt project with tests that block bad data from reaching dashboards." A project can still be measured in rows processed, model count, test coverage, runtime, or the manual effort it replaces, and an honest "~" estimate beats no number. See Impact-driven bullets and Featuring your projects.
-
To be safe against the keyword filter, a friend suggests pasting the whole job description into your resume footer in white 1pt text. Separately, the JD lists Kafka, which you have never used. What do you do about each?
Show answer
Neither goes on the resume. Hidden keyword-stuffing is caught by modern systems and by humans, and it ends the application; listing a tool you do not have is a lie that the interview exposes. The keyword test covers only hard skills you genuinely have — make each of those appear verbatim, and leave the rest off. See the keyword test.
-
Two applications this week: a cold apply through a job board to a large company, and a role at a 40-person company where a former colleague has offered to refer you. How much tailoring and cover-letter effort does each deserve, and what do you do after ten days of silence?
Show answer
Both get at least a tailored summary and reordered skills. A cover letter on the cold apply is rarely read, so skip it unless it is required; the referred, small-company role is exactly where a tight 3–4 sentence note tying your capstone to their problem can tip the balance — and make the referral easy by sending the role link and tailored resume. Log both in the funnel sheet and follow up politely after 7–10 days. See Tailoring per role and Application strategy.
Exercise — Rewrite three weak bullets with the X-by-Y-measured-by-Z formula
Take these three weak bullets and rewrite each one: lead with a strong verb, state the outcome (X), how you did it (Y), and a measurable result (Z). Estimate numbers where you don't have exact ones.
1. Responsible for moving data from CSV files into a database.
2. Worked on reports to help the marketing team.
3. Used Python scripts to do some automation.There's no single right answer — yours should be true to your own work — but here's the shape strong rewrites take:
1. Built a Python loader that ingests 20+ daily CSV feeds into Postgres
with validation, replacing a manual import that took ~5 hours/week.
2. Automated a weekly marketing-metrics pipeline in SQL + dbt, cutting
report turnaround from 2 days to under 1 hour and removing 3 manual steps.
3. Automated 4 recurring data-prep tasks with Python scripts on a schedule,
eliminating ~8 hours/week of manual work and reducing input errors to near zero.Notice the pattern in each: a strong verb up front, a clear thing that got better, the tool/method, and a number. If your rewrites have all four, the skill has landed — now apply it to every bullet on your real resume.
Takeaway
- Your resume must pass two filters in order, an applicant tracking system that matches keywords and a recruiter who gives it about six seconds.
- Keep it to one page, and as a career-changer lead with Skills and Projects because they show data engineering work before your experience can.
- Write each bullet as what you accomplished, how you did it and a number that proves it, and use a real figure from your build because an invented one fails the first follow-up question.
- Treat the capstone like a job entry with a name, a stack, what you personally handled and a working GitHub link.
- Beat the parser by being plain: one column, standard headings, a text PDF, and the job description's own keywords copied verbatim.
- Tailor the summary and skills to each posting, and spend your effort on referrals, since ten tailored applications with referral attempts beat a hundred generic ones.
A strong resume earns the technical screen, and the next chapter drills the queries and coding problems that gate most data roles. → Interview Prep I — SQL & Coding