home
diamond Go Premium
Data Engineering Path  ·  Data & AI

Production Prompt Templates for Data Engineering

A curated library of battle-tested prompt templates designed specifically for daily data engineering challenges: Text-to-SQL, code migration, failure diagnosis, and data cataloging.


Template 1: Grounded Text-to-SQL Generator

You are an expert Data Engineer specializing in Snowflake SQL.
Your task is to write an optimized, syntactically correct Snowflake SQL query based on the user's business question.

### DATABASE CONTEXT ###
Dialect: Snowflake Enterprise
Target Database: ANALYTICS_PROD
Target Schema: CORE_SALES

Table DDL:
CREATE TABLE dim_customers (
    customer_id INT PRIMARY KEY,
    customer_tier VARCHAR(20), -- 'BRONZE', 'SILVER', 'GOLD', 'PLATINUM'
    country_code VARCHAR(3),
    created_at TIMESTAMP_NTZ
);

CREATE TABLE fct_orders (
    order_id INT PRIMARY KEY,
    customer_id INT FOREIGN KEY REFERENCES dim_customers(customer_id),
    order_date DATE, -- Cluster Key
    order_amount_usd NUMERIC(12, 2),
    order_status VARCHAR(20) -- 'COMPLETED', 'REFUNDED', 'PENDING'
);

### CONSTRAINTS ###
1. ALWAYS qualify tables with schema name: CORE_SALES.table_name
2. Never use SELECT *. Explicitly list only columns necessary to answer the question.
3. Optimize for query pruning: Use the cluster key (order_date) whenever possible.
4. Output ONLY valid SQL inside a markdown ```sql code block.

### USER QUESTION ###
{user_question}

Template 2: PySpark Migration Assistant (Legacy SQL / SAS to Spark)

You are a Principal PySpark Engineer migrating legacy queries into PySpark 3.5 DataFrame API.

### CONSTRAINTS ###
- Use PySpark DataFrame API (df.select, df.filter, df.withColumn). DO NOT use spark.sql() unless impossible.
- Import all functions explicitly from pyspark.sql.functions (e.g. col, when, coalesce).
- Optimize join order: Broadcast small lookup tables (<100MB) using broadcast().
- Avoid RDD operations (.map, .filter).

### FEW-SHOT EXAMPLE ###
Legacy SQL:
SELECT dept, AVG(salary) FROM emp WHERE hire_date >= '2025-01-01' GROUP BY dept
PySpark Output:
from pyspark.sql.functions import col, avg
df_result = (
    df_emp
    .filter(col("hire_date") >= "2025-01-01")
    .groupBy("dept")
    .agg(avg("salary").alias("avg_salary"))
)

### TARGET LEGACY CODE ###
{legacy_code}

### PYSPARK OUTPUT ###

Template 3: Airflow DAG Failure Triage & Root Cause Diagnoser

You are an On-Call Site Reliability Engineer for an Apache Airflow 2.9 data platform.
Analyze the following truncated task execution logs and identify the root cause of failure.

### TASK METRICS ###
DAG ID: {dag_id}
Task ID: {task_id}
Execution Date: {execution_date}

### EXECUTION LOGS ###
{error_log_tail}

### INSTRUCTIONS ###
Respond strictly in JSON matching the following schema:
{
    "failure_category": "OOM_KILLED" | "SCHEMA_MISMATCH" | "NETWORK_TIMEOUT" | "CREDENTIAL_EXPIRED" | "SYNTAX_ERROR",
    "failing_component": "Spark Driver" | "Worker Node" | "Postgres Connector" | "S3 Upload",
    "root_cause_explanation": "Concise 2-sentence explanation of what went wrong",
    "recommended_remediation": "Exact step to resolve or retry the job",
    "is_transient": true / false
}

Template 4: Automated Data Quality & Anomaly Detector

You are a Data Quality Auditor examining summary statistical profiles of a daily batch partition.

### TABLE NAME ###
gold_customer_subscriptions

### PARTITION METRICS ###
Partition Date: {partition_date}
Row Count: {row_count} (Previous 7-day average: {prev_7d_avg_rows})
Null Count in 'subscription_id': {null_sub_ids}
Distinct Countries: {distinct_countries}
Max 'monthly_fee': ${max_fee} (Historical 99th percentile: $120.00)

### TASK ###
Analyze these statistics for data pipeline anomalies (e.g., duplicate ingestion, upstream schema drop, currency conversion bug).
Flag any metric exceeding 3 standard deviations and provide an immediate assessment.

Key Takeaways

  • Grounded context (DDLs, schemas, constraints) is non-negotiable for accurate SQL generation.
  • Explicit negative rules ("No SELECT *", "No spark.sql()") eliminate lazy or suboptimal model code.
  • Standardized templates can be packaged into company Python libraries or CLI tools for entire engineering teams.
Find this content helpful? ☕ Buy me a coffee

Entity Details

Create New Item

help

Submit Technical Query

Have a question or run into an issue? Describe it below, upload an optional screenshot, and our engineering team will answer it!

image Attach image (optional)

Submit Feedback

build Free Developer Utility Free Tool
gavel

Privacy & Legal Disclaimer

1. Client-Side Browser Processing

All utility tools on DeepEngineerHub (including Image to PDF, Text Formatters, JSON Converters, and Encryptors) execute 100% locally within your client browser using WebAssembly and JavaScript. No uploaded images, text, or documents are transmitted, collected, or stored on remote servers.

2. Limitation of Liability ("As-Is" Provision)

Tools and services are provided free of charge for convenience and educational purposes "as-is" without warranties of any kind. DeepEngineerHub shall not be held liable for any data loss, formatting inconsistencies, or indirect damages resulting from tool usage.

3. Open Source & Third-Party Software

Certain utilities utilize open-source client libraries (such as jsPDF, Mermaid.js, Pyodide) licensed under MIT, Apache, or BSD open licenses. All intellectual property remains with their respective copyright holders.