Earlier quoted context omitted.
I use Kotlin for services I write. My previous stack was Kotlin + Vert.x but I've ditched Vert.x for Sparkjava more recently... not a fan of the async model.
Async is fine but Vert.x's version of it is kind of retarded. Callback hell. Might be better with 3.4 now that it supports Scala and Futures.
It makes a lot of big promises, delivers on many of them early on but as your services grow things... get messier.
Happy enough with Sparkjava right now. I think ultimately though I'm on a slow journey back to just using Dropwizard which still hits the sweet spot for me.