Live architecture cohort in Hindi/Hinglish · Real decisions, not diagrams · Weekends in India
Stop Building Like a Developer.
Start Thinking Like an Architect.
After 8 weeks you stop memorising patterns. You make decisions and defend them with trade-offs, failure modes, and real numbers.
We build only what is needed to learn architecture and system design. Tadka is a teaching system, not a production food-delivery product.
One codebase, Tadka: monolith toward four services and a gateway. No live coding. Class is decisions, diagrams, and running what is already in the repo. Not for beginners: you should already have built APIs, databases, and apps or services.
Scrub the evolution
Monolith + schema-per-domain
Week 1
What broke
Baseline: one deployable app, bounded contexts in folders, not five repos on day one.
What we earned
Start as a monolith with schema-per-domain so later extraction is a move, not a rewrite.
Measured, not marketed
Failure to Fix Evidence
Every move in the cohort is earned by a reproducible break, then fixed with captured before/after numbers.
Before
Double-tap POST /orders creates two orders and two charges.
Fix
Idempotency-Key: same key returns 200 with the same order id.
Captured
No key: 2 ids. Same key: 201 then 200.
Before
Concurrent PATCH /status: last writer wins, state lost.
Fix
Optimistic concurrency with xmin returns 409 on conflict.
Captured
Two confirms: 204 + 409.
Before
Sync payment + slow gateway: POST /orders ~9.2s, pool drains.
Fix
Polly timeout + bulkhead; async payment off the request path.
Captured
9.2s to ~2.1s; POST returns in ms.
Before
Payment service down: order pending, charge lost on sync bridge.
Fix
Kafka retains message; Outbox commits event with the order.
Captured
Lag 1, restart, Confirmed, lag 0.
Before
Restaurant down on sync HTTP read: order hot path fails.
Fix
Event-carried menu replica in ordering schema.
Captured
Restaurant down: order still 201, priced at 598 INR.
Before
Order stuck: grep five uncorrelated log streams.
Fix
traceparent on HTTP, outbox row, and Kafka consume.
Captured
One Jaeger trace: 9 spans across 4 services.
Before
Flaky payment gateway: retries hang for seconds.
Fix
Circuit breaker on Payment to gateway; transport-only retry.
Captured
OPEN: fail-fast ms. Recover: 698 INR order completes.
Before
Boxes on a slide with no monthly bill attached.
Fix
Cost model: honest minimal vs built isolation at 1 lakh/day.
Captured
~6,100 INR minimal vs ~31,300 INR built (~5x).
Before
Restaurant rejects after payment settles: order Cancelled, charge stays Completed.
Fix
Compensating Saga: refund-requested Outbox event, both choreography and orchestration modes.
Captured
Refund off: money stuck. Refund on: Cancelled + Refunded. Both saga modes: identical 10-span trace.
Before
A new Restaurant release deploys to 100% of traffic at once; a bug takes down every order.
Fix
Weighted canary at the gateway: hold a bad release to a small percentage, compare telemetry, roll back with a config flip.
Captured
Error rate tracks the configured weight (5/25/100%); rollback to 0% is instant, no redeploy.
Before
Concurrent requests queue until every thread and DB connection is burned.
Fix
Admission control: a zero-wait semaphore rejects excess concurrent requests immediately (429), never queues.
Captured
MaxConcurrent=3 + 15 concurrent requests: exactly 3x 201, rest 429 with Retry-After.
Before
A capstone chaos drill that only works if a human manually restarts services at the right moments.
Fix
Self-contained timed cascade: the script itself restarts Payment.Api and starts load, then stops Redis, then Kafka, then recovers.
Captured
T+0 Payment Slow, T+2m load, T+4m Redis down, T+6m Kafka down, full automatic recovery after.
How we teach
Every Decision Gets an ADR
This is the shape of every decision we write in class. Hiring managers care about this more than a certificate line on LinkedIn. A real decision from Week 5 of Tadka (ADR-028: Transactional Outbox + Inbox). We do not grade your copies.
How do we publish order events to Kafka without losing messages or double-charging?
Direct dual-write (DB + Kafka), Kafka transactions (EOS), Transactional Outbox + Inbox, or CDC/Debezium
Transactional Outbox on the producer, Inbox on the consumer.
Write the event into an outbox row in the same Postgres transaction as the order. One commit, both land or neither. A relay publishes to Kafka. Consumers deduplicate via an inbox table. You get exactly-once effect on at-least-once delivery.
More moving parts: outbox table, relay loop, inbox per consumer. Polling adds a little latency. But it is just code and two small tables. No new infra beyond Kafka.
Dual-write loses events on crash between DB commit and Kafka publish (Day 8 wound). Naive consumer double-charges on Kafka redelivery. Relay without SKIP LOCKED double-publishes when scaled to N pods.
At high volume, swap the polling relay for CDC (Debezium) or a library outbox like MassTransit. Add a DLQ when you hit a real poison message.
We write this shape in class: options, trade-offs, what breaks, when to revisit. You can keep a copy for interviews. There is no homework mark and no fail for C#.
61 decisions across 8 weeks
Full index ships in the Tadka repo. Below: one headline per week.
Monolith foundation
- ADR-002 · monolith-first
- ADR-003 · schema-per-domain
API + hardening
- ADR-011 · idempotency
- ADR-012 · optimistic concurrency
- ADR-056 · pessimistic locking (hot-row coupons)
Scale the database
- ADR-014 · indexing strategy
- ADR-016 · read replica + split
- ADR-057 · keyset cursor pagination
Cache + payment brownout
- ADR-021 · timeout + bulkhead
- ADR-023 · async payment
- ADR-049 · distributed rate limiting
Kafka, security, extraction
- ADR-028 · Outbox + Inbox
- ADR-029 · saga choreography
- ADR-052 · field-level PII encryption
4 services + gateway
- ADR-035 · API gateway YARP
- ADR-037 · event-carried read model
- ADR-061 · gateway weighted canary
Observability + resilience
- ADR-040 · OpenTelemetry
- ADR-043 · circuit breaker
- ADR-059 · backpressure admission control
Portfolio + load test
Load test readout, cost model, architecture portfolio.
The shift
Developer approach vs architect approach
Most engineers keep shipping features. Architects argue about what breaks at 10x and what that costs.
Developer Approach
Architect Approach
The capstone
Tadka: a teaching system, not a production app
We build only what is needed to learn architecture and system design.
One codebase through the architecture arc. Scrub it in the hero above. You clone and run it. You do not build a Swiggy clone from scratch, and there is no live coding.
44 ADRs
The repo documents the major moves. In class we write the seven fields on the board. We do not grade a homework pile.
4 services + gateway
The arc in the repo: monolith toward YARP, Kafka, a local menu replica. Enough to learn the split, not a production estate.
Load test readout
k6 smoke to stress: find the knee on Grafana. Week 8, measured, not guessed.
Cost model + portfolio doc
₹ honest minimal vs built stack, as a teaching readout. A template you can keep. We do not grade it.
Built with
The demo is .NET. The thinking works in Java, Go, or Node too.
Two tracks, same class
Run it in .NET or decide in your stack
Tadka ships in C#. There is no live coding and we do not grade you. Class is the same: decisions, diagrams, and a running demo.
.NET track
- Clone
day-NNbranches and run Docker Compose - Repo has the CRUD. Class does not type it with you.
- Break-kits with before/after numbers, when that day uses them
Decide track (Java / Node / Go)
- Black-box Docker: observe contracts, lag, traces, dashboards
- Weekly
option-space.mdmaps patterns to your stack - Weeks 6 to 8: watch Grafana and Jaeger, write the ADR; skip EF, YARP, and k6 authoring
Not for beginners. You should already have built APIs, databases, and apps or services. Non-.NET people run the same class.
Week by week
8 Weeks of Real Architectural Decisions
Each week builds on the last. Live class is the spine below. The repo has more: break-kits, toys, extra ADRs. We do not teach every file in the five live hours.
Weeks with a scrubber milestone sync with the hero explorer above.
Foundation & Domain Modeling
- · Developer to architect: ADRs and the four-step, not a new language
- · Domain model and schema-per-domain in one Postgres
- · Scale numbers you can defend. Tadka runs on your laptop.
Monolith API, State Machine & Hardening
- · REST contract and errors you can defend (400 / 422 / 404, one shape)
- · Server-side price and the order state machine
- · Double-tap, lost update, SMS after commit
Scaling the Monolith
- · When the query dies: index, pool, replica, before you add app boxes
- · Redis: cache-aside, and when the cache lies
- · Live status without polling
Modular Monolith & First Service Extraction
- · Module boundaries, then extract Payment
- · The four questions before you split
- · HTTP this week, Kafka next, on purpose
Distributed Backbone & Security
- · Dual-write, Outbox, saga: one database transaction is no longer enough
- · At-least-once delivery, not exactly-once magic
- · Auth at the service, not only the gateway
Completing the Service Split & Cloud Deployment
- · Restaurant, Delivery, and a gateway. Four services.
- · Identity stays a module. Not a fifth service.
- · Black-box cloud: bill and blast radius, not Terraform homework
Observability, Reliability & Failure Thinking
- · Traces and SLOs you can actually afford
- · Timeouts so one slow call does not take the site down
- · Kill Redis or Payment and watch it degrade, not cascade
Case Studies, Load Testing & Portfolio
- · Teardowns: Swiggy, Razorpay. Same problem, different choices.
- · k6: find the knee, read the bill
- · Portfolio doc you can send a hiring manager
Week 7–8 instruments
What you operate, not just what you draw
Traces, bills, and breaker state. The same panels we use when Tadka breaks on purpose.
Payment=Failing → trace ends at Payment (7 spans, no Delivery). Same dashboards in class.
What This Cohort Is NOT
Honest expectations before you commit your time and money.
Not a syntax bootcamp. The CRUD is already in the repo on every weekly branch. You clone it. Class is boundaries, contracts, and what breaks.
No live coding. We do not write the app with you in class. We do not walk line by line through FluentValidation or DbContext. You read the repo for that.
Not a production food-delivery product. We build only what is needed to learn architecture and system design.
Not a graded course. There is no rubric, no homework marks, no fail for C#. ADRs in class are practice, not a submission pile.
Not a certification prep course. We focus on how architects think, not exam memorization.
Not a high-level summary of 28 random systems. We go deep into ONE teaching system.
Not a tool checklist. MongoDB, Elasticsearch, Event Sourcing, and blue-green deployment are discussed as trade-offs, not forced into the build.
Not for beginners. You should already have developed APIs, worked with databases, and built apps or services. This is architectural thinking and structured system design, not how to write your first CRUD API.
Not a course where you install Kafka on day one because the syllabus said so. Each tool shows up when the teaching system actually needs it.
Who Is Teaching This

Deepak Mishra
The Desi Architect · Software Architect, 12+ years
Started from a non-CS background and learned the hard way, through real systems, real outages, and real design reviews. Today he architects distributed systems and AI products for enterprise and SaaS clients used by millions.
Tadka, the teaching system in this cohort, is one he built the same way he teaches it: write the ADR first, then prove it by breaking the running demo on purpose. You clone it. You do not live-code it.
What People Are Saying
Real feedback from mentees and the YouTube community.
"One of the most valuable career conversations I've had. He didn't give me a generic roadmap. He listened, understood my exact situation, and gave me a clear, practical direction I could act on immediately. The focus on fundamentals first, and knowing WHEN to use something rather than just HOW, completely shifted my thinking."
Shaad Ansari
Mentee via Topmate
"I'm currently transitioning into an Architect role, and this is the only YouTube channel I've found that truly focuses on that path. I discovered The Desi Architect about 3-4 weeks ago, watched all the videos, and have been eagerly waiting for new content. Finally, the wait is over!"
Mahesh Singh
YouTube viewer
"Deepak is a highly experienced architect and mentor. I absolutely enjoyed system design and architectural discussion with him."
Topmate review
5★ review, May 2026
"I am aspiring to be an architect in future and this video really helped open my eyes and give me real life insights about software architecture."
Rahul K
YouTube viewer
"Very clear system thinking, I am thankful to see this video exactly when I am not clear how to move to next level."
Nikhil Koranne
YouTube viewer
"Excellent Explanation, Flow is too good, and the examples are mind blowing (simple & clean). Keep it up!"
Bharat Kedia
YouTube viewer
Investment
Simple pricing
No hidden fees. No upsells. You pay once, you get everything.
Standard
Standard pricing applies to regular registrations
- 40 hours of live sessions (weekends). No live coding.
- Tadka teaching repo: clone, run, break. Not a production app you build from scratch.
- ADRs written in class. Practice, not a graded pile.
- Interview transfer inside the live break. Full mocks from Week 6. Design-Swiggy in Week 8.
- Discord community
- Session recordings (cohort duration + 6 months, watermarked)
First-session refund
Sit the first live class. If the teaching style is not for you, email before Week 2 and you get 100% back.
Join the Waitlist
Join the December batch waitlist. Seats are limited, so if you are serious about the cohort, sign up below. The cohort costs ₹24,999. We will contact you with joining details and any early bird pricing when the batch opens.
Sign in with your Google account to join the waitlist.
No payment needed to join the waitlist. The cohort costs ₹24,999. We'll notify you first when the batch opens, with any early bird pricing. By joining you agree to our privacy policy.
Frequently Asked Questions
Common questions about the cohort, the curriculum, and who should join.