open to new rolesSenior Software Engineer II · full stack · Bengaluru · on-site / hybrid / remote
I engineer the platforms that serve 3,000,000 players every day.
Full stack, from the Flutter app in your hand to the Go services, distributed databases and AI pipelines behind it. Promoted three times in five years. Your next engineer is scrolling past this sentence.
Most engineers pick a layer. I've shipped every layer of the same products to production: the Flutter app, the Go services behind it, the distributed data underneath, and the AI that feeds it content.
L1 · client
Flutter & native apps
tap → 16ms frame
Built Wordy from zero in Flutter and launched it on Android and iOS. Shipped Leagues, MiniGame and Daily Goals to 8M+ users across Flutter, Java and Objective-C, and built Daily Themed Crossword for Facebook Instant Games with Meta's team.
REST APIs and microservices for a puzzle portfolio played by millions, plus event-driven flows on Kafka. Backend and Cloudflare CDN tuning delivered +15% engagement, +10% retention and −12% load time.
A leaderboard platform on Redis + ScyllaDB adopted by 10 games (~3M daily players), and a coordination-free ID service for 1M+ DAU. Partition-aware models and caching that absorb thousands of writes per second.
An async orchestration platform across OpenAI and Gemini (5× images, 2.4× puzzles), and a private RAG assistant on Qdrant + Qwen3 (~30% support efficiency).
Real-time ranking at scale is a system I've already built: the Go + Redis + ScyllaDB platform behind 10 games. Here it is, applied to me. Hit ▲ to vote for what matters to your team.
LIVE · global leaderboardupdates: 0
// sorted set semantics, optimistic re-rank, 600ms transitions. Yes, I overthought this.
04 · don't read about it, play with it
My systems, in miniature.
Simplified, interactive versions of real systems I've shipped to production. Click everything.
full stack · flutter + go + redis + scylladb
The leaderboard platform behind 10 games.
One shared platform for global, regional and event rankings, replacing a separate implementation in every game. Clients batch score syncs every 30 seconds, Redis sorted sets serve ranks hot, and ScyllaDB keeps it all durable on partition-aware models. I built Leagues on top of it in Flutter.
10 games · ~3M daily players
FlutterGoRedisScyllaDB
↳ Tap Solve a puzzle on the phone and watch your score travel through the stack. Can you reach #1?
Weekly Leagueends 2d 14h
Flutter→Go API→Redis ZSET→ScyllaDB
writes/s 3,412p99 4msyou -
distributed systems · identity
Globally unique IDs. No coordination. No duplicates.
Every server owns a non-overlapping range and mints IDs locally. When a server dies, its leftover range is thrown away and the restart claims a fresh one, so an ID can never repeat. This model issues IDs to users across every game, device and login provider.
1M+ DAU · horizontally scalable
GoRedisScyllaDB
range allocator (persistent)next range → 4000
minted 0duplicates 0crashes survived 0
ai infrastructure · orchestration
The content pipeline that made engineering optional.
I saw that content production was the real bottleneck, so I built an async orchestration platform that generates, validates and publishes puzzles and images across several AI providers. The content team now ships to production on its own.
5× images · 2.4× puzzles
PythonFastAPIDockerFirestoreOpenAIGemini
generate
validate
review
publish
simulated rate 150+ images/dayshipped 0
applied ai · privacy-first rag
A support assistant that never leaks a byte.
BGE-M3 embeddings, Qdrant vector search, cross-encoder reranking and a self-hosted Qwen3 8B on Ollama. It drafts replies from past tickets, and every byte stays on company infrastructure.
~30% support efficiency
BGE-M3QdrantQwen3OllamaFastAPI
05 · career mode
Five years. Four levels. One company that kept promoting me.
PlaySimple GamesMar 2020 – present · Bengaluru
LVL 1
Intern
Mar 2020
LVL 2
Associate SE
May 2021
LVL 3
Senior SE
promoted
LVL 4 · current
Senior SE II
now · next level: your team
LB
ACHIEVEMENT UNLOCKED
Platform, not a feature
Replaced per-game leaderboards with one shared platform adopted by 10 games.
AI
ACHIEVEMENT UNLOCKED
Found the real bottleneck
Saw that content, not code, was slowing launches, and built the platform that fixed it.
400K
ACHIEVEMENT UNLOCKED
Business-critical backend
Led the backend platform for Crossword Go, played by 400K people every day.
0→1
ACHIEVEMENT UNLOCKED
Shipped a game from zero
Built Wordy from scratch in Flutter and launched it on Android and iOS.
TL
ACHIEVEMENT UNLOCKED
Team lead, twice
Leading the engineering teams behind Crossword Go (400K daily players) and Pawzzle!
ALL
ACHIEVEMENT UNLOCKED
Full-stack range
Leagues, MiniGame and Daily Goals across Go, Flutter, Android and iOS for 8M+ users.
06 · in the wild
Download my work. All five.
These aren't side projects. They're live games, played by hundreds of thousands of people every day, running on backends I built and led.
CROSS
Crossword Go
Team lead. I lead the engineering team and own the backend platform for content, gameplay and real-time player experiences, including leaderboards and events.
Flutter, Android and iOS on the front; Go, Redis and ScyllaDB on the back; AI pipelines feeding it all. A feature goes from screen to database without a hand-off.
02
Systems that survive scale
Partition-aware models, caching that holds up under thousands of writes per second, and failure modes I design for up front, not after the outage.
03
AI where it pays off
Not demos. Production pipelines and private RAG with measurable gains: 5×, 2.4×, ~30%.
04
An owner, not a ticket-taker
I find the bottleneck nobody filed a ticket for, then take it from architecture to production and across product, content and art teams.
?
09 · final clue
One last puzzle.
Every system I design ends in a consistent state. So does this page. Solve it, or skip straight to the buttons. I won't tell.
1 ACROSSWhat you should do after reading this page (4)