Zerodha engineering

14 stories · no recent posts· zerodha.tech

Hugo RSS at /index.xml; no new posts since Mar 2024.

The remoteness of remote work
Zerodha

TL;DR Like numerous other orgs, we transitioned (actually, flipped overnight) to being fully remote during the first COVID pandemic lockdown in 2020. It worked out great in the first year, started losing its sheen in the second year, and became detrimental to creativity and…

1.5+ million PDFs in 25 minutes
Zerodha

At Zerodha, many million users login and use our financial platforms every day. Over the recent months, on an average day, 1.5+ million users have been executing stock and derivative transactions. On a volatile day, this number could easily double. After a trading session…

Logging at Zerodha
Zerodha

At Zerodha, we run a multitude of internal and public-facing services that generate copious amounts of logs. While developers use these logs to debug or troubleshoot incidents, some services also emit logs that must be persisted for prolonged periods to comply with numerous…

User disengagement
Zerodha

Over time, I have come to realise that the term user “engagement” in software, more often than not, is a thinly veiled proxy for user entrapment, whether intentional on the part of software designers or not. The trend of shallow user numbers and “engagement” metrics taking…

From Native to React Native to Flutter
Zerodha

At Zerodha, the first mobile version our flagship trading platform Kite was written as a native Android app in 2015. After building a cross-platform version in React Native in 2017, we finally settled for a full rewrite in Flutter in 2018, a choice that has paid off really well…

Scaling with common sense #2: Being future ready.
Zerodha

Over the last year, owing to the unexpected rally in capital markets, Zerodha’s customer base has more than tripled, significantly increasing the number of concurrent users on our platforms along with the traffic and load they generate on numerous systems in the background. For…

Working with PostgreSQL
Zerodha

This post is in the context of the large, data heavy PostgreSQL instances that store historical transactional data and reports, the databases that power Console and its large scale number crunching and reporting. It talks about how we self-host, tune, and manage all our DB…

A lesson in creating and using niche business DSLs at scale
Zerodha

At Zerodha, we process millions of trades in real-time, where each trade comes into the system as concurrent high throughput HTTP requests. Each trade increases the latency for subsequent orders in the queue that are under processing at the same time at our OMS (Order Management…

Alar: The making of an open source dictionary
Zerodha

ನಮಸ್ಕಾರ (Namaskāra)! This is not a post on fintech, or even technology for that matter. This is the story of a product of tenacity, selflessness, and passion; a product that will transcend and outlive most technology we know of. This is the story of a massive dictionary that…

Scaling with common sense
Zerodha

“Scaling” is not a specific technique but an entire spectrum that stretches all the way from “Google scale” to the K8s cluster Karan runs on a Raspberry Pi plugged into a 12V shaver outlet in his bathroom to encrypt his DNS queries for peak privacy, while he asks Alexa to dim…

Infrastructure monitoring with Prometheus at Zerodha
Zerodha

On any given day, we handle around 15% of daily retail trading volume across all stock exchanges in India. Billions of requests generated in the process are handled by a suite of systems we have built in-house. Also, we are very particular on self-hosting as many dependencies as…

Hello, World!
Zerodha

Zerodha, now India’s largest stock broker, bootstrapped and profitable, turns ten years old this year. The Zerodha tech team turns seven years old. The tech team has remained largely elusive over the course of our existence. While we have pondered starting a tech blog for more…

Projects
Zerodha

Apps libredesk ★ 3102 Go Open-source, self-hosted customer support desk in a single binary. A lightweight alternative to Intercom, Zendesk, Chatwoot. GNU Affero General Public License v3.0 Last updated on November 1, 2026 listmonk ★ 24103 Go High performance, self-hosted,…

Zerodha's FOSS stack
Zerodha

Languages Go Python Java JavaScript Dart Databases PostgreSQL ClickHouse Redis SSDB ScyllaDB DuckDB MySQL Webservers and proxies Nginx HAProxy Kong Streams & Queues NATS Kafka Redpanda Console UI Benthos Observability & Monitoring Vector Grafana VictoriaMetrics Alertmanager…