How Apache YuniKorn Taught Our Kubernetes Cluster to Play Tetris
A story about Spark, scheduling, and a cloud bill that refused to make sense. Chapter 1: A Fresh Start on Kubernetes Every migration story starts with optimism, and ours was no different. We had just moved our Spark workloads from EMR to Kubernetes (EKS). On paper, it was…
You already have the data. Compass is how everyone asks it. You already know the question. What was DAU today? What’s the order’s success rate over the last few months? How many new users did X and Y, and are they sitting at the stage of doing Z? This escalation just landed.…
How Razorpay Moved 2,500 DAGs to Airflow 3, One DAG at a Time
Airflow, the scheduler behind Razorpay’s batch data pipelines, now runs on version 3.3, and we led the move from 2.10. It runs more than 2,700 DAGs and about 11,000 task runs a day, and we got there without a big-bang cutover. The official upgrade guide is the place to start for…
Nobody Knows What's in the Wire: How Groww Moves Money Between India and Wall Street
How Groww tracks cross-border payments between India and the US, ensuring every dollar is accounted for. Author: Aditi Gour Introduction Every business day, SWIFT wires cross between India and the US, and each one carries many people's money in a single lump. Deposits travel out…
Most production incidents do not begin with a server dying. They begin with a deployment: dozens a day, across hundreds of services, each the moment risk enters the system. We run payments infrastructure at Razorpay. When a payments system degrades, transactions fail: merchants…
Inside Razorpay’s RTO Model: The Engineering Behind its ML Lifecycle
Contributor: Abhik Debnath In this article, we use Razorpay’s Return to Origin (RTO) risk model to explain the ML lifecycle: how we build a reproducible release, deploy it into checkout, monitor its behaviour, and use later outcomes to evaluate whether it needs retraining. We…
This article explains how a Storage Pool absorbed the boot disks and made them almost free. The same boot disks also became home to ephemeral data such as Trino cache, task spill, and Spark shuffle through emptyDir. But this introduced an unexpected problem: deleted transient…
Cost-Optimized Kafka Architecture on GCP Storage Pools
This article explains how multiple Kafka clusters went on a storage diet when we moved from a traditional fixed-cost disk architecture to a Storage Pool model. We will follow Kafka from its recovery and performance requirements through Strimzi KafkaNodePools, zonal placement,…
From Tool-Hopping to Talking: Reimagining Datacenter Observability with NETRA
It’s 3:00 AM. The glare of a monitor cuts through a pitch-black room as a critical alert pierces your sleep. Seconds later, you’re locked in a familiar, exhausting ritual: eight browser tabs open, bouncing frantically from Grafana metrics to Loki log streams, then over to Jira…
You already have the data. Compass is how everyone asks it. You already know the question. What was DAU today? What’s the order's success rate over the last few months. How many new users did X and Y, and are they sitting at the stage of doing Z? This escalation just landed.…
One Autovacuum Away: Partitioning slice’s Billion-Row Transaction Tables Without Downtime
Preface One evening Postgres ran a routine ANALYZE on one of our tables. Within minutes, one of our payment products was degraded. Nothing had been deployed. No migration, no config change, and traffic was normal. Yet the database writer was saturated, latency on the transaction…
Scaling ML Model Inference through architectural separation
The model is only one part of the inference pipeline. At scale, the work happening around it, from routing requests to coordinating downstream dependencies, can have a much bigger impact on latency and efficiency. We addressed this by separating model execution from request…
From Experimentation to Scale: PhonePe’s AI Journey in HR
At PhonePe, our strategy for AI in HR was never about deploying a single, generic solution. Instead, we set out to build a fit for purpose ecosystem prioritizing speed, flexibility, and accuracy embedded directly into daily workflows. AI Readiness began before AI. We have been…
Groww Lite: Building a Disaster-Resilient Trading System
How we built a minimal, independent path to the exchange that stays up even when the rest of Groww doesn’t. Author: Gaurav Agrawal Why Groww Lite Exists Every large trading platform eventually runs into the same uncomfortable truth: A rich product experience might involve using…
Zoomable RecyclerView: Enabling Pinch-to-Zoom and Panning in Android RecyclerViews
Introduction Android’s native RecyclerView is exceptionally efficient at handling large datasets through item recycling, but it lacks native support for spatial interactions like pinch-to-zoom and canvas-level panning. For complex layouts—such as interactive retail grids or…
Preface The UPI Switch at Razorpay has evolved significantly in the five years since we started building it. The Switch is the platform that enables real-time payment processing with NPCI. When the team began, it was little more than an idea. Today it powers more than 70% of…
How Razorpay Cut Its Metrics Bill by 62% Without Losing a Dashboard
Contributor: Saijal Shrivastava We cut our metrics ingestion by 62% without deleting a single useful dashboard or breaking an alert. Daily ingestion dropped from about 450 billion samples to about 170 billion. The surprising part was not one large optimization. It was three…
Lens: Give Your Entire Team X-Ray Vision Into Your Android App
Lens lets your team see what is happening inside a running mobile app—from a normal web browser. You Know This Bug, Right? It is Friday afternoon. QA tells you that the profile screen is blank after login. You open the same app, follow the same steps, and everything works. The…
Holding Revamp Went Live. Then Reality Check Hit Hard
Introduction In the previous article, we shared how we redesigned Holdings retrieval to eliminate unnecessary work. The architecture looked solid, and the rollout was ready. Then we deployed it. With millions of users accessing Holdings every day, the rollout looked healthy…
CI Doesn’t Need On-Demand: Moving Our Build Pipelines to Spot Instances
Contributors: Guptaanuj CI/CD pipelines have always had a money-vs-stability problem. Run on-demand AWS instances and your build infrastructure is rock solid, expensive, and predictable. Run on spot instances and your costs drop 70–90%, but AWS can pull the rug with 2 minutes of…
Refusing the Haystack: How Groww’s Cyber Defence Team Scales Detection and Response
There’s a version of a security operations centre that exists mainly to be pointed at. It ingests every log it can reach, lights up a wall of dashboards, and staffs a rotation around the clock so that, if anyone asks, the answer is “yes, someone is watching.” It satisfies an…
TraceMind: Automating the Chaos of Crash Debugging
The Debugging Dilemma: Why TraceMind? In a complex mobile ecosystem, debugging a single production crash is rarely a straightforward task. Historically, developers at PhonePe faced a fragmented landscape of data points. When a crash alert hit, an engineer would often spend…
From Gatekeeper to Strategic Catalyst: How GenAI is Transforming Compliance at PhonePe
India is undergoing a massive digital transformation, and at the heart of this revolution is PhonePe, enabling seamless payments and financial services for over 700 million registered users across Bharat. When you build at this kind of population scale, handling millions of…
3DS vs 3DS2 explained: risk-based authentication, frictionless flow, global mandates in the EU, India, Japan & Australia, and what changed after 3DS1's sunset
How We Refresh Razorpay's Data Warehouse 10x Faster with Graphs and Indexes
Contributors: Utkarsh Koppikar Rohan Background Razorpay provides the payment infrastructure for millions of merchants globally. Behind every payment, settlement, and refund is a microservices architecture where each service owns its own database. While this keeps services…
Improving the Efficiency of Rendering User Holdings
Introduction At 9:15 AM IST, the opening bell rings on the Indian stock market — and millions of investors reach for the same screen. Within seconds, millions of investors open the Holdings page. They want to know how overnight news has impacted their stocks, whether they’re in…
How AI-Driven Automation is Scaling PhonePe’s Customer Support Framework
At PhonePe, we process a staggering 400 million transactions a day—amounting to over 10 billion monthly, operating at a scale that places it among the largest payment platforms globally. Managing such scale would typically require a massive customer support infrastructure for…
Running Hermes at Razorpay: a Network-isolated, Self-improving “Second Brain” for every Employee
How we run a personal AI agent for everyone at Razorpay: always on, multi-model, and safe by construction. Contributors: Siddharth Tripathi Today, more than 220 Razorpay employees each have their own always-on AI agent. On a typical day, about 84 of them are actively working.…
Engineering Agent Hub: How PhonePe Built a Production-Grade Internal AI Platform
Over the past couple of years, PhonePe’s journey toward operationalizing AI began with a search for external platforms capable of automating complex, cognitive business processes. However, as we tested various AI tools for our engineering and operational requirements, we…
How a Custom Keyboard Transformed Our App Experience
Author: Nishant Kumar Delivering a seamless, fast, and reliable user experience is at the core of everything we do at Groww. In trading and investing, every second and every user action counts, so optimising even the smallest interface element can make a meaningful difference.…
Turning Scattered Data Into Queryable Segments at Scale: How Razorpay Built Its Customer Data…
Turning Scattered Data Into Queryable Segments at Scale: How Razorpay Built Its Customer Data Platform A consent-native CDP that serves audience segments across 500M+ user profiles in under 30ms, with PII isolated to the source systems. The Problem We Were Solving A customer…
How CRED made disaster recovery drills push-button simple
Our members trust CRED with their money. They rely on us to clear bills, manage credit, and track their financial lives. This means that if we go down, someone’s EMI is late, someone’s credit score takes a hit, someone’s financial plan falls apart. With over 1,000 microservices…
Global Checkout Design: The Multi-Market Playbook for Higher Conversions
Global checkout design guide for lifting conversion with local payment methods, currency UX, smart routing, tokenization, card updater services, 3DS, and retries.
One RecyclerView to Rule Them All — Custom LayoutManager for Option Chain : Pt 1
Quick primer for non-traders: an option chain is the core screen option traders live on. The middle column is a list of strike prices (the price at which a contract can be exercised). To the left sit the Call contracts for each strike (used to bet on the price going up); to the…
From 750 Hours to 2 Hours: AI-Powered Security Triage at Razorpay
Co-authors: Mahlaqahaque Mh, Keertiv, Hari Prasad Pujari How we taught AI to read code like a senior security engineer Every day, Razorpay engineers ship thousands of lines of code. Every line births new security findings. SAST scanners flag suspicious patterns. Dependency…
Goodbye ClickOps: Building GCP Load Balancers the Kube-Native Way
Author: Shivam Narula At Groww, our infrastructure runs on Google Cloud Platform (GCP) and is managed declaratively using Crossplane. As our platform grew, our engineering teams needed to provision load balancers across a wide range of configurations: external and internal,…
The System Behind Every Seller Payout: How Meesho Rebuilt Trust at Scale
Every morning, lakhs of Meesho sellers open their payment tab looking for one simple thing: confirmation that the orders they fulfilled have translated into money they can trust. For a seller, a payout is not just a bank transfer. It is a working capital. It is confidence to…
Network Tokenization vs PCI Tokenization: Differences, Architecture, and Which One Lifts Authorization Rates
Network tokenization vs PCI tokenization: how they differ at the architecture level, what each does to authorization rates, fraud, PCI scope, and vendor lock-in
When processing billions of transactions in a system as large as PhonePe, underlying databases go through constant querying, repairs and management. While a set of these tasks are automated, some are managed by human users. This leaves a potential risk of unauthorised/untracked…
Building a payment intelligence agent enterprises can actually trust
Discover how Juspay built Genius, a reliable AI payment intelligence agent. Learn about agent harness, schema grounding, and multi-agent systems for accurate enterprise analytics.
The Signal in the Noise: Scaling Observability with SLO-Driven Alerting
Author: Kartik Ukhalkar In a typical SOA, if your service is misbehaving, what is the most efficient way to detect it while minimising the noise? Whether you are an administrator or developer, you would have thought about this problem a few times. We asked ourselves the same…
Razorpay Oncall Agent: From 30-Minute Investigations to 90-Second AI Analysis
Our on-call engineers were spending 30 minutes investigating every production alert. Here’s what happened when we automated it. At 3 AM, alerts don’t care about your sleep schedule. When our payment infrastructure threw an error last month, our on-call engineer spent 32 minutes…
3DS Payments Simplified: Understanding Authentication and 3DS 2.0
3DS 2.0 is updated to deal with current challenges, while enhancing security, improving user experience, and reducing friction during online transactions.
Biometric Payment: The Future of Secure Transactions
Explore biometric payment methods and their role in secure transactions. Learn about biometric payment systems, benefits, challenges, and the future of digital payments.
Google's Universal Commerce Protocol: What It Means for Payment Orchestration
Google's Universal Commerce Protocol (UCP) enables AI agents to purchase across the web. Learn how payment orchestration solves multi-protocol commerce challenges.