Gurukul — an old discipline

Ten years of craft in iOS

I build for the Apple ecosystem — iOS, iPadOS, tvOS and visionOS. A decade of Swift, from live transit tracking to streaming at scale, and most recently a finance app I shipped alone, backend included.

  • 10+Years shipping
  • 18Apps from one codebase
  • 90%+Test coverage
One core · every Apple platform
scroll to explore

In the old schools, a craft was earned through repetition — the same stroke, thrown again, until the hand stopped shaking. Ten rings, one per year. The wheel keeps a slow turn on its own; effort only ever adds to it.

Selected work

Only what shipped to the App Store, or what a lot of shipped apps were built on.

Also shipped

Ten years across six domains. The early ones taught me Objective-C; the later ones are why I write Swift the way I do.

The craft

Five things I believe, and the work that had to pay for each one.

Sthapatya — the building of it

One owner per idea

Any number computed twice will disagree eventually. When a bug needs four fixes at four call sites, that isn't a hard bug — it's a value with no owner. I'd rather ship three similar lines than one abstraction invented before it was needed.

Paid for on Fuse
Laya — tempo and flow

Tests are what make speed safe

Coverage past 90% was never the goal in itself. It was the price of being able to change shared code on a Friday and still sleep that night.

Learned the hard way on Fuse and First Bus
Drishti — the way it is seen

Accessibility is structural

A focus engine retrofitted late is a rewrite, not a feature. Building VoiceOver and tvOS Focus support from scratch cost less than bolting either one on afterwards would have — and it decided how the view layer was shaped.

Built into Fuse from the first commit
Satya — what it says when it fails

Say the true thing when it breaks

Software fails. What it says while failing is a design decision, and usually an afterthought. When MoMudra's AI genuinely can't answer, it says so plainly — no red alarm, no invented result, and the question stays retryable.

Proven on MoMudra — read the study
Abhyāsa — practice, repeated

Retooling is the job now

I work with agents daily — Claude Code, Cursor, Codex, Xcode's own coding intelligence. The discipline is simple and non-negotiable: an agent may draft, but I review every line and I never ship what I can't explain. Ten years in, the willingness to learn the tools again is worth more than any framework I already know.

Practised on MoMudra — drafted with agents, reviewed line by line

The path

Not a list of jobs — the four times the question I was being asked changed. The tools beside each one are the honest record of what a decade actually looks like.

  • 2021 — Present · Robosoft · Bengaluru, remote

    Scale changed the question

    One shared source, many shipping brands — so every choice I made was a choice made on behalf of teams I will never meet. The question stopped being “does this work” and became “what does this cost whoever inherits it.”

    The codebase taught me more than any course could. Feature flags, design tokens, XcodeGen, interactors and templates, dependency injection, an AppObserver pattern that keeps AppDelegate almost empty — reading code that good is its own apprenticeship.

    Swift 6 · SwiftUI · tvOS · visionOS · XcodeGen · Sonar Cloud

  • 2019 — 2020 · Bajaj Markets · Pune

    Money on the other side

    The first place a mistake would cost someone money rather than a session. Convenience stopped being a neutral word to me here — a shortcut through an auth boundary is a promise you are making on the user's behalf, whether or not you meant to.

    Deep Linking · CMS-driven layout · WebView auth · Jira

  • 2018 — 2019 · Muvi · Bhubaneswar

    Building for builders

    Muvi's customers stood up their own streaming services on what we shipped. Writing for other developers instead of end users is the first time an awkward API stops being your opinion and becomes someone else's whole afternoon.

    Swift · Alamofire · MVVM · Crashlytics · Unit Tests

  • 2016 — 2018 · Mobiona · Bhubaneswar

    Where it started

    A services shop, so a lot of work came across the desk — Objective-C giving way to Swift, one project at a time. This is where I hit the things nobody teaches you: project-file conflicts, why code needs a repository at all, animation timing, and SOAP and XML that did not want to be parsed.

    I stayed because of what I could see underneath it. The tools for building here, and the standard the platform holds you to, were better than anything else I had touched — and every piece of knowledge made the next piece easier. It compounds. That is the whole reason I am still at it.

    Objective-C · UIKit · Core Data · Realm · Storyboards · SOAP / XML

What hasn't changed

  • Maintainable over cleverCode the next person can change without asking me first.
  • Owned end to endRequirement, architecture, delivery, release — not just the ticket.
  • Tested before shippedFrom a first unit test to coverage past 90% on a shared codebase.
  • Relearning the toolsObjective-C to Swift to SwiftUI to working alongside agents.

“Lift yourself by your own self. Do not let yourself sink.”

Bhagavad Gītā 6.5 · uddhared ātmanātmānam

Get in touch

Have something worth building?

diptiranjan.rout.ios@gmail.com