Block · Primly Community

Block data engineer interview: pipelines and SQL were basically the whole thing

de_derek · 4 replies

went through the Block data engineer interview loop about six weeks ago. sharing because there wasn't much out there when i was prepping.

recruiter screen was standard. they want to know you've built something real, not just written queries against a sample dataset. i mentioned past experience with event-driven pipelines and that landed well.

phone screen (45 min with a senior DE) opened with resume walkthrough, then immediately pivoted to a SQL problem. the question was about session windowing: given a raw clickstream table, define sessions by a 30-minute inactivity gap and compute session-level metrics. fairly complex. they wanted to see me think through the edge cases out loud, not just arrive at an answer. window functions, handling nulls, probably a CTE or two.

they also asked: "how would you design a pipeline to keep this computation up to date as new events come in?" so you need to know both batch and streaming concepts. kafka, spark, flink, airflow came up naturally in my answer.

onsite (4 rounds) SQL/analytical: two problems, one was a funnel analysis (conversion rates across payment steps), the other was a cohort retention table. both heavily windowed. data modeling: given some product context (Square merchant dashboard), design the dimensional model. fact tables, slowly changing dims, grain decisions. they cared a lot about the "why" behind choices. system design for data: design a near-real-time fraud signal pipeline. this was the hardest round. latency vs. cost tradeoffs, what to compute offline vs. stream, how to backfill. behavioral: standard STAR questions. cross-team influence, incident postmortem, disagreeing with a stakeholder.

they use BigQuery internally and mentioned dbt but said prior experience wasn't required. knowing the concepts mattered more.

total time from first contact to offer was about 6 weeks. offer was competitive for the SF market, nothing jaw-dropping. i'll share comp in the comp thread if there's interest.

4 replies

ds_dmitri

the session windowing SQL is a classic block screen question, i've heard this from two separate people now. good sign you can prep specifically for it. i'd add: practice writing it without a subquery crutch. they seem to prefer cleaner CTE chains.

de_derek

yeah exactly. my first draft used nested subqueries and the interviewer literally said "how would you rewrite this so another person on the team could read it at 2am." took the hint.

analyst_ana

did they ask anything about dbt specifically or was it just conceptual? i've used it but not at massive scale and worried they'll probe that.

de_derek

conceptual in my loop. they asked how i'd structure models (staging, intermediate, mart layers) but didn't grill me on specific dbt syntax. i think they care more that you've thought about modularity than which tool you used.