Data Engineer • Data Architect

Nafiul Hadi Saputra

Engineering Efficient Data Pipelines

Data Engineer whose pipelines run on schedule, recover on their own, and raise a flag when they can't. I built a daily ELT pipeline (PostgreSQL, dbt, Airflow) that unifies 4 operational areas into 1 analytical warehouse for a metalworking manufacturer. Every run has 2x automatic retries, 30-minute task timeouts, and Telegram failure alerts, and the pipeline was stress-tested with a synthetic dataset containing ~2.5% deliberately dirty records. Behind it are 5+ years in data operations and governance: 50 institutions and 2,000+ users consolidated into one verifiable source of truth, and 50% less processing time after automated validation across 30 units. I have also modeled usage data from 20 countries in dbt and BigQuery (served via FastAPI) and built an AI-graded homework platform for a ~120-student school client using Gemini.

Portrait of Nafiul Hadi Saputra
Nafiul Hadi Saputra
5+ Years of Experience
2,000+ Users Managed
75% Reduction in Reporting Time
15+ Tools & Languages
About Me

Hi, I'm Nafiul.

I spent the last five years in the messy middle of public-sector data: 50 institutions, 2,000+ users, and spreadsheets that never quite agreed with each other. Turning all of that into one source of truth people could actually trust is where I fell for data engineering.

Today I build the pipes behind the numbers. An AI-graded homework platform for a school of 120 students. An offline-first ledger for a fish-procurement business moving a ton of catch every week. And pipeline-lint, an open source tool that catches the mistakes AI-written pipelines make before they reach production.

My rule is simple: when a pipeline breaks at 2 a.m., it should either fix itself or tell someone. I treat data quality as a feature, not a cleanup job.

I'm looking for a Junior or Associate Data Engineer role, remote-friendly, working from UTC+7. If your team cares about data that holds up, let's talk.

Expertise

Technical Skills

Python, FastAPI & Redis

REST APIs, automation scripts, and stateless workers fed by a Redis job queue.

SQL, BigQuery & PostgreSQL

Complex queries, data warehousing, and idempotent upserts that stay correct on rerun.

Data Pipelines: dbt & Airflow

Transformation, orchestration, and reliable data modeling for scheduled pipelines.

PySpark & Databricks

Spark writes, Delta MERGE, and the rerun pitfalls my linter pipeline-lint checks for.

Cloud: GCP, AWS & Docker

BigQuery, Cloud Storage, and containerized services that run the same anywhere.

Terraform & GitHub Actions

Infrastructure as code, CI test runs, and automated releases to PyPI.

LLM Integration (Gemini)

AI grading bound to a strict JSON schema, with a dead letter queue for failed answers.

Flutter & Dart

Offline-first Android apps with local Hive storage, Excel export, and thermal receipts.

Projects

Featured Projects

Data architecture and software systems that I have designed and built.

SPASI — Student Task & Location Tracking Pipeline overview Watch overview · 1:13

SPASI — Student Academic Portal

An AI-integrated academic portal for students that automates grading and academic tracking. Built with FastAPI on an event-driven architecture.

FastAPIEvent-DrivenAI Grading
Fishery Supply Chain — offline-first bookkeeping app overview Watch overview · 0:54

Serverless Fisheries Dashboard

A fisheries supply-chain tracking application that displays net sales balance, inbound and outbound stock metrics, and activity history in real time.

ServerlessReal-timeSupply Chain
pipeline-lint overview video Watch overview · 1:11

pipeline-lint — Data Pipeline Linter

An open source linter for SQL, PySpark, Databricks and Airflow code. It catches non-idempotent writes, duplicate data on rerun, and other mistakes AI-generated pipelines make, and can fail CI before they reach production.

PythonOpen SourceCI/CDPyPI
Get in Touch

Let’s Connect

I am open to Junior/Associate Data Engineer opportunities. Feel free to reach out through any of the channels below.

nafiulhadisaputraa@gmail.com