whoami

I write the code between you and your flight ticket.

Full-stack & DevOps engineer at Clarity Travel Technology Solutions, Chennai. I build and run the systems that turn “search flight” into “confirmed booking” across four GDSs and 30+ airlines — and I’m on call for the nights it doesn’t.

kavin@bastion: ~

kavin@bastion


OS
Ubuntu 26.04 LTS x86_64
Host
ThinkPad X1 Carbon Gen 13 · Core Ultra 7 265U
Kernel
6.17-generic
Shell
zsh · zinit · p10k
WM
tmux + Alacritty
Editor
Neovim (NvChad)
Langs
Go · Java · TypeScript
Cloud
AWS · Kubernetes
Uptime
coding since 2022
about

From mechanical drawings to microservices.

I started in mechanical engineering — a B.E. from 2018 to 2022 — before moving fully into software. Since January 2024 I've been at Clarity Travel Technology Solutions (ClarityTTS) in Chennai, working across a whitelabel travel-tech SaaS platform that spans 28+ microservices and talks to four GDSs and 30+ NDC airlines. Titled Junior Software Engineer, functioning as full-stack and DevOps in practice — I ship features and keep the infrastructure they run on healthy.

Outside of work: mechanical keyboards, working toward the CKA, Cisco CCNA, and AWS Solutions Architect – Associate, grinding Neetcode 150 in Java, and working through Designing Data-Intensive Applications.

Based in
Chennai, Tamil Nadu, India
Education
B.E., Mechanical Engineering (2018–2022)
Currently
Junior Software Engineer, ClarityTTS — since Jan 2024
Daily driver
Ubuntu 26.04 · zsh + tmux + Neovim (NvChad) · Alacritty
Working toward
CKA · Cisco CCNA · AWS Solutions Architect – Associate
experience

Where the work happens.

Clarity Travel Technology Solutions Junior Software Engineer
Jan 2024 — Present
Chennai, India

Full-stack and DevOps work on a whitelabel travel-tech SaaS platform: 28+ microservices, integrations with Sabre, Amadeus, Travelport and TBO, and 30+ NDC-connected airlines. Day to day that means building and maintaining services, and keeping the AWS EKS clusters they run on autoscaled, deployed, and observable.

NestJSExpress Spring BootGo Fiber KafkaRedis React / Next.js / VueAWS EKS KarpenterJenkins Azure DevOps
impact

Impact, measured.

A sample of changes where the before-and-after was worth writing down.

15×
fewer booking failures — a 30% failure rate driven down to 2%, straight to revenue
89%
faster API — p95 latency cut from 22.8s to 2.4s
~90%
lower monitoring spend — roughly $21k/year saved on observability
90%
smaller container images — a bloated build taken from 500MB to 50MB
95%
less storage — a dataset deduplicated from 19GB to under 1GB
projects

Things I've built and kept running.

~/booking-engine

Booking & Ticketing Engine

A rebuilt order-and-ticketing pipeline that processes flight booking flows across a fleet of small, independently deployable backend services.

Node.jsMicroservicesTravel-tech
~/content-normalizer

Airline Content Aggregator

Normalizes airline content from many carriers into one consistent shape, so downstream booking services don't have to handle each airline's quirks.

JavaQuarkusNDC
~/contract-platform

Contract Management Platform

An internal tool for managing airline contract and commission data — a fast API behind a modern, type-safe web front end.

ReactGoVite
~/delivery-pipelines

CI/CD → Kubernetes Delivery

Build-and-deploy pipelines and cluster tooling for the platform's cloud Kubernetes environment, with automatic node autoscaling behind a load balancer.

JenkinsKubernetesAWS
~/rag-mcp-lab

RAG / MCP Ecosystem

A personal lab for retrieval-augmented workflows and agent tooling — an orchestration layer, a vector store, and an API tying them together.

n8nQdrantFastAPI
~/.dotfiles

Workstation Bootstrap

Reproducible setup for a Linux dev machine — shell, editor, and tooling configs stitched together with GNU Stow and a few hundred lines of automation.

BashGNU StowAutomation
~/shell-scripts

Shell Script Toolkit

A published collection of Ubuntu setup scripts — checksum-verified installers for developer tooling, wired to CI.

BashCITooling
View on GitHub
~/mcp-servers

Custom MCP Servers

Two Model Context Protocol servers — one in Go, one in TypeScript — exposing 13+ tools so AI assistants can safely explore logs and query data.

GoTypeScriptMCP
~/load-testing

Load & Performance Testing

A funnel-based load-testing platform that simulates a full booking lifecycle under realistic traffic — surfacing real bottlenecks and proving where vertical scaling stops paying off.

k6GrafanaTypeScript
skills

The stack, and the shell around it.

Backend

  • NestJS
  • Express
  • Spring Boot
  • Go Fiber
  • Java · Go · TypeScript

Frontend

  • React
  • Next.js
  • Vue

AWS

  • EKS · ECR · Lambda
  • VPC · ALB · CloudFront
  • S3 · RDS · ElastiCache
  • SQS · CloudWatch · Karpenter
  • Secrets Manager · SSM Parameter Store

Platform & delivery

  • Docker · Kubernetes
  • Jenkins CI/CD
  • Azure DevOps

Data & messaging

  • PostgreSQL
  • ClickHouse
  • Redis
  • Kafka
  • Qdrant (vector)

Observability & testing

  • Grafana dashboards
  • k6 load testing
  • Playwright · Vitest
  • npm library publishing

Travel-tech domain

  • Sabre · Amadeus · Travelport · TBO
  • NDC (30+ airlines)

Terminal & tooling

  • zsh (zinit, powerlevel10k, fzf-tab, zoxide)
  • Neovim · tmux · Alacritty / Ghostty
  • ripgrep · fd · eza · bat · delta · sd · jq · fx
  • lazygit · lazydocker · k9s · btop
  • GNU Stow · 600+ kubectl aliases
recognition

Notes from the work.

Special appreciation for solo-owning a European airline's NDC cloud re-certification — mTLS client certificates, PCI-compliant card tokenization, and a zero-downtime production cutover.

— Senior Technical Architect, ClarityTTS

After the cutover, engineers on the partner airline's own team wrote back to thank me by name for driving the migration through.

— Partner airline engineering team

Called a Docker optimization — a Node.js image taken from 500MB to 50MB with multi-stage builds and non-root packaging — “a fantastic achievement,” to roll out across every project.

— Lead Engineer, ClarityTTS
contact

Say hello.

Best reached by email — I read everything, I just might reply from a terminal.

READ ~/hero git: main 0%