GitOps CI/CD Pipeline with ArgoCD
The team was doing manual deployments — someone would SSH in, run scripts, hope nothing broke. I replaced that with a proper GitOps pipeline using ArgoCD and GitHub Actions across AKS and EKS clusters. Every deployment now goes through Git, gets reviewed, and deploys automatically.
✔ 80% reduction in deployment time
ArgoCDGitHub Actions
KubernetesHelmJenkins
Multi-Cloud Migration AWS & Azure
Migrated infrastructure to AWS and Azure, including PostgreSQL and Azure SQL databases. Everything was done with zero downtime and provisioned entirely with Terraform — so the new environment was reproducible and consistent from day one.
✔ Zero-downtime migration with full IaC
AWSAzure
TerraformPostgreSQLAzure SQL
Elasticsearch to OpenSearch Migration
Moved a live Elasticsearch cluster to OpenSearch without taking it down. Set up automated daily snapshots to Azure Blob Storage and built Slack alerts so the team would know immediately if a snapshot failed. No surprises.
✔ Zero-downtime migration with automated backup
OpenSearchElasticsearch
Azure BlobSlack APIAutomation
Full-Stack Observability Platform
The team had no real visibility into what their services were doing. I set up Grafana, Prometheus, and Loki across the microservices platform and added Kubecost so they could finally see where their cloud spend was going.
✔ Real-time visibility across all services
GrafanaPrometheus
LokiKubecostOpenSearch
Distributed Tracing with OpenTelemetry & Jaeger
Debugging failures across 10+ microservices was painful — the team would spend hours reading logs trying to trace what happened. I instrumented the services with OpenTelemetry and set up Jaeger so every request leaves a full trace. Now when something breaks, you click on the trace and see exactly where it went wrong.
✔ From hours of log-digging to instant root cause identification
OpenTelemetryJaeger
KubernetesGrafanaMicroservices
Zero-Trust IAM Implementation
Set up Keycloak and OAuth2 Proxy across a multi-tenant platform — every service properly authenticated, nothing exposed without auth. Also automated TLS with cert-manager and Let's Encrypt so certificates manage themselves.
✔ Secured APIs across multi-tenant platform
KeycloakOAuth2 Proxy
Cert-ManagerLet's EncryptNginx
Search Platform & BI Dashboards with OpenSearch & Superset
Deployed OpenSearch as the search engine behind a production application — the kind of fast, typo-tolerant search users expect. On top of that, connected Apache Superset so the team could build their own dashboards for BI reporting, infrastructure metrics, and data exploration. Entirely open-source — no Tableau or Elastic licences needed.
✔ Full search + BI platform on open-source stack — zero licence cost
OpenSearchApache Superset
KubernetesGrafanaPostgreSQL
Automated Secrets & Certificate Management
Two things that cause unnecessary incidents: expired certs and secrets in the wrong places. I fixed both. Cert-manager with Let's Encrypt handles all certificate renewals automatically — no manual work, no expiry surprises. The External Secrets Operator pulls credentials directly from Azure Key Vault and AWS Secrets Manager into Kubernetes — nothing hardcoded, nothing in Git.
✔ Zero cert expiry incidents · Zero hardcoded secrets in codebase
Cert-ManagerLet's Encrypt
External Secrets OperatorAzure Key VaultAWS Secrets Manager
Portfolio Infrastructure on AWS
This site is hosted on AWS S3 + CloudFront, provisioned with Terraform, and deployed automatically via GitHub Actions. SSL through ACM, DNS on Route 53. I eat my own cooking.
✔ Live proof of AWS + Terraform + CI/CD skills
AWS S3CloudFront
TerraformGitHub ActionsRoute 53