Systems
How I Design Systems
I start with the problem, not the code.
I first understand the requirements, the users, and what the feature is actually solving. Then I turn that understanding into a clear technical design — mapping the user journey, sequence of interactions, UI components, APIs, database models, and the services behind them.
Problem → Requirements → User Flow → Architecture → UI → APIs → Data → Implementation
Explore the interactive diagrams to see how I break down a feature, connect the pieces, and make the technical decisions that bring it to life.
Authentication & Authorization
Secure access patterns
Who is the user, and what are they allowed to do? Pick a topic below to walk through the flow step by step.
Distributed Systems
Architecture patterns
Backend for Frontend
BFF + OIDC/OAuth PKCE via Google — Redis stores PKCE and sessions, server-side token exchange, HttpOnly cookie, Resource API proxy.
Swipe left to explore the full diagram →