Taking on the CTO role at Online Saathi taught me more than any course could. Financial platforms don't forgive sloppy code — a bug in a transaction flow isn't just an inconvenience, it's someone's money.
The biggest shift for me was moving from "does this work" to "does this work when 10,000 people hit it at once, and what happens if the database connection drops mid-request." We built the backend around Node.js and Express, with MongoDB for the parts of the data model that needed flexibility and PostgreSQL where we needed strict consistency.
- Idempotency keys on every write endpoint — retries should never double-charge anyone.
- Structured logging from day one, not bolted on after the first production incident.
- A staging environment that mirrors production closely enough that "it worked on staging" actually means something.
If you're building something people trust with their money, slow down on the parts that touch cash, and move fast everywhere else.