- The constraint
- A fast-growing social commerce company where every team was rebuilding the same five things, slightly differently, every quarter.
- Who I talked to
- engineering leadership
Context
Evermos is a social commerce platform with resellers across Indonesia and a product organisation that moved quickly. When I joined as lead platform engineer in 2021 the symptom was familiar: every squad implemented its own search, its own way to talk to WhatsApp, its own access-control checks, and its own data sync. Each was fine on its own. Together they were a tax on every new feature.
The constraint
Platform work only pays off if teams actually adopt it, and teams adopt what is easier than building their own. Every platform had to be simpler to integrate than the do-it-yourself version, backed by a Kubernetes foundation that made deploying one more service boring, and measured by the time it saved.
Architecture
graph TB
subgraph Product squads
P1[Shop] --> S
P2[Reseller app] --> S
P3[Ops tools] --> S
end
S{Platform APIs}
S --> SE[Search]
S --> CDC[Change data capture]
S --> WA[WhatsApp core]
S --> CRM[CRM]
S --> RB[RBAC]
S --> FIN[Finance tooling]
SE & CDC & WA & CRM & RB & FIN --> K8[(Kubernetes on AWS + GCP)]Each platform is a service with a small, opinionated API and a setup step measured in minutes: declare an index and get search; declare a schema and get change data capture into Kafka; call one endpoint and a WhatsApp OTP goes out. All of it runs on a Kubernetes foundation I designed, so a squad adding a service inherits deployment, observability and access control without asking.
What I did
I designed the architecture for each platform and built or led the build of all seven. I set the engineering practices around them and shaped the culture that made “use the platform” the default. The finance platform rests on an integration I built with Oracle NetSuite over SuiteTalk REST for sales orders, invoices and customer payments. Later I added the company’s first AI features: a transactional chatbot on Azure OpenAI that answers reseller FAQs and creates orders through tool calling, with a confirmation step before every write and its service identity scoped through the RBAC platform, and retrieval on Amazon Bedrock Knowledge Bases to ground its answers.
The people I talked to were engineering leadership and the squad leads who would either adopt a platform or route around it. Their feedback set the bar: if integration took more than a day, the platform was not finished.
Outcome
Measured against the previous do-it-yourself approach, engineer productivity on those features rose by 85% for search and CDC, 90% for WhatsApp and CRM, and 70% for access control. The finance platform cut manual reconciliation by almost 90%. Those figures come from the time squads reported before and after adopting each platform.
Stack
GoPythonReactPostgreSQLRedisElasticsearchKafkaDockerKubernetesAWSGCPAzure OpenAIAmazon BedrockOracle NetSuite