Senior Data Engineer
Production-grade data engineering skill for building scalable, reliable data systems.
Table of Contents
- Trigger Phrases
- Quick Start
- Workflows
- Architecture Decision Framework
- Tech Stack
- Reference Documentation
- Troubleshooting
Trigger Phrases
Activate this skill when you see:
Pipeline Design:
- "Design a data pipeline for..."
- "Build an ETL/ELT process..."
- "How should I ingest data from..."
- "Set up data extraction from..."
Architecture:
- "Should I use batch or streaming?"
- "Lambda vs Kappa architecture"
- "How to handle late-arriving data"
- "Design a data lakehouse"
Data Modeling:
- "Create a dimensional model..."
- "Star schema vs snowflake"
- "Implement slowly changing dimensions"
- "Design a data vault"
Data Quality:
- "Add data validation to..."
- "Set up data quality checks"
- "Monitor data freshness"
- "Implement data contracts"
Performance:
- "Optimize this Spark job"
- "Query is running slow"
- "Reduce pipeline execution time"
- "Tune Airflow DAG"
Quick Start
Core Tools
# Generate pipeline orchestration config
python scripts/pipeline_orchestrator.py generate \
--type airflow \
--source postgres \
--destination snowflake \
--schedule "0 5 * * *"
# Validate data quality
python scripts/data_quality_validator.py validate \
--input data/sales.parquet \
--schema schemas/sales.json \
--checks freshness,completeness,uniqueness
# Optimize ETL performance
python scripts/etl_performance_optimizer.py analyze \
--query queries/daily_aggregation.sql \
--engine spark \
--recommend
Workflows
→ See references/workflows.md for details
Architecture Decision Framework
Use this framework to choose the right approach for your data pipeline.
Batch vs Streaming
| Criteria |
Batch |
Streaming |
| Latency requirement |
Hours to days |
Seconds to minutes |
| Data volume |
Large historical datasets |
Continuous event streams |
| Processing complexity |
Complex transformations, ML |
Simple aggregations, filtering |
| Cost sensitivity |
More cost-effective |
Higher infrastructure cost |
| Error handling |
Easier to reprocess |
Requires careful design |
Decision Tree:
Is real-time insight required?
├── Yes → Use streaming
│ └── Is exactly-once semantics needed?
│ ├── Yes → Kafka + Flink/Spark Structured Streaming
│ └── No → Kafka + consumer groups
└── No → Use batch
└── Is data volume > 1TB daily?
├── Yes → Spark/Databricks
└── No → dbt + warehouse compute
Lambda vs Kappa Architecture
| Aspect |
Lambda |
Kappa |
| Complexity |
Two codebases (batch + stream) |
Single codebase |
| Maintenance |
Higher (sync batch/stream logic) |
Lower |
| Reprocessing |
Native batch layer |
Replay from source |
| Use case |
ML training + real-time serving |
Pure event-driven |
When to choose Lambda:
- Need to train ML models on historical data
- Complex batch transformations not feasible in streaming
- Existing batch infrastructure
When to choose Kappa:
- Event-sourced architecture
- All processing can be expressed as stream operations
- Starting fresh without legacy systems
Data Warehouse vs Data Lakehouse
| Feature |
Warehouse (Snowflake/BigQuery) |
Lakehouse (Delta/Iceberg) |
| Best for |
BI, SQL analytics |
ML, unstructured data |
| Storage cost |
Higher (proprietary format) |
Lower (open formats) |
| Flexibility |
Schema-on-write |
Schema-on-read |
| Performance |
Excellent for SQL |
Good, improving |
| Ecosystem |
Mature BI tools |
Growing ML tooling |
Tech Stack
| Category |
Technologies |
| Languages |
Python, SQL, Scala |
| Orchestration |
Airflow, Prefect, Dagster |
| Transformation |
dbt, Spark, Flink |
| Streaming |
Kafka, Kinesis, Pub/Sub |
| Storage |
S3, GCS, Delta Lake, Iceberg |
| Warehouses |
Snowflake, BigQuery, Redshift, Databricks |
| Quality |
Great Expectations, dbt tests, Monte Carlo |
| Monitoring |
Prometheus, Grafana, Datadog |
Reference Documentation
1. Data Pipeline Architecture
See references/data_pipeline_architecture.md for:
- Lambda vs Kappa architecture patterns
- Batch processing with Spark and Airflow
- Stream processing with Kafka and Flink
- Exactly-once semantics implementation
- Error handling and dead letter queues
2. Data Modeling Patterns
See references/data_modeling_patterns.md for:
- Dimensional modeling (Star/Snowflake)
- Slowly Changing Dimensions (SCD Types 1-6)
- Data Vault modeling
- dbt best practices
- Partitioning and clustering
3. DataOps Best Practices
See references/dataops_best_practices.md for:
- Data testing frameworks
- Data contracts and schema validation
- CI/CD for data pipelines
- Observability and lineage
- Incident response
Troubleshooting
→ See references/troubleshooting.md for details
Source: alirezarezvani/claude-skills → engineering-team/skills/senior-data-engineer/SKILL.md
1---2name: senior-data-engineer3description: Data engineering skill for building scalable data pipelines, ETL/ELT systems, and data infrastructure. Expertise in Python, SQL, Spark, Airflow, dbt, Kafka, and modern data stack. Includes data modeling, pipeline orchestration, data quality, and DataOps. Use when designing data architectures, building data pipelines, optimizing data workflows, implementing data governance, or troubleshooting data issues.4---5
6
7# Senior Data Engineer
8
9Production-grade data engineering skill for building scalable, reliable data systems.
10
11## Table of Contents
12
131. [Trigger Phrases](#trigger-phrases)
142. [Quick Start](#quick-start)
153. [Workflows](#workflows)
164. [Architecture Decision Framework](#architecture-decision-framework)
175. [Tech Stack](#tech-stack)
186. [Reference Documentation](#reference-documentation)
197. [Troubleshooting](#troubleshooting)
20
21---
22
23## Trigger Phrases
24
25Activate this skill when you see:
26
27**Pipeline Design:**
28- "Design a data pipeline for..."
29- "Build an ETL/ELT process..."
30- "How should I ingest data from..."
31- "Set up data extraction from..."
32
33**Architecture:**
34- "Should I use batch or streaming?"
35- "Lambda vs Kappa architecture"
36- "How to handle late-arriving data"
37- "Design a data lakehouse"
38
39**Data Modeling:**
40- "Create a dimensional model..."
41- "Star schema vs snowflake"
42- "Implement slowly changing dimensions"
43- "Design a data vault"
44
45**Data Quality:**
46- "Add data validation to..."
47- "Set up data quality checks"
48- "Monitor data freshness"
49- "Implement data contracts"
50
51**Performance:**
52- "Optimize this Spark job"
53- "Query is running slow"
54- "Reduce pipeline execution time"
55- "Tune Airflow DAG"
56
57---
58
59## Quick Start
60
61### Core Tools
62
63```bash
64# Generate pipeline orchestration config
65python scripts/pipeline_orchestrator.py generate \
66 --type airflow \
67 --source postgres \
68 --destination snowflake \
69 --schedule "0 5 * * *"
70
71# Validate data quality
72python scripts/data_quality_validator.py validate \
73 --input data/sales.parquet \
74 --schema schemas/sales.json \
75 --checks freshness,completeness,uniqueness
76
77# Optimize ETL performance
78python scripts/etl_performance_optimizer.py analyze \
79 --query queries/daily_aggregation.sql \
80 --engine spark \
81 --recommend
82```
83
84---
85
86## Workflows
87→ See references/workflows.md for details
88
89## Architecture Decision Framework
90
91Use this framework to choose the right approach for your data pipeline.
92
93### Batch vs Streaming
94
95| Criteria | Batch | Streaming |
96|----------|-------|-----------|
97| **Latency requirement** | Hours to days | Seconds to minutes |
98| **Data volume** | Large historical datasets | Continuous event streams |
99| **Processing complexity** | Complex transformations, ML | Simple aggregations, filtering |
100| **Cost sensitivity** | More cost-effective | Higher infrastructure cost |
101| **Error handling** | Easier to reprocess | Requires careful design |
102
103**Decision Tree:**
104```
105Is real-time insight required?
106├── Yes → Use streaming
107│ └── Is exactly-once semantics needed?
108│ ├── Yes → Kafka + Flink/Spark Structured Streaming
109│ └── No → Kafka + consumer groups
110└── No → Use batch
111 └── Is data volume > 1TB daily?
112 ├── Yes → Spark/Databricks
113 └── No → dbt + warehouse compute
114```
115
116### Lambda vs Kappa Architecture
117
118| Aspect | Lambda | Kappa |
119|--------|--------|-------|
120| **Complexity** | Two codebases (batch + stream) | Single codebase |
121| **Maintenance** | Higher (sync batch/stream logic) | Lower |
122| **Reprocessing** | Native batch layer | Replay from source |
123| **Use case** | ML training + real-time serving | Pure event-driven |
124
125**When to choose Lambda:**
126- Need to train ML models on historical data
127- Complex batch transformations not feasible in streaming
128- Existing batch infrastructure
129
130**When to choose Kappa:**
131- Event-sourced architecture
132- All processing can be expressed as stream operations
133- Starting fresh without legacy systems
134
135### Data Warehouse vs Data Lakehouse
136
137| Feature | Warehouse (Snowflake/BigQuery) | Lakehouse (Delta/Iceberg) |
138|---------|-------------------------------|---------------------------|
139| **Best for** | BI, SQL analytics | ML, unstructured data |
140| **Storage cost** | Higher (proprietary format) | Lower (open formats) |
141| **Flexibility** | Schema-on-write | Schema-on-read |
142| **Performance** | Excellent for SQL | Good, improving |
143| **Ecosystem** | Mature BI tools | Growing ML tooling |
144
145---
146
147## Tech Stack
148
149| Category | Technologies |
150|----------|--------------|
151| **Languages** | Python, SQL, Scala |
152| **Orchestration** | Airflow, Prefect, Dagster |
153| **Transformation** | dbt, Spark, Flink |
154| **Streaming** | Kafka, Kinesis, Pub/Sub |
155| **Storage** | S3, GCS, Delta Lake, Iceberg |
156| **Warehouses** | Snowflake, BigQuery, Redshift, Databricks |
157| **Quality** | Great Expectations, dbt tests, Monte Carlo |
158| **Monitoring** | Prometheus, Grafana, Datadog |
159
160---
161
162## Reference Documentation
163
164### 1. Data Pipeline Architecture
165See `references/data_pipeline_architecture.md` for:
166- Lambda vs Kappa architecture patterns
167- Batch processing with Spark and Airflow
168- Stream processing with Kafka and Flink
169- Exactly-once semantics implementation
170- Error handling and dead letter queues
171
172### 2. Data Modeling Patterns
173See `references/data_modeling_patterns.md` for:
174- Dimensional modeling (Star/Snowflake)
175- Slowly Changing Dimensions (SCD Types 1-6)
176- Data Vault modeling
177- dbt best practices
178- Partitioning and clustering
179
180### 3. DataOps Best Practices
181See `references/dataops_best_practices.md` for:
182- Data testing frameworks
183- Data contracts and schema validation
184- CI/CD for data pipelines
185- Observability and lineage
186- Incident response
187
188---
189
190## Troubleshooting
191→ See references/troubleshooting.md for details
192
193---
194
195**Source:** [`alirezarezvani/claude-skills`](https://github.com/alirezarezvani/claude-skills) → `engineering-team/skills/senior-data-engineer/SKILL.md`