Skip to main content

Data Engineering &
Pipeline Development

We design the data platform, build the pipelines that feed it and keep every number trustworthy in production.

Data pipeline development services for teams whose dashboards, products or AI depend on data that arrives on time and adds up. We connect your sources, from SaaS APIs and databases to files, events and web data, model them in a warehouse or lakehouse, test every load and hand over a platform your team can run. When an older stack holds you back, we modernize it one workflow at a time, with the new pipeline running beside the old one until the numbers match.

Tran Tien Van, founder of Van Data Team

Tran Tien Van

Founder, data and AI engineer

150+

Projects

Delivered for clients worldwide

5+

Years

Building data and AI systems

5.0/5.0

Rating

Average client rating

71

Upwork Reviews

Client reviews on Upwork

Pipelines that fail loudly and re-run safelydbt models, data tests and lineage by defaultModernization in slices, never a big-bang rewrite

Last updated:

What do data engineering services deliver?

Six questions buyers ask before they hire a data engineering team, answered from the pipelines we run in production.

01 / 06

What does a data engineering engagement actually deliver?

A working data platform, not a slide deck. Depending on where you start, that means ingestion from every source you named, a warehouse or lakehouse modelled in layers, orchestration that schedules and retries each job, and the dashboards, APIs or AI features that read from it.

  • Ingestion: connectors for SaaS APIs, databases, files and webhooks, incremental wherever the source allows it.
  • Modelling: dbt layers from raw to staging to business-ready marts, with tests and documentation generated from the code.
  • Orchestration: Airflow, Dagster, Prefect or a cloud scheduler, with retries, alerts and backfills.
  • Handoff: code in your repository, infrastructure as code in your cloud accounts, runbooks and a recorded walkthrough.

Key takeaway: You should be able to name every table a dashboard depends on, and who is alerted when one is late.

02 / 06

ETL or ELT, batch or streaming: which do you need?

Most analytics work today loads raw data into a cloud warehouse first and transforms it there in SQL (ELT): the warehouse keeps the raw history, so any model can be rebuilt. ETL still wins when data must be parsed, cleaned or masked before it lands, such as personal data or awkward file formats.

Hourly or daily batches cover most reporting. Near real time, measured in minutes, suits operational feeds like the energy market pipeline on this page, which ingests a report every five minutes. Streaming with Kafka or Pub/Sub earns its running cost only when a decision has to happen within seconds.

Key takeaway: Choose latency by the decision it serves, not by the technology: every step closer to real time costs more to run and to operate.

03 / 06

How do you stop pipelines from breaking silently?

A pipeline fails silently when nothing checks what it delivered. We build three layers of defence into every job.

  • Safe re-runs: every load can be repeated without duplicating rows, through merge keys, partition overwrites or skip-if-exists checks, so a retry or a backfill is always safe.
  • Data tests: freshness, row counts, uniqueness, nulls and accepted values on every model, run with each load through dbt tests or Great Expectations.
  • Alerts and lineage: failures and late data alert the people who own them, and lineage shows which dashboards a broken table feeds.

Key takeaway: Knowing that a job ran is not enough. Check what it delivered.

04 / 06

Warehouse, lake or lakehouse?

A warehouse (BigQuery, Snowflake, Redshift) is the fastest route to trusted SQL analytics. A data lake on object storage (S3, Cloud Storage, Azure Blob) is the cheapest place to keep raw and semi-structured history. A lakehouse, Databricks or open table formats over a lake, joins the two when data science and BI share the same data.

Whatever the engine, we organise data in layers, raw, cleaned and business-ready, often called bronze, silver and gold, so a broken source never corrupts a finance number and history can always be re-processed.

Key takeaway: Pick the engine your team can operate and afford. The layering matters more than the brand.

05 / 06

Can you modernize a legacy platform without a rewrite?

Yes, and it is the only way we do it. Full rewrites stall because the business keeps changing while the new platform is built, and the old stack has to keep running for months anyway.

We pick the workflow that hurts most, such as a slow finance close or an untrusted dashboard, rebuild that slice end to end, run it beside the legacy job and cut over only when reconciliation passes. Then the next slice.

Key takeaway: A modernization succeeds when each slice retires something. The modernization section below shows how a slice runs.

06 / 06

How is it priced, and how long does it take?

Every pipeline is quoted at a fixed price after a free consultation, before any build starts. The price depends on the number of sources, the transformation logic and the latency you need; a data platform modernization is quoted one slice at a time.

Simple pipelines on existing infrastructure go live in 2 to 3 weeks, multi-source platforms in 4 to 6 weeks, and the first modernization slice in 6 to 10 weeks.

Key takeaway: Price and timeline are fixed after a short discovery, before any build starts.

How do we deliver it? Through the four stages below, led by the founder from the first call.

Book a consultation

Pipelines in production

Four of the hardest pipelines we build, step by step

Payments reconciled to the bank, retail stock across every store and channel, lead generation into research-first email, and healthcare data under HIPAA. Each diagram is drawn from delivered projects, named under it: where the data comes from, what happens at every step and where it lands. Pick a pipeline, pause it or step through it.

Google Cloud · event-driven · finance

Payments reconciled to the bank, on Google Cloud

Stripe events arrive out of order, retry and sometimes twice. This pipeline takes each one exactly once, keeps a double-entry ledger, and matches every charge to its payout, its bank line and its QuickBooks entry.

  1. A Cloud Run receiver checks each Stripe signature and drops repeats by their idempotency key; Pub/Sub keeps each account’s events in order and holds failures in a dead-letter topic instead of losing them.

    • Stripe
    • Webhook receiver
    • Pub/Sub
  2. Scheduled jobs pull Shopify orders, the bank’s statement files and the QuickBooks accounts, and backfill years of history through each API’s pagination without hitting its rate limits.

    • Shopify
    • Bank files
    • QuickBooks
    • Sync jobs
    • Cloud Scheduler
    • Secret Manager
  3. Every payload is archived as received and loaded into BigQuery untouched, so any number can be traced back to the event that produced it and any model can be rebuilt.

    • Cloud Storage
    • BigQuery raw
  4. dbt turns raw events into clean charges, refunds, fees and payouts in one currency-aware model; tests run on every load, and a stale or failed load raises an alert before anyone reads a wrong number.

    • dbt
    • Alerts
  5. Each movement of money is written twice, debit and credit, per currency, so the books balance by construction and a refund or a dispute never disappears into a net figure.

    • Ledger
  6. Every charge is matched to the payout that carried it and the payout to its bank line; what does not match lands in a Slack queue for finance with the evidence attached, instead of in a spreadsheet at month end.

    • Reconciliation
    • Exceptions
  7. Marts for MRR, churn, fees and refunds feed the finance dashboards, and a finance agent answers questions from the same marts, citing the rows it used.

    • Revenue marts
    • Looker Studio
    • Finance agent
  8. Daily summary journal entries post back to QuickBooks, so the accountant closes the month from reconciled numbers instead of re-keying them.

    • Journal entries

Drawn from delivered work: Shopify, QuickBooks and Stripe pipelines for an analytics firm, and Stripe billing in alice/ai, SeaSure and Graspr.

How we build your data platform

Four stages, each ending in something you can check: a written scope, an approved architecture, a pipeline running on your data, and a platform your team runs without us.

  1. Stage 01

    Discovery and Data Profiling

    Week 1

    We map every source, destination and deadline, then profile your real data before promising anything.

    • Source inventory: systems, volumes, update patterns and access for each one
    • Data profiling: nulls, duplicates, late records and schema drift found in the real data, not assumed
    • Written scope: what is included, the timeline, the risks and a fixed price

    Output: a scope document you could take to any vendor.

  2. Stage 02

    Architecture and Contracts

    Weeks 1 to 2

    One page of architecture and a decision log for every tool choice, signed off before any infrastructure exists.

    • Architecture diagram: sources, layers, orchestration and serving
    • Decision log: why this warehouse, orchestrator and ingestion tool, and what each one costs to run
    • Data contracts: the schema and freshness each consumer can rely on
  3. Stage 03

    Build in Slices

    Weeks 2 to 6

    Week one ships a pipeline that runs end to end in a development environment; each sprint then adds sources and models.

    • Weekly demos, with all code in your repository from the first commit
    • Infrastructure as code (Terraform) from day one
    • dbt tests and alerts written with the models, not after them

    Output: one pipeline running on your data by the end of week one.

  4. Stage 04

    Prove, Launch and Hand Over

    A full backfill reconciled against the sources, parallel runs wherever a legacy system exists, then cutover and handoff.

    • Backfill with row and total reconciliation against each source
    • Parallel runs for 5 to 10 business days before any cutover
    • Runbooks, lineage documentation and a recorded walkthrough
    • 30 days of support after launch

    Output: a validation report you sign off before launch.

Scripts and cron jobs vs a production data pipeline

Most teams start with scripts. They work until the first silent failure, the first schema change or the first engineer who leaves. This is the difference we build in.

Failure handling
Scripts and cron jobsFails silently; someone notices a stale dashboard
Production pipelineRetries, then alerts the owner with the failing step
Re-runs and backfills
Scripts and cron jobsA re-run duplicates rows or skips days
Production pipelineAny day can be re-run safely
Data quality
Scripts and cron jobsChecked by eye, if at all
Production pipelineTests on freshness, volume, keys and values with every load
Schema changes
Scripts and cron jobsBreak the job in the middle of the night
Production pipelineCaught by data contracts before they reach a report
Visibility
Scripts and cron jobsLogs on one server
Production pipelineRun history, lineage and freshness in one place
History
Scripts and cron jobsOverwritten on every run
Production pipelineRaw history kept, so any model can be rebuilt
Ownership
Scripts and cron jobsLives in one person’s head
Production pipelineCode review, documentation and runbooks in your repository
Cost control
Scripts and cron jobsFull re-pulls on every run
Production pipelineIncremental loads, partitioning and right-sized compute
Security
Scripts and cron jobsCredentials pasted into scripts
Production pipelineSecrets manager, least-privilege roles, encryption
Ready for AI
Scripts and cron jobsData scattered across tools
Production pipelineClean, documented tables that agents and models can query

Data platform modernization

Modernize the platform one workflow at a time

Data platform modernization services for legacy ETL, brittle schedulers and warehouses that cannot keep up. We never propose a big-bang rewrite: each slice is rebuilt, run in parallel and reconciled before anything is switched off.

Staged migration · parallel run

One workflow moves to the new platform, with the old path running until the numbers match

The same pattern runs every slice of a modernization: map it, build beside it, reconcile, cut over, retire.

  1. We trace one workflow end to end, such as the monthly finance close: every source, script, table and report it touches, and who relies on each one.

    • Source systems
    • Legacy job
    • Legacy tables
    • Reports
  2. The new pipeline is built next to the old one and reads the same sources, with tests, contracts and lineage from the first model.

    • New pipeline
    • New models
  3. Both paths run every day. Row counts, totals and keys are compared automatically, and every difference is explained before anything moves.

    • Reconciliation
  4. When reconciliation has passed for an agreed window, reports switch to the new models during business hours, with the old path still there as a fallback.

    • Reports
  5. Only then is the legacy job switched off. One workflow is modern, and the next slice starts from a smaller old stack.

Migration paths we handle

  • Cron jobs and Python scriptsAirflow, Dagster or Prefect
  • SSIS, Talend or Informaticadbt with a modern orchestrator
  • Airflow 1Airflow 2, with retries and backfill plans
  • On-premise SQL Server or MySQLBigQuery, Snowflake or Redshift
  • Spreadsheet and SFTP reportingA warehouse with scheduled reports
  • TableauPower BI, with a migration tool we built that validates the output

What a migration never breaks

  • Reports that finance, operations or the board rely on each week
  • Pipelines that feed customer-facing products or external SLAs
  • Compliance-bound data flows and their audit trails
  • Numbers already reported, which the new platform must reproduce
  • Access rules and data masking agreed with your security team
  • Cost ceilings on the new platform, checked before cutover

Cutover happens when the numbers match for an agreed window, never on a calendar date.

Book a consultation
Tran Tien Van, founder of Van Data Team

Warning signs

Signs your data platform is costing more than it should

If two or more of these sound familiar, the problem is usually the pipeline layer, not the people using the data.

  • 01Two dashboards show two different numbers for the same metric, and nobody knows which is right.
  • 02You find out a pipeline failed when someone asks why yesterday’s report is empty.
  • 03Adding one new data source takes weeks and a brave engineer.
  • 04Old cron scripts run critical reports and nobody dares to touch them.
  • 05The warehouse bill grows faster than the data or the team.
  • 06Your AI or analytics project is stuck waiting for clean data.

If you're seeing any of these, it's time to talk.

Book a consultation

Data engineering work

Pipelines we built and the numbers behind them

Every project here is a delivered engagement. Clients stay unnamed unless they are named elsewhere on this site, and every number comes from the project’s own files.

Ingestion interval of the energy market feed
5 min
Vendor sources joined in one BigQuery platform
81
For a 5-year backfill that took about 10 days
Hours

Energy markets300 intervals × 5 regions

NEM wholesale electricity: dispatch monitor

Dispatch intervals
300
8 to 11 Nov 2022
Average spot price
$81
per MWh, range −⁠$65 to $196
Negative-price intervals
24
8% of the window
Peak demand
8,354 MW
NSW1, 6.9× the smallest region

AnswerSA1, 12:00 to 16:00

Built for this portfolio from the delivered data
Energy market analytics teamClient project

Energy markets

Real-Time Electricity Market Pipeline on AWS

A scheduled AWS Lambda pipeline fetches each NEMWeb dispatch report every five minutes, archives it in S3, writes 19 dispatch metrics per region to DynamoDB and feeds a Plotly Dash app where analysts compare regions.

ingestion cadence
5 min
dispatch metrics across 5 market regions
19

AWS Lambda · CloudWatch · Amazon S3 · DynamoDB · Plotly Dash

Social intelligence

Twitter/X Follower Monitoring at Scale

Social intelligence clientClient project

30,000+

profiles tracked per daily run

ESG research

LinkedIn ESG Research Panel

Quantitative research teamClient project

1.4M

employee posts scored for E, S and G

Academic research

SSRN Research Papers and Authors Dataset

Academic research clientClient project

239,037

papers delivered, 43 fields each

More pipelines in production

Focused engagements across ingestion, warehousing and migration. The clients stay unnamed; the stack is what shipped.

  • Healthcare claims ETL on AWS

    Airflow and Glue land member, claims and provider files in four formats into Athena, with a column-level audit log for every load.

    Airflow · AWS Glue · Athena · S3

  • Multi-tenant Shopify data hub

    Four Cloud Run services and a Firestore tenant registry; a five-year backfill went from about ten days to hours.

    Cloud Run · BigQuery · Firestore · Pub/Sub

  • Sales KPIs from Slack

    Claude Haiku turns Slack messages into validated KPI rows in BigQuery, on jobs that bill only while they run.

    Cloud Run Jobs · BigQuery · Claude Haiku

  • Multi-channel ad ETL on Airflow

    Five ad platforms in one Dockerised Airflow stack, with Snowflake MERGE loads that never duplicate rows on retry.

    Airflow · Snowflake · Azure SQL · Docker

  • US equities market data lake

    More than 15 Polygon.io endpoints into Hive-partitioned S3, modelled with dbt on Athena and tested per indicator.

    S3 · dbt · Athena · Python

  • Loyalty KPI warehouse

    SFTP to Cloud Storage to BigQuery, with month, year and last-year comparisons published to Excel, Sheets and Streamlit.

    BigQuery · Cloud Run · Streamlit

  • Cross-platform marketing hub

    More than 30 Cloud Function connectors for ads, CRM, ecommerce and finance tools, billed per run so an idle source costs nothing.

    Cloud Functions · Cloud Storage · BigQuery

  • Tableau to Power BI migration tool

    Parses Tableau workbooks and extracts, converts them to Power BI definitions and validates the output against a schema.

    Python · Tableau REST API · Power BI

What clients say about our data engineering work

Teams bring us AI agents, web scraping, data platforms, reporting and cloud work. Their verified reviews speak to senior, founder-led delivery from prototype to production.

Verified on Upwork

5.0

71 client reviews · 69 of them five-star

  • 5 stars69
  • 4 stars2
  • 3 stars0
  • 2 stars0
  • 1 star0
See Upwork Reviews
CK

Chris K.

December 30, 2025

“Great backend developer, highly recommend!”

FT Platform Phase #2

Verified Upwork review

GB

Gilad B.

December 18, 2025

“Very knowledgeable and professional. Good communication”

Phase 0: Design a granular data schema and structure, and full tool flow

Verified Upwork review

JD

Julio D.

July 16, 2025

“Tran was great, very knowledgeable and quick responses”

Web scraper in R

Verified Upwork review

MM

Madison M.

March 31, 2025

“Very responsive and quick to get started! Produced excellent results. I will definitely reach out again in the future.”

Review Git Pull Requests

Verified Upwork review

DC

David C.

March 29, 2025

“Great platform to interface with developer.”

You will get AWS, GCP and Azure Data pipeline

Verified Upwork review

AJ

Alex J.

February 18, 2025

“Fast, responsive, professional. Really appreciated the thorough documentation too.”

You will get Data Scraping | Data Extraction | Web Scraper | Automation Tools

Verified Upwork review

TS

Tomer S.

December 12, 2024

“Van exceeded all expectations with exceptional professionalism and expertise. They delivered high-quality work ahead of schedule, communicated effectively throughout the project, and made the collaboration seamless and enjoyable. I highly recommend Van to anyone looking for a skilled and reliable freelancer.”

Create Web scraper for Facebook

Verified Upwork review

PT

Preska T.

October 21, 2024

“I recently had the pleasure of working with Tran, and I can't express enough how impressed I am with his work. From the very beginning, he demonstrated a deep understanding of our project requirements and brought a level of expertise that made a significant difference in the outcome. What truly sets Tran apart is his commitment to excellence.”

You will get Data Scraping | Data Extraction | Web Scraper | Automation Tools

Verified Upwork review

AW

Alice W.

May 26, 2024

“AMAZING. We are lucky that we found Van. He helped us with our database structure. He is very knowledgeable and very cooperative. We are still continuing to work with him further. I can only highly recommend.”

Admin Panel for Data Management

Verified Upwork review

NS

Nic S.

May 15, 2024

“Excellent work. I'd be very happy to work with Tran in the future.”

Web scraping: Project review and proposal

Verified Upwork review

PK

Paris K.

March 22, 2024

“Tran did a great job on a LAMP REST API deployment to Microsoft Azure. We'd be happy to work with this freelancer again.”

Seeking developers experienced with LAMP (Python) and REST APIs for UX Research Study / gstd-2024-1

Verified Upwork review

YK

Yalcin K.

March 18, 2024

“Van is a great data engineer, and I highly recommend it. He joined our project and helped build a custom data pipeline within weeks.”

Python Developer to Build a Shopify Integration

Verified Upwork review

The Van Data Team difference

Why teams trust us with their data platform

Five reasons clients come back to us for the next pipeline.

Tran Tien Van, founder of Van Data Team

Tran Tien Van

Founder, AI and software architect

Top Rated Plus on Upwork
The engineer who scopes your project is the one who builds it.
Projects delivered
150+
Upwork rating from 71 reviews
5.0
Countries served
15+
Years of development experience
5+
  1. 01

    One engineer from scope to production

    The person who profiles your data designs the architecture and writes the pipelines. Nothing gets lost between a sales team, an architect and a delivery bench.

  2. 02

    Built to be run by your team

    Code in your repository, infrastructure in your accounts, dbt docs, lineage and runbooks. Your engineers can operate the platform from the documentation alone.

  3. 03

    Production habits by default

    Safe re-runs, data tests, alerts and least-privilege access ship with the first pipeline, not as a later phase.

  4. 04

    Data and AI under one roof

    We also build the AI agents and BI that read the data, so tables are modelled for the questions they will actually have to answer.

  5. 05

    Honest scope, fixed price

    A fixed bid after discovery, weekly demos and no lock-in. When a managed tool beats a custom build for your case, we say so.

150+ Projects Delivered With VANDATATEAM

VanDataTeam has delivered 150+ projects for teams across 15+ countries, building lasting success through production grade AI Agent systems and data engineering expertise.

  • athenahealth
  • YouHeal
  • OBJX Intelligence
  • Zeno
  • Yōjin
  • Consequential Flowers
  • Clear Gene
  • Supply Bridge
  • Conversion Finder
  • Envoy
  • Lunada
  • Ahrvo
  • Ellipsis Earth
  • Longpoint
  • Intelligent World
  • Debit My Data
  • Graspr AI
  • SeaSure
  • alice/ai
  • Setmore
  • White Ribbon Alliance
  • HBC
  • Pareto Intelligence
  • Credit Club
  • Kejora Capital
  • iRASSHAi
  • Wajooba
  • Voodoo
  • Forskningslogen Friederich Münter
  • Flight IQ
  • Star Analytics

FROM DELIVERED PROJECTS

The data engineering stack we work with

141 technologies across 12 layers, every one of them used in delivered client work. We choose per project, for your data and your team.

Pick a layer, or let the orbit walk you through them.

Sources

15 tools

The systems the data starts in: commerce, finance, CRM, ads, operations and files.

  • Shopify
  • Stripe
  • QuickBooks
  • HubSpot
  • Salesforce
  • GA4
  • Google Ads
  • Meta Ads
  • Jira
  • Slack
  • Lightspeed
  • EHR systems
  • REST APIs
  • Webhooks
  • SFTP files

On the orbitShopify · Stripe · HubSpot · Salesforce

Data engineering FAQ

Tell us where your data hurts

Book a free 30-minute call with the founder. Bring your sources, your current stack and the three problems you most want solved, and leave with a written recommendation and a rough timeline. No deck, no pressure.

We use these details only to reply about your project. See our privacy policy.

Tran Tien Van, Founder of Van Data Team, ready to help

Keep exploring

Services teams often pair with this one, delivered by the same founder-led team.

See all 6 services