Analytics Engineer
Analytics engineer is the newest well-paid title in the data field and the least clearly explained. This page covers what the role actually owns, why companies invented it, what it pays, and the specific path most people take into it from data analysis.
Typical Pay (US)*
$120kmedian** AI-estimated from general U.S. labor-market patterns — not measured data from the U.S. Bureau of Labor Statistics or any official source. Real pay varies widely by location, employer, experience, and timing.
Outlook
Demand is rising for a structural reason: every company that adopted a cloud warehouse now has a trust problem in its metrics, and this is the role that fixes it. AI writes a great deal of the SQL — a model skeleton, a first-pass transformation, boilerplate tests, and documentation are all faster to generate than to type, and that genuinely raises output per person. What it cannot do is decide what "active customer" should mean for your business, arbitrate between finance and product when their definitions disagree, or know that the 2023 rows have a different grain because of a migration nobody documented. The work shifts from typing SQL toward owning definitions and reviewing generated code, which is a promotion in disguise: the modeling and semantics judgment becomes the whole job.
What does a Analytics Engineer do?
An analytics engineer builds the tables everyone else trusts. Between the raw data a data engineer lands in the warehouse and the dashboard an analyst opens, someone has to decide what "active subscriber" means, encode that definition once in a tested and version-controlled SQL model, and make sure it does not silently change when an upstream column is renamed. That is the job. In practice it means writing dbt models, defining a dimensional schema of fact and dimension tables, adding tests that fail the build when a primary key duplicates or a revenue total goes negative, maintaining a semantic layer so every tool reports the same number, and reviewing other people's SQL in pull requests.
The role exists because of a specific failure that most companies hit around 2019. Analysts had SQL access and business context but no engineering discipline — so the same metric got redefined in nine dashboards, nothing was tested, and nobody could tell which query was correct. Data engineers had the discipline but not the business context — they could build a reliable pipeline for a table they did not understand the meaning of. dbt arrived, made SQL transformations testable and version-controlled without requiring a software background, and the gap between the two groups became a job title. That origin explains almost everything about the role: it is business semantics executed with software practice.
The boundaries against the roles it gets confused with are worth stating plainly. A data engineer owns ingestion, orchestration, streaming, storage layout, and infrastructure — everything up to the raw tables. An analytics engineer starts at those raw tables and produces the modeled layer. A data analyst consumes that layer to answer business questions and rarely touches the models. A data scientist does statistical inference and experimentation on top. A business analyst works on process and requirements rather than the data stack at all. If a metric is wrong, it is usually an analytics engineering problem; if the metric is missing entirely, it is usually a data engineering one.
O*NET 28.3 has no occupation for this title — the taxonomy predates it — so the nearest anchor is 15-1243, Database Architects, with an estimated median near $135,980. The practical consequence is that this role is badly covered by the usual career resources despite having real hiring demand, and salaries are often negotiated against stale data-analyst benchmarks. It suits analysts who got tired of not trusting their own numbers and enjoy the craft of a clean model more than the meeting where the chart is presented. It does not suit people who want to build infrastructure, or who dislike SQL — you will write an enormous amount of it.
A day in the life
- Open a pull request review on a colleague's dbt model and flag that the fact table's grain is one row per order line, not per order
- Trace a Slack complaint that revenue is off by 3% back to a currency-conversion join that silently dropped refunds
- Refactor a 400-line staging model into three layers so the business logic stops being buried in a subquery
- Add dbt tests — uniqueness, not-null, accepted values, and a relationship test — to a model that had none
- Sit with finance for 40 minutes to settle what counts as churn, then encode exactly that definition once in the semantic layer
- Fix a broken CI run where a schema change upstream failed the build, and add a source freshness check so it fails earlier next time
- Write documentation and column descriptions so the analyst asking about this table next month does not need you
How to become a Analytics Engineer
- 1
Reach analyst-level SQL, then keep going
~3 monthsWindow functions, CTEs, incremental logic, and a real grasp of table grain and fan-out. Analytics engineers write more SQL than anyone else in the company, so depth compounds directly.
- 2
Learn dbt properly, not superficially
~2 monthsSources, staging and mart layers, refs, tests, snapshots, macros, incremental models, and documentation. dbt is the center of gravity for this role and named explicitly in most job listings.
- 3
Learn dimensional modeling
~2 monthsFacts, dimensions, slowly changing dimensions, star schemas, and grain discipline. Kimball's ideas are decades old and still the vocabulary every senior analytics engineer thinks in.
- 4
Adopt software engineering practice around your SQL
~2 monthsGit branching, pull requests, code review, CI that runs your tests, and environment separation between development and production. This discipline is the actual difference from analyst work.
- 5
Build a public dbt project end to end
~2 monthsIngest a public dataset into BigQuery or Snowflake, model it in layered dbt with tests and docs, wire up CI in GitHub Actions, and publish the repository. This is the portfolio that works.
- 6
Convert from a data-analyst seat
~9 monthsThis is the highest-probability entry path by a wide margin. Take a data-analyst job, volunteer to own the dbt models nobody maintains, and the title follows within a year at most companies.
Skills that matter
Learn the actual skills
Mochivia's structured roadmap walks you from fundamentals to job-ready — 15 minutes a day.
See the Roadmap