PromptBase
Upgrade
Close icon
General
Home
Marketplace
Create
Hire
Login
Chat
Sell
Explore

Prompt Details

Model
(claude-5-sonnet)
Token size
4,801
Example input
[PLATFORM]: Snowflake Data Warehouse Sources: Salesforce, PostgreSQL, Stripe, HubSpot, Google Analytics Transformations: dbt + Spark Consumers: Tableau dashboards, Finance reports, Internal APIs [STACK]: Python, SQL, Spark, dbt, Airflow, Snowflake, S3, Great Expectations, GitHub Actions [STRUCTURE]: /ingestion /transformations /orchestration /quality /warehouse /api /docs [AUDIENCE]: Backend software engineer transitioning into Data Engineering. Intermediate Python, beginner SQL. Available learning time: 8 hours/week. [GOAL]: Become productive quickly, understand architecture, safely contribute new dbt models and production pipelines.
Example output
# πŸ—ΊοΈ PIPELINE EXPLORER'S MAP **Onboarding Readiness Score:** 6.5/10 | **Complexity Level:** Moderate-High | **Data Quality Checks:** 12 core checks, ~70% coverage estimated | **Time to Productivity:** 5 weeks @ 8 hrs/week | **Pipeline Stages:** 5 (ingestion β†’ transform β†’ quality β†’ warehouse β†’ publish) | **Spike Risks:** 4 identified **30-sec summary:** Moderate-high complexity β€” five well-known SaaS/DB sources rather than 50+, which lowers ingestion sprawl risk, but the dual dbt+Spark transformation layer plus Airflow orchestration means real tooling breadth. Primary Challenge: SQL proficiency (you're starting from beginner SQL while the pipeline leans on window functions and incremental logic from day one). Learning Path: 5 weeks. Hidden Dependencies: 3 (Finance reports off Stripe reconciliation, Tableau off Snowflake materialized views, internal APIs off warehouse freshness). --- # πŸ“Š SECTION 1 β€” CODEBASE ASSESSMENT | Dimension | Rating | Why | Spike Risk | |---|---|---|---| | Data paradigm shift | 🟠 | Batch mindset (nightly runs) vs. your request-response backend instincts | Medium | | SQL proficiency | πŸ”΄ | Beginner SQL meeting window functions, CTEs, incremental filters immediately | High | | Tool ecosystem | 🟠 | dbt + Spark + Airflow + Snowflake + Great Expectations + GitHub Actions = 6 tools | Medium | | Data volume | 🟑 | Not TB-scale by default with 5 sources, but Stripe/GA can spike in row count | Low | | Quality concerns | 🟒 | Great Expectations already in stack β€” good habit to inherit early | Low | | CI/CD (GitHub Actions) | 🟑 | New layer vs. typical Airflow-only setups β€” dbt CI runs need understanding | Medium | **Domain Characteristics:** Business criticality is high β€” Finance reports depend on Stripe reconciliation accuracy, and Tableau dashboards are watched by non-technical stakeholders who notice stale data fast. Data volume is moderate (5 sources, not 50+), so distributed processing exists but isn't the dominant daily concern the way it would be in a 50-source shop. Hidden dependencies: internal APIs likely serve cached Snowflake views to other backend services β€” a transformation bug propagates further than it looks. **Onboarding Difficulty:** MODERATE-HIGH, achievable in 5 weeks at 8 hrs/week. - SQL is the real gate β€” window functions and dbt's Jinja-templated SQL will feel foreign to a backend engineer used to ORMs. - Batch mindset shift β€” errors surface hours after a nightly run, not synchronously like an API 500. - Tool count (6) creates real but manageable cognitive load given your Python background β€” dbt and Airflow are both Python-adjacent. - GitHub Actions + dbt CI is a layer many onboarding guides skip; worth deliberate attention since it gatekeeps merges. --- # πŸ—οΈ SECTION 2 β€” ARCHITECTURE FIRST **High-Level Data Flow:** Salesforce / PostgreSQL / Stripe / HubSpot / Google Analytics β†’ **Ingestion** (API connectors + CDC replication + GA export, landing in S3) β†’ **Staging** (raw Parquet, partitioned by date) β†’ **Transformation** (Spark for heavy dedup/joins, dbt for business logic models) β†’ **Warehouse** (Snowflake materialized views) β†’ **Consumption** (Tableau, Finance reports, internal REST APIs). **Orchestration (Airflow):** Nightly master DAG. Expect roughly 5 ingestion tasks (one per source) β†’ transformation tasks (Spark then dbt run) β†’ 2 quality tasks (Great Expectations suite) β†’ 2 publish tasks (refresh materialized views, invalidate API cache). On failure: alert channel, pipeline halts, exponential backoff retry. **CI/CD Layer (GitHub Actions):** This is new relative to the base template β€” expect dbt tests and SQL linting to run on every PR before merge. This is your safety net: a broken model should fail CI before it ever reaches the nightly DAG. **Data Quality Gates:** Row counts shouldn't drop >10% day-over-day per source. No nulls in customer/key IDs. Stripe revenue figures never negative. Salesforce lead IDs match expected format. Failed validation halts the pipeline for analyst review. **Key Concept β€” Partitioning:** Everything partitioned by `date`. A Spark job for `2026-07-05` only touches that day's data; Snowflake queries filtered by partition cut scan cost dramatically (unpartitioned scans on even moderate tables can turn a $5 query into a $500 one). **Incremental Loads:** First run processes full history; subsequent runs process only new/changed rows per source, tracked via a "last synced" watermark β€” this is what keeps a 5-source pipeline fast instead of re-processing everything nightly. --- # πŸ“‚ SECTION 3 β€” REPOSITORY NAVIGATION - **/ingestion** β€” `connectors/salesforce_connector.py`, `connectors/stripe_connector.py`, `connectors/hubspot_connector.py` (API polling, incremental sync, rate-limit handling), `connectors/postgres_replicator.py` (CDC off a read replica, never master), `connectors/ga_export.py` (Google Analytics data export API), `config/connections.yaml` (credentials via secrets manager β€” this is where you register the 5th source if one's added). - **/transformations** β€” `dbt_project/models/staging/` (per-source cleaning, deduplication, null handling), `dbt_project/models/marts/` (business-facing models β€” e.g. a `fct_revenue` blending Stripe + Salesforce, a `dim_customer` as single source of truth), `dbt_project/macros/` (shared SQL templates β€” high blast radius, treat as senior-review territory), `spark_jobs/` (heavy dedup/join logic that's cheaper to run distributed than in dbt/Snowflake directly). - **/orchestration** β€” `dags/daily_warehouse_load.py` (task order matters β€” wrong sequencing means stale data reaching Tableau). - **/quality** β€” `expectations/*.yml` (Great Expectations suites per source/model β€” failed checks halt + alert). - **/warehouse** β€” `views/*.sql` (materialized views joining upstream marts, indexed for BI query speed). - **/api** β€” internal REST endpoints querying Snowflake views, likely with a short-TTL cache layer. - **/docs** β€” look for a data lineage doc first; this answers "where did this metric come from?" faster than tracing code. - **.github/workflows/** β€” not in the original template but relevant here: this is where dbt CI, SQL linting, and test-on-PR logic lives. Read this in week 1 even though it's not listed in STRUCTURE β€” it gatekeeps every future PR you submit. --- # πŸ“š SECTION 4 β€” PERSONALIZED LEARNING PATH (5 weeks, 8 hrs/week) **Week 1 β€” SQL Fundamentals + Lineage (8 hrs):** Days 1-2: SQL basics refresh (SELECT/WHERE/JOIN/GROUP BY), read the data lineage doc, sketch the 5-source flow by hand. Days 3-4: window functions specifically (`ROW_NUMBER`, `SUM() OVER PARTITION BY`) since dbt marts lean on these β€” write 5 practice queries against a staging table. Day 5: read one full staging model SQL file end to end, annotate every clause you don't understand. **Week 2 β€” dbt + Spark Basics (8 hrs):** Days 1-2: dbt fundamentals β€” models, refs, `dbt run`, `dbt test`. Trace one staging model's compiled SQL. Days 3-4: Spark basics via local PySpark REPL β€” load a sample DataFrame, run `.dropDuplicates()`, understand why Spark handles the heavy joins instead of dbt. Day 5: modify one Spark job locally (add a filter), test on a sample, don't touch production config. **Week 3 β€” Orchestration + CI (8 hrs):** Days 1-2: Airflow DAG structure β€” trace the daily DAG task-by-task, note dependency order. Days 3-4: GitHub Actions β€” read the workflow file, understand what dbt CI checks on a PR, open a trivial PR (e.g. a doc fix) just to watch the pipeline run. Day 5: add a GE test locally and confirm it runs in CI. **Week 4 β€” Data Quality + Debugging (8 hrs):** Days 1-3: Great Expectations β€” write a new expectation (e.g. Stripe revenue never negative), test locally, add to CI. Days 4-5: debugging scenario β€” simulate a row-count drop, trace through Airflow logs β†’ Snowflake counts β†’ Spark output β†’ dbt logs, in that order. **Week 5 β€” First Production Contribution (8 hrs):** Build one new staging or mart model end to end (e.g. a `stg_google_analytics_sessions` model), write its dbt tests + GE checks, open a PR, get it through CI, merge, and monitor the next nightly run through to Tableau. --- # πŸ‘¨β€πŸ’» SECTION 5 β€” HANDS-ON PRACTICE TASKS 🟒 **Beginner (Weeks 1-2):** 1. Write a read-only query: top 10 customers by revenue from the revenue mart. 2. Add row-count logging (before/after) to one Spark dedup job β€” no logic change. 3. Add YAML column descriptions to one staging model β€” documentation only. 🟑 **Intermediate (Weeks 3-4):** 4. Fix a data quality issue: filter null customer IDs before aggregation in one mart model. 5. Add an incremental filter to a Spark job so it only processes the last 24 hours. 6. Create a new staging model for Google Analytics sessions data, following the pattern of an existing staging model. πŸ”΄ **Advanced (Week 5):** 7. Debug a simulated pipeline failure: dbt run fails, trace root cause across Airflow/Spark/Snowflake logs. 8. Optimize a slow Tableau-facing query by adding an index to a materialized view. 9. Ship a new metric end-to-end: design it, implement as a dbt model with tests, deploy, verify in Tableau. --- # 🧠 SECTION 6 β€” KNOWLEDGE DEPENDENCY MAP **Prerequisite Chain:** SQL fundamentals β†’ Data lineage understanding β†’ dbt model reading/writing β†’ Spark basics β†’ Airflow orchestration β†’ GE validation β†’ CI/CD flow β†’ Production debugging β†’ Independent contribution. **Risky Modules:** Ingestion connectors (πŸ”΄ β€” bugs cause duplication/data loss, always test on samples). dbt macros (🟠 β€” shared logic, changes ripple everywhere, needs senior review). Airflow DAG task ordering (🟠 β€” wrong sequence = stale downstream data). Snowflake materialized views (🟠 β€” cached by Tableau and internal APIs, test refresh in dev first). **Safe to Modify:** Staging dbt models (isolated blast radius). Read-only warehouse views. New GE checks (additive). Airflow task timeout/retry configs. Documentation. --- # 🚨 SECTION 7 β€” COMMON PITFALLS **Pitfall 1 β€” Partial Stripe Sync:** Connector times out mid-sync, only partial transaction data lands. Next day's revenue mart joins incomplete data with fresh data, understating revenue. *Prevention:* validate raw row count against Stripe API expected count. *Fix:* rerun with backfill for the missing window. **Pitfall 2 β€” Spark OOM on Join:** A dedup/join step across 5 sources exceeds executor memory, fails silently, pipeline halts with no new metrics. *Prevention:* partition by date, process incrementally. *Fix:* increase executor memory or reduce partition size. **Pitfall 3 β€” Window Function Off-By-One:** Using `ORDER BY` instead of pure `PARTITION BY` in a dedup query causes duplicate customer rows in `dim_customer`. *Prevention:* test dedup logic on a small sample before running against full data. *Fix:* verify with a `GROUP BY ... HAVING COUNT(*) > 1` check. **Debugging Shortcuts (in order):** Airflow UI task logs β†’ raw row counts in Snowflake/S3 β†’ Spark job logs (OOM/timeout?) β†’ dbt logs (SQL error, zero rows?) β†’ compare row counts stage-by-stage to isolate where data was lost. --- # πŸ“ˆ SECTION 8 β€” MILESTONES - **End Week 1:** Can trace the 5-source data flow, run local SQL confidently. Readiness 15%. - **End Week 2:** Can read/modify a dbt model and a Spark job safely. Readiness 35%. - **End Week 3:** Understands DAG structure and CI gating, can open a passing PR. Readiness 50%. - **End Week 4:** Can write GE tests and debug a simulated failure independently. Readiness 70%. - **End Week 5:** Has shipped one production model end-to-end and monitored it live. Readiness 85% β€” independent contributor. --- # πŸ† FINAL REPORT | Category | Score | Notes | |---|---|---| | Architecture Clarity | 7/10 | 5-source flow is tractable to learn fully, unlike a 50-source shop | | Documentation Coverage | 6/10 | Assumed adequate; verify lineage doc exists and is current | | Learning Path Quality | 8/10 | Compressed to 5 weeks given 8 hrs/week and Python background | | Hands-on Tasks | 8/10 | Progressive blast-radius scaling well matched to SQL skill gap | | Debugging Support | 7/10 | GE + Airflow logs give good signal; CI adds an extra early check | **Top improvements to consider:** (1) Confirm a data lineage doc actually exists before week 1 β€” if not, build one first. (2) Set up a sandbox dbt target so early PRs don't risk touching shared dev schemas. (3) Since GitHub Actions CI isn't in most standard onboarding docs, write a short "what CI checks and why it failed" cheat sheet β€” this will save real time in weeks 3-4. Given SQL is your steepest gap, I'd start there even before day 1 of the plan above β€” want me to build out a focused week-0 SQL drill set (window functions, CTEs, incremental filter patterns) tailored to what dbt models actually use?
πŸŒ€ Claude

6week Data Engineer Onboarding Os

Add to Cart
Instant accessInstant access
Usage rightsCommercial use
Money-back guaranteeMoney‑back
By purchasing this prompt, you agree to our terms of service
CLAUDE-5-SONNET
Tested icon
Guide icon
4 examples icon
Free credits icon
Codebase Assessment.Repository Navigation Guide: Maps exactly where your ingestion, transformation, and orchestration logic lives..30-Day Daily Learning Path: Breaks down learning into structured, daily hour-by-hour milestones.Hands-on Practice Tasks: Generates safe, isolated tasks from Beginner (read-only SQL) to Advanced (shipping new dbt models).Production Survival Guide: and more
...more
Added 1 day ago
Report
Browse Marketplace