How Creditas traded Ruby for Kotlin and moved to Kubernetes on AWS
Creditas offers loans backed by homes, cars and payroll in Brazil. It started on a Ruby monolith, moved new services to Kotlin and Spring Boot, runs them on Kubernetes in AWS, and now uses AI agents for maintenance and design system work.
Source of recurring production errors in logs and traces that the AI agent works on.
How they built it
Leaving Ruby for Kotlin
Creditas began with a monolith written in Ruby on the Hanami framework, plus a newer Rails microservice. In 2018 the team asked whether Ruby still fit its problems, because the monolith could not keep up with the pace of change.
After weighing C#, Scala, Java and Kotlin, they extracted a small, well-defined context into a Kotlin service. Null safety and data classes removed a whole class of tests, the same context shrank from 1,174 lines of Ruby to 650 of Kotlin, and they could lean on mature Java libraries and a large pool of Java developers.
Early on, the team bootstrapped servers with Ansible and later picked Amazon ECS, since EKS was still in preview. When the infrastructure stopped being code, they brought in Terraform to manage AWS resources.
The next step was Kubernetes on Amazon EKS, chosen so nobody had to babysit a cluster by hand. An in-house CLI called cliditas, written in Go, hides the manifests from developers, and in 2022 the team tuned cluster-autoscaler after deploys were waiting up to six minutes for new nodes.
Production data lives in PostgreSQL. To analyze it, AWS DMS pulls data into an S3 data lake, AWS Glue processes it and Amazon Redshift serves the final tables, all provisioned with Terraform.
In 2026 Creditas put an AI agent called O Zelador (the caretaker) on the work nobody prioritizes. It runs OpenHands on GitHub Actions with models from Amazon Bedrock, and picks up signals from Dependabot, SAST and recurring production errors in Datadog.
The new Lemon Pie design system keeps Figma and code in sync with AI agents. Components start from shadcn/ui on top of Tailwind and CSS variables, and Style Dictionary exports the tokens to web, iOS and Android.