Data Analyst
115SQL, grain, a BI tool, and the nerve to say the number is wrong.
SQL · Metrics · BI · Behavioral
Interview prep
SQL, modeling, pipelines, experiments, system design, and behavioral — the mix changes by role. All nine DataLane roles sit a SQL pad. Prep the loop you will actually walk, not two stacks and a hope.
From the bank
A join exploded revenue. How do you find the grain mismatch in five minutes?
Running total of daily revenue. Why is SUM(SUM(amount)) OVER (...) valid?
QUALIFY vs a CTE for window filters — when do you use each?
A query is correct but scans last year. How do you prove partition pruning?
You need a 7-day rolling unique users. What breaks if you use COUNT DISTINCT in a window carelessly?
Each track is a sequence, not a pile of unrelated cards. Same nine roles as the roadmaps and coding hub — original DataLane questions, not a third-party dump.
SQL, grain, a BI tool, and the nerve to say the number is wrong.
SQL · Metrics · BI · Behavioral
Warehouse SQL at dashboard grain. Serving layers that are not your OLTP.
SQL · Warehouse · Trino / CH · Modeling
dbt models, tests, CI, and a metric someone in finance can trust.
SQL · dbt · Modeling · Quality · Behavioral
SQL, pipelines, warehouses, streaming, and the platform sketch they ask at 3pm.
SQL · Python · Orchestration · Streaming · System design · Behavioral
SQL for features, stats without vibes, and a holdout you would defend.
SQL · Python / stats · Modeling · Experiments · Behavioral
Train, serve, and rollback. Features as tables. Latency as an SLA.
Python · Features · Serving · System design
Gates, rollback, and the SQL that proves training and serving agree.
Quality SQL · Eval · Serving · System design
RAG as ETL, feature tables without leakage, and Cortex as a transform.
SQL · Python · RAG / features · Streaming · System design
Grain, cost, and paved roads. You still have to query the mart you designed.
SQL · Warehouse · System design · Cloud · Behavioral
Python problems switch NumPy, Python, or PyTorch from a dropdown. SQL problems use the same sample warehouse as the sandbox — 27 queries graded check by check.
20 stacks. Filter below, then drill one topic.
Themes people are discussing in public. We do not scrape LinkedIn.
2026-08-28 · Coinbase · Ledger grain
A deposit webhook retried. How do you not mint two ledger rows?
Idempotency key (or natural key on payment_id + event_type) and an upsert. A running-balance column you overwrite is not a ledger.
Practice sql →2026-08-26 · Apple · Shared lake, one writer
Two engines must share one lake table. What do you refuse to do?
Dual-write CSV or two independent Delta copies. Pick Iceberg (or UniForm) with a single writer. Two writers is how the copies lie.
Practice system-design →2026-08-22 · LinkedIn · Rebalances under load
Your consumer group rebalances every few minutes during peak. What do you check first?
max.poll.interval.ms vs processing time, cooperative sticky assignment, and whether a slow partition (hot key) is triggering leave/join. Adding consumers without fixing poll interval often makes lag worse.
Practice kafka →2026-08-18 · Snowflake · Cortex in a dashboard
A hiring manager asks you to put Cortex COMPLETE in a Looker explore. What do you say?
No. Materialize the label in ELT once, version the prompt, and let BI read a column. Dashboard refresh is a token bill and a non-deterministic metric.
Practice snowflake →2026-08-10 · Capital One · Fan-out revenue
Revenue doubled after a “harmless” dimension join. How do you prove it in five minutes?
Row counts before and after the join, then GROUP BY the join key HAVING count(*) > 1 on the dimension. Fix the grain or aggregate the dim. Never DISTINCT the fact.
Practice sql →Publicly discussed screen shapes. Updated 2026-08-28.