Anubhav Arora

Platform Engineer · CRIS, Ministry of Railways

Anubhav Arora I help run the platform behind India's train tickets.

Cloud, DevOps and Platform Engineer with 2.5 years in production infrastructure: Kubernetes and OpenShift, Terraform on AWS, GitOps with ArgoCD, and observability with Prometheus and Grafana. Pursuing an M.Tech in Cloud Computing at BITS Pilani.

  • 2.5 yrsproduction infrastructure
  • BITS PilaniM.Tech, Cloud Computing
  • AWS SAA-C03Solutions Architect Associate

Open to Cloud, DevOps, SRE and Platform roles in Delhi NCR and remote

Anubhav Arora, outdoors at sunset, wearing glasses and a striped scarf

whoami

anubhav · platform engineer @ CRIS

kubectl get skills -n anubhav

NAMESTATUS
kubernetesReady
openshiftReady
terraformReady
awsReady
argocdReady
prometheusReady

The system I work on

Passenger Reservation System, Indian Railways

At CRIS (Centre for Railway Information Systems, Ministry of Railways) I'm on the platform team behind PRS, the system that reserved train tickets across India go through, whether they're booked at a station counter, on IRCTC or in an app.

  • 1M+ transactions per second at Tatkal peaks One million every second, about 6 crore a minute.
  • 11,000+ trains on the system Every reserved seat and berth on them is sold through PRS.
  • 2 DCs Active-Active disaster recovery Both data centres serve live traffic; either can carry the load.
  • 1.5 lakh+ bookings a minute, the upgraded PRS's design target Up from 32,000, with 40 lakh+ enquiries a minute. PIB, Aug 2026

Tatkal? Tatkal is the daily window when last-minute tickets go on sale. Demand arrives in the first seconds, so the whole stack has to absorb a spike that is many times normal load.

What I do there

  • GitOps delivery

    ArgoCD deployments with Helm and Kustomize overlays for Java microservices on OpenShift.

  • Observability

    Prometheus and Grafana dashboards with alert thresholds for JVM heap and native memory, replication lag and cluster health.

  • Percona XtraDB Cluster

    Galera cluster on OpenShift via the Percona Operator: replication and GTID consistency, ProxySQL routing and hostgroups, and DC-to-DR failover checks against runbooks.

  • Aerospike Enterprise

    Bare-metal RHEL 9 clusters: health and partition monitoring with asadm, XDR replication checks, and backup and restore to S3-compatible storage.

  • Hazelcast Enterprise

    In-memory data grid across DC and DR: IMap utilisation, WAN replication queues, near-cache behaviour and CP Subsystem locks.

Experience

Where I've worked

  1. Platform Engineer

    VVDN Technologies · deployed at CRIS, Ministry of Railways

    May 2026 – PresentDelhi

    Production platform for the Passenger Reservation System: OpenShift, GitOps, distributed databases and in-memory data grids across an Active-Active DR setup. What I do there ↑

    • OpenShift
    • ArgoCD
    • Helm
    • Kustomize
    • Percona XtraDB
    • Aerospike
    • Hazelcast
    • Prometheus
    • Grafana
  2. DevOps & Infrastructure Engineer

    HCLTech · UCSF healthcare project

    Dec 2023 – Dec 2025Noida

    Infrastructure and delivery for a healthcare platform in a regulated environment.

    • Modular Terraform for AWS (VPC, EC2, S3, IAM, security groups) with S3 remote state and DynamoDB locking, giving reproducible dev, staging and production environments.
    • Jenkins pipelines for build, test and deploy, with environment-specific promotion between stages.
    • Kubernetes deployments across dev, staging and prod: pod failure triage, resource limits, liveness and readiness probes, rolling updates.
    • Administered 50+ RHEL and Ubuntu servers; automated routine operations with Bash.
    • Prometheus and Grafana alert rules and dashboards for faster detection and incident response.
    • AWS
    • Terraform
    • Jenkins
    • Kubernetes
    • RHEL
    • Bash
    • Prometheus
    • Grafana

Projects

Things I've built

Each one is public on GitHub, with the code, manifests and a README that explains the design.

RailBook

Train ticket booking as microservices, on Kubernetes

M.Tech coursework, BITS Pilani (Scalable Services)

The problem

Two people press Book on the last seat at the same moment. Exactly one of them should get it, even with several replicas of each service and a network that drops calls.

What I built

  • Two FastAPI services, inventory and booking, each owning its own PostgreSQL deployed as a StatefulSet.
  • A booking saga: hold seats, take payment, confirm; on any failure, compensate by releasing the seats.
  • No overbooking: seat holds lock the schedule row (SELECT … FOR UPDATE), so concurrent requests on any replica can't sell the same seat twice.
  • Resilient calls: 3-second timeouts and 3 retries with exponential backoff, made safe by using the PNR as an idempotency key.
  • Probes, resource limits, ConfigMaps and Secrets; an HPA scales inventory from 2 to 5 pods under load.
  • GitHub Actions tests each service and pushes its image to Docker Hub.
RailBook architecture A client calls booking-service. Booking-service holds and releases seats through inventory-service over REST with timeouts, retries and an idempotency key. Each service has its own PostgreSQL database. Inventory-service autoscales from 2 to 5 pods. Everything runs in the railbook Kubernetes namespace. namespace: railbook Client POST /bookings booking-service saga · PNR inventory-service seats · holds HPA 2→5 hold / release booking_db inventory_db retries + idempotency key row lock: no overbooking
  • Kubernetes
  • FastAPI
  • PostgreSQL
  • Docker
  • GitHub Actions
  • HPA

AWS infrastructure with Terraform

One codebase, dev and prod, with locked remote state

Personal project

The problem

Hand-built cloud environments drift apart, and two people running terraform apply at once can corrupt shared state.

What I built

  • Reusable network and compute modules; dev and prod are thin wrappers with their own CIDRs and sizes.
  • Remote state in S3 (versioned, encrypted, TLS-only) with DynamoDB locking, both created by a small bootstrap stack.
  • Hardened EC2: latest Amazon Linux 2023, IMDSv2 required, encrypted gp3, shell through SSM Session Manager instead of an open port 22.
  • CI on every push: fmt, validate, tflint, and terraform test suites that mock the AWS provider, so security rules are checked without an AWS account.
  • Root-caused orphaned route tables left by a partial destroy, and documented the fix.
Terraform repository layout The dev and prod environments both use the network and compute modules. Each environment stores its state in an S3 bucket and locks it in a DynamoDB table, both created by a bootstrap stack. GitHub Actions runs fmt, validate, tflint and terraform test on every push. envs/ dev prod modules/ network compute bootstrap/ · remote state S3 state DynamoDB lock one writer at a time GitHub Actions fmt validate tflint test
  • Terraform
  • AWS VPC
  • EC2
  • S3
  • DynamoDB
  • IAM
  • GitHub Actions

GitOps on AWS EKS

From git push to a live HTTPS app, with no kubectl apply

Guided build of TrainWithShubham's open-source EasyShop app; I deployed and debugged it end to end

The problem

Ship a three-tier app so that a commit is the only manual step: build, publish, deploy and TLS all follow from git.

What I built

  • Terraform for the VPC, EKS cluster, worker nodes and a bastion host.
  • Jenkins pipeline on a GitHub webhook: build the image, push to Docker Hub, then bump the image tag in the manifests through a shared library.
  • ArgoCD watches the manifests and auto-syncs 13 resources into the cluster.
  • NGINX Ingress with cert-manager issuing Let's Encrypt certificates; MongoDB as a StatefulSet; an HPA from 2 to 5 replicas at 70% CPU; a migration Job.
  • Debugged Docker socket permissions on the Jenkins host and a TLS certificate stuck on the ACME HTTP-01 challenge (DNS propagation).
GitOps pipeline on AWS EKS A git push triggers Jenkins, which builds the image, pushes it to Docker Hub and bumps the image tag in the Kubernetes manifests. ArgoCD syncs the manifests into the EKS cluster, where NGINX Ingress with cert-manager TLS fronts the app, which scales from 2 to 5 replicas, and a MongoDB StatefulSet. git push Jenkins Docker Hub bump image tag k8s manifests (git) ArgoCD auto-sync AWS EKS · namespace easyshop NGINX Ingress cert-manager TLS app HPA 2→5 MongoDB
  • AWS EKS
  • Terraform
  • Jenkins
  • ArgoCD
  • NGINX Ingress
  • cert-manager
  • MongoDB

Skills

What I work with

Cloud & IaC

  • AWS (EC2, VPC, S3, IAM, CloudWatch)
  • Terraform
  • Helm
  • Kustomize

Containers & delivery

  • Kubernetes
  • OpenShift 4.x
  • Docker
  • ArgoCD
  • Jenkins
  • GitHub Actions
  • Git

Distributed data

  • Aerospike Enterprise
  • Hazelcast Enterprise
  • Percona XtraDB (Galera)
  • ProxySQL
  • Kafka
  • PostgreSQL

Observability

  • Prometheus
  • Grafana
  • CloudWatch
  • Alerting & dashboards

OS & scripting

  • RHEL 9
  • Ubuntu
  • Bash
  • Python
  • PowerShell

Operations

  • Runbooks & RCA
  • ITIL incident & change
  • ServiceNow

Certifications

  • SAA-C03AWS Certified Solutions Architect – Associate
  • AZ-900Microsoft Azure Fundamentals
  • MS-900Microsoft 365 Fundamentals
  • ITIL 4ITIL 4 Service Management

Also: Microsoft Power BI Data Analyst (PL-300)

Education

  • BITS Pilani

    M.Tech, Cloud Computing

    Work Integrated Learning Programme · 2025 – 2027 (expected)

  • MAIT, Delhi

    B.Tech, Electronics & Communication

    CGPA 8.44 · 2019 – 2023

Let's talk

I'm looking for Cloud, DevOps, SRE and Platform roles in Delhi NCR and remote. Email is the fastest way to reach me.

Delhi NCR, India