Decisions 1
Hampton Catlin
VP of Engineering at Rent The Runway
We were thinking about what to do to make working with our internal Java applications a bit more fun. We use Dropwizard in all of our main backend systems and while Dropwizard has served us well, it has a lot of boilerplate and team members who were joining that were used to Spring / Spring Boot were finding Dropwizard lacking.
We'd also had teams starting to use Lombok to help cutdown on boilerplate POJOs, but the infrastructure team and, well, myself included, were concerned about how Lombok is implemented as a bytecode manipulator. We're cool with generators, but bytecode manipulation seems a bridge too far for many reasons.
We realized that Kotlin can help with both problems, potentially cutting down on boilerplate POJOs and helping with some of the patterns that people find cumbersome in Dropwizard. The fact that you can 'drop in' Kotlin into an existing application or convert it whole-hog without functionality changes is a real game changer for us and made that technology much easier to implement.
We value not leaving all of our 50+ Java services behind, and would rather work with technologies that will allow all teams and all of our services to be easier to work with and more maintainable.
It's still early days with Kotlin, but so far the teams are very excited.