The consumer-lending analyst role at a regional or money-center bank: HMDA action-taken decomposition, fair-lending disparity analysis, vintage curves and first-payment-default cohorts, ARM reset wall identification, refi candidate targeting, delinquency aging and roll rates, charge-off recovery, CECL-style loss reserve decomposition, and ALCO-ready portfolio stratification — against a realistic mortgage / auto / HELOC / personal lending dataset with planted HMDA and servicing reconciliation traps.
30 missions · 8 tables · lending dataset on the shared retail core, with planted HMDA and servicing traps
Read the briefing
A Slack message from your manager
Explore the schema
5 tables in a star schema
Write your query
Full SQL editor with autocomplete
Get expert feedback
Graduated hints, not just pass/fail
Answer questions from the Chief Credit Officer, Mortgage Sales Director, Fair Lending Compliance Officer, and Loan Servicing Lead — weekly origination dashboards, HMDA LAR reconstructions, ARM reset walls, and CECL-style loss reserves.
lending_applications (HMDA-shaped), lending_originations (funded loans with FICO/DTI/LTV at orig), lending_payments (past installments with days_late), and lending_geography (census tract + LMI). Joins to the shared retail_* core for customer demographics.
HMDA action-taken decomposition, denial-reason rollups, LMI-tract approval gap analysis, vintage curves with cohort EXISTS, ARM reset arithmetic, roll-rate matrices, charge-off recovery ratios, and the multi-CTE rollups that real credit teams ship.
Every mission maps to a real lending-analyst task — weekly origination packets, HMDA LAR submissions, fair-lending memos, and the SQL that lending teams at JPMC / BofA / Wells Fargo / Rocket Mortgage actually screen for.
Each mission is a real request from someone at the company. Difficulty increases as you go.
A consumer-lending dataset on the shared retail_* core with 8 tables, ~17K lending rows, and planted HMDA/servicing traps. Mis-coded HMDA action_taken values, ARM rows missing arm_reset_date, late-posted payments coded as on-time, trailing-space loan-officer names that split GROUP BYs, and a vintage 2019 ARM cohort whose 7-year reset wall lands in the next 6 months.
●dimension tables ● fact tables
Vintages have to tie, the HMDA LAR has to balance, and the CCO wants the story — in SQL.
Looking for something different?