◐ ai-teacher

🎯 Interview & Career · Chapter 7

Aptitude and estimation under pressure

Aptitude tests aren't testing whether you can do maths. They're testing whether you can do enough maths, fast, while a timer runs — and whether you know when to skip.

Study this lesson free in the app →

The basics

Aptitude and estimation show up in two places in data engineering hiring:

Why they're hard: not the maths — the pressure. A question you'd solve in two minutes at home takes five when the clock is visible, and one stubborn question can eat the time for four easy ones.

The mental model:

Words to know: triage, elimination, Fermi estimate, order of magnitude, successive percentage, harmonic mean.

Explained

Online assessment, aptitude section: 20 questions, 20 minutes.

Question 4 is a ‘pipes filling a tank’ problem. Ravi knows he can solve it. Six minutes later he does — correctly.

He runs out of time at question 15. Questions 16–20 were three percentages and two table readings, about 40 seconds each.

One correct answer cost him five easy ones. The skill being tested wasn't the tank. It was knowing when to walk away from it.

The vegetable market

At Iewduh market, a seasoned shopper doesn't calculate exact totals. Tomatoes ₹38/kg, she wants 2.5 kg — “about ₹95”. Onions ₹42, 2 kg — “₹84, call it 85”. Total “around ₹180, I have ₹200, fine.”

She's rounding, adding, and sanity-checking in seconds. She'd catch a ₹450 bill instantly without knowing the exact right number.

That's estimation: fast, roughly right, and good enough to catch something badly wrong. In an interview, saying “about 6 terabytes a year — so not big data” is worth more than 5.84 TB delivered after three minutes of silence.

The patterns that come up again and again

Successive percentages multiply: +20% then −20% → 1.2 × 0.8 = 0.96, a 4% fall. Never add them.

Percentage swap: x% of y = y% of x. 18% of 50 = 50% of 18 = 9.

Percentage change vs points: share from 40% to 50% is +10 percentage points but +25%.

Average speed over equal distances is the harmonic mean: 40 and 60 km/h → 2×40×60/(40+60) = 48 km/h, not 50.

Weighted average: don't average averages from groups of different sizes.

Work rate: add rates, not times. A does it in 6 h (1/6 per h), B in 3 h (1/3 per h) → together 1/2 per h → 2 h.

Data interpretation: check units and whether the question asks for absolute or percentage change — the trap is usually there.

Estimation, out loud: a year of ride events

Q: “How much storage for a year of Meghalaya Cabs ride events?”

Assume  1M rides/day                       (say it — they can correct it)
        ~8 events per ride                 (request, accept, arrive, start,
                                            end, pay, rate, receipt)
      → 8M events/day

Assume  ~1 KB per JSON event
      → 8M × 1 KB = 8 GB/day raw

Year  → 8 GB × 365 ≈ 3 TB raw
        compressed Parquet ~5–10× smaller → ~300–600 GB
        with 3× replication on the raw copy → ~9 TB

Sanity  8M/day ÷ 86,400 ≈ 93 events/sec — small for one database.
Answer  “About 3 TB raw a year, well under 1 TB compressed.
         Not big data — but keep raw for replays.”

The interviewer is grading the chain: assumptions stated, round numbers, units carried, a sanity check, and a conclusion that means something.

Timed test: the triage loop

Check the instructions for negative marking before the test. Without it, never leave a blank; with it, guess only when you can eliminate at least two options.

A live Fermi question

Interviewer: “How many cabs does Meghalaya Cabs need in Shillong at evening peak?”

Strong answer: “Let me assume greater Shillong has around 5 lakh people. Say 2% take one of our rides on a weekday — 10,000 rides a day. Evening peak, 6 to 7 PM, might be 12% of the day — about 1,200 rides in that hour. A trip plus pickup is about 30 minutes, so each cab can do 2 rides an hour. That's 600 cabs on the road at peak, maybe 700 to cover uneven demand by area. Sanity check: 600 cabs for 5 lakh people is roughly one per 800 people at peak, which feels plausible for a hill city. I'd check the 2% assumption first — it's the most uncertain.”

Note the last sentence: naming which assumption matters most is the senior touch.

Gotchas

Timed: triage, eliminate, move on. Live: assume out loud, round hard, sanity-check, give a range.

Successive percentages multiply. Average speed is harmonic. 1M a day ≈ 12 a second.

Words to know

TriageAnswering quick questions first and skipping slow ones to maximise score under time pressure.
Fermi estimateAn order-of-magnitude answer built from stated assumptions and round numbers.
Successive percentagePercentage changes applied one after another; they multiply rather than add.
Harmonic meanThe correct average for rates over equal amounts of work or distance; always ≤ the simple average.
Percentage pointThe absolute difference between two percentages (40% → 50% is +10 points, +25%).
Negative markingDeducting marks for wrong answers, which changes whether guessing is worthwhile.

In two minutes

Test yourself

1. A base fare rises 20%, then is cut 20%. Net change?

  1. 0%
  2. −2%
  3. +4%
  4. −4%
Show the answer

−4% — 1.2 × 0.8 = 0.96, a 4% fall. The cut applies to a larger base than the rise did.

2. 1 million events a day is roughly how many per second on average?

  1. ~12
  2. ~1
  3. ~120
  4. ~1,200
Show the answer

~12 — 1,000,000 / 86,400 ≈ 11.6. Worth memorising: 1M/day ≈ 12/s.

3. A cab drives 50 km at 40 km/h and the next 50 km at 60 km/h. Average speed for the trip?

  1. 50 km/h
  2. 52 km/h
  3. 48 km/h
  4. 45 km/h
Show the answer

48 km/h — Time = 50/40 + 50/60 = 1.25 + 0.833 = 2.083 h for 100 km → 48 km/h. More time is spent at the slower speed, so it weighs more.

4. A ₹200 ride gets a 1.5× surge, then 5% tax on the surged fare. Final fare?

  1. ₹310
  2. ₹315
  3. ₹300
  4. ₹330
Show the answer

₹315 — 200 × 1.5 = 300; 300 × 1.05 = 315.

5. 8M events a day at about 2 KB each. Roughly how much raw data per year?

  1. ~600 GB
  2. ~600 TB
  3. ~60 TB
  4. ~6 TB
Show the answer

~6 TB — 8M × 2 KB = 16 GB/day; × 365 ≈ 5.8 TB. Round to ~6 TB and say so.

6. A driver averages ₹1,200 a day Monday–Friday, ₹2,000 on Saturday and ₹1,600 on Sunday. Daily average for the week?

  1. ₹1,371
  2. ₹1,600
  3. ₹1,400
  4. ₹1,267
Show the answer

₹1,371 — (5 × 1,200 + 2,000 + 1,600) / 7 = 9,600 / 7 ≈ ₹1,371. Averaging the three figures (₹1,600) ignores that weekdays count five times.

There are 8 questions, 3 puzzles and 5 recall cards for this lesson in the app — the recall cards come back on later days, just before you would forget.

Learn it so it stays. Read it, test yourself, then recall it on two different days. The app schedules that for you, free.

Start this lesson →