model_01Real-time clickstream pipeline
Exactly-once event ingestion from web and mobile into an Iceberg lakehouse, queryable in Trino within seconds.
Kafka→Flink→Iceberg→Trino
2B events/day · p95 < 5s
TABLE portfolio.saptrishi
I design and run reliable data platforms — streaming pipelines, lakehouses and the models analysts actually trust.
bio TEXT · focus TEXT[]I'm a data engineer who likes boring infrastructure and exciting outcomes. For the last few years I've been turning messy event streams and legacy cron jobs into well-tested, observable pipelines.
I care about data contracts, cost-aware warehouse design, and making on-call quiet. Outside work I tinker with DuckDB side projects and over-engineer my home weather station.
company VARCHAR · role VARCHAR · period DATERANGE2023 — PresentLead engineer on the real-time data platform serving pricing, ops and ML teams.
2021 — 2023Modernised batch ETL and built the first CDC pipelines for the analytics org.
2019 — 2021First data hire — stood up the warehouse and self-serve reporting.
name VARCHAR · lineage ARRAY · impact METRICmodel_01Exactly-once event ingestion from web and mobile into an Iceberg lakehouse, queryable in Trino within seconds.
Kafka→Flink→Iceberg→Trino
2B events/day · p95 < 5s
model_02Moved a creaking on-prem warehouse to a medallion architecture on Delta Lake with zero downtime for dashboards.
Databricks→Delta Lake→Spark→Terraform
-40% cost · 3× faster queries
model_03Schema-registry checks in CI, freshness and volume monitors, and Slack alerts that route to the owning team.
Great Expectations→dbt→GitHub Actions
-70% data incidents
model_04Open-source demo: an orchestrated weather ingestion pipeline with DuckDB, dbt and a static BI site.
Dagster→DuckDB→dbt→Python
Runs end-to-end for $0
Source ↗category VARCHAR · tools ARRAY<STRING>| languages | PythonSQLBash |
|---|---|
| processing | SparkFlinkdbtPolars |
| streaming | KafkaDebeziumKinesis |
| orchestration | AirflowDagsterPrefect |
| storage | SnowflakeBigQueryDatabricksIcebergPostgres |
| platform | AWSTerraformDockerKubernetesGitHub Actions |
| azure | Data FactorySynapse AnalyticsMicrosoft FabricADLS Gen2Event HubsAzure FunctionsCosmos DB |
| azure devops | Azure ReposAzure Pipelines (YAML)Azure BoardsAzure ArtifactsAzure Test PlansBicepARM templatesKey VaultAzure MonitorApplication InsightsAKSContainer Registry |
| dataops | CI/CD for dataGreat Expectationsdbt testsData contractsData observabilityOpenLineageGit |
| bi | TableauPower BI |
| ai | RAGAzure OpenAIAzure AI Search |
channel VARCHAR · latency INTERVALINSERT INTO conversations (who, topic)
VALUES ('you', 'a data platform role');
-- typical response time: under 24h