Skip to content

How to cold email for a data engineer job

Data engineer posts are long lists of tools, but the person hiring wants to know one thing: can you move data from where it is to where it’s needed, reliably, every day. Lead with one pipeline you built that runs on its own: the source, the steps, the destination, and who uses what comes out.

Updated

What data engineering posts ask for

The titles vary (data engineer, ETL developer, big data engineer, analytics engineer), and the posts ask for much the same things:

  • SQL, usually named first and at a deeper level than for analysts: window functions, reading a query plan, and modelling tables for reporting.
  • Python, and sometimes Scala or Java for Spark work.
  • A processing engine: Apache Spark (often through Databricks) for large data, sometimes Kafka for streams.
  • An orchestrator such as Airflow, or the scheduling built into a cloud’s own tools.
  • A cloud and its data services: AWS (S3, Glue, Redshift), Azure (Data Factory, Synapse) or Google Cloud (BigQuery). Snowflake appears often too.
  • Data modelling: star schemas, slowly changing dimensions and, in newer teams, dbt.
  • Data quality: tests, checks for missing or duplicate rows, and knowing when a pipeline has quietly failed.

Your proof as a fresher

As a fresher, the proof is a pipeline that keeps running after you stop watching it:

  • An end-to-end project on a public source that changes every day (an open government API, a weather or market feed, a city’s transport data): pulled in on a schedule, cleaned, loaded into a warehouse, with the code and a diagram on GitHub.
  • An internship where you built or fixed a pipeline someone depended on. Say who used the data.
  • A project with more data than one laptop’s memory holds, run on Spark or a cloud warehouse, and what you did about the size.
  • SQL models with tests, in dbt or plain SQL, if the post names dbt or analytics engineering.

A notebook that reads one CSV once isn’t a pipeline. Show the schedule, the retries, and what happens on the day the source file is missing.

Your proof if you are switching in

Coming from data analysis, backend development, database administration or an IT services company? You have probably moved data already. Lead with that:

  • From data analysis: the reports you automated, and the SQL or Python job that now builds the tables behind them.
  • From backend development: a service that writes or syncs data at scale, a migration you ran, or an event stream you set up.
  • From database administration: tuning, backups and replication, and any move to a cloud warehouse you took part in.
  • From an IT services company: an ETL module on a client project, the tool (Informatica, SSIS, Data Factory) and the volume it handled.

If the tools at work are older (on-premise ETL, stored procedures), say so plainly and add one project in the stack the post names.

Your proof in two sentences

Sentence one: what the pipeline moves, from where to where, and how often. Sentence two: the tools, the hardest part you solved, and who uses the result.

Fresher

I built a daily pipeline that pulls a state’s public air quality readings from its open API, cleans them in Python and loads them into BigQuery, scheduled with Airflow. When a station stops reporting, the run flags the gap instead of filling it, and a small dashboard on top shows each city’s worst hours.

Switching from analysis

As an analyst I rebuilt our weekly sales report as SQL models in dbt that run every night on Snowflake, replacing a spreadsheet that took a day to update. I added tests for duplicate and missing orders, which caught two broken exports from our billing system before anyone saw wrong numbers.

Both are made-up examples. The numbers in yours must be your own, and ones you can explain in an interview.

An example email

Rahul leads the data team at a fintech startup and posts for a data engineer, 1 to 3 years, Python, SQL, Spark and AWS, with an address for resumes. Kavya has two years as a backend developer at an IT services company. This is the whole email.

To
rahul@ledgerly.example
Subject
Data Engineer (Python, Spark, AWS): Kavya Iyer, 2 years in backend

Hi Rahul,

I saw your post for the Data Engineer role at Ledgerly. I have spent two years as a backend developer at an IT services company, and the part of my work I enjoy most, and now do most of, is moving data between systems.

On a banking client’s project I built the nightly job that moves transaction records from the core system into an AWS data lake, in Python with Spark, and added checks that stop the load when the record counts don’t match. Since it went live, the reporting team has stopped finding missing days in their numbers.

Payments data is the kind I already work with, which is why your post stood out. My resume is attached, and I’d be glad to walk you through how the job handles a night that fails.

Kavya Iyer
+91 98xxx xxxxx

github.com/kavyaiyer-example

A made-up example: Kavya, Rahul and Ledgerly are fictional. Every claim in the email comes from Kavya’s own resume.

What makes it work:

  • The tools the post names, Python, Spark and AWS, appear inside the proof, not as a list.
  • It names the failure the pipeline prevents (missing days), which is what a data lead worries about.
  • Backend experience is shown as data engineering work, which it is, instead of being apologised for.
  • The offer to explain a failed night invites the conversation a data lead wants to have.

The subject line

The role title as the post writes it, the two or three tools it names first, your name and your stage.

  • Data Engineer (Python, Spark, AWS): Kavya Iyer, 2 years in backend
  • Data Engineer Intern: Rohan Das, B.Tech 2027, Airflow and BigQuery
  • ETL Developer: Shreya Menon, 3 years in Informatica, now Spark

Avoid subjects like “Job application” or “Resume”. The person who posted may have several openings, and the role first tells them which one.

Mistakes to avoid

  • Every tool in the big data world: Hadoop, Hive, Spark, Kafka, Flink, Airflow, NiFi. Name what the post asks for and show it running.
  • A pipeline project with no schedule, no tests and no word on what happens when the source fails.
  • Calling an analysis notebook a data engineering project. Reviewers can tell the difference in one look.
  • Calling yourself a data scientist or an analyst for an engineering role. Use the post’s title.
  • A client’s table names, volumes or records in your portfolio. Describe the shape of the work, never its contents.
  • A certificate as your first line. It belongs on the resume; the email carries the pipeline.

And the ones that hurt in every role: a guessed address, a generic resume, and an email longer than a phone screen. More in how to email a recruiter about a LinkedIn hiring post.

Where data engineering posts appear

  • LinkedIn posts by data leads and engineering managers at fintech, e-commerce, SaaS and analytics companies.
  • Other titles for the same work: ETL developer, big data engineer, analytics engineer, data platform engineer.
  • Company job boards on Greenhouse, Lever and Ashby, under data or platform teams, and data consultancies’ careers pages.
  • If you are an analyst or a backend developer now, your own company’s data team.

A LinkedIn post search to start from (search Posts, Date posted Past 24 hours):

Data engineer posts for freshers

("data engineer" OR "ETL developer" OR "big data") ("send your" OR "share your") fresher

3 of 5 ORs, ANDs and NOTs

With a few years behind you, drop fresher and add the cloud you know: (AWS OR Azure) uses one more OR. Interns can search ("data engineer intern" OR "ETL intern") instead of the titles, without fresher. LinkedIn finds nothing at all once a search has more than five ORs, ANDs and NOTs: see how to find hiring posts on LinkedIn. If there is no reply in about a week, follow up once.

Guides for other roles