Careeroza
Real World Example
From Monolith to Microservices: A Typical Indian E-Commerce Journey
Many Indian startups (in quick commerce, food delivery and fintech) followed a path like this:
| Stage | Team size | Architecture |
|---|---|---|
| Launch | 5 developers | One Spring Boot monolith + MySQL on two VMs |
| Growth (1 lakh orders/day) | 30 developers | Gateway in front; catalogue and search extracted (strangler fig), Redis cache |
| Scale (10 lakh orders/day) | 100+ developers | Order, payment, inventory, delivery as services; Kafka; sagas; Kubernetes |
| Maturity | Many teams | Platform team: service templates, observability, canary releases, internal developer portal |
The lesson: microservices were adopted when team size and scale demanded them, one service at a time, with observability and automation built first.
A Service Template the Platform Team Provides
Template configuration
New services start from a template that already includes everything in this level, so teams only write business code:
application.yml
spring:
application:
name: ${SERVICE_NAME}
threads:
virtual:
enabled: true
config:
import: optional:configtree:/etc/secrets/
security:
oauth2:
resourceserver:
jwt:
issuer-uri: https://auth.shopease.in/realms/shopease
audiences: ${SERVICE_NAME}
kafka:
template:
observation-enabled: true
listener:
observation-enabled: true
server:
shutdown: graceful
management:
endpoints:
web:
exposure:
include: health,info,prometheus
endpoint:
health:
probes:
enabled: true
metrics:
tags:
application: ${SERVICE_NAME}
tracing:
sampling:
probability: 0.1
logging:
structured:
format:
console: ecsTip: The template also ships the Dockerfile, Kubernetes manifests, GitHub Actions workflow, outbox tables and Grafana dashboard. A new service goes from "git clone" to production in a day, and every service looks the same to the on-call engineer.