| * Use SDKMan for runtime and sdk management https://sdkman.io/ * Try to use Kotlin where allowed (Maybe unpopular and bad faith response given that you asked about Java, but I don't care -- kotlin's Java interop is way more seamless than Scala or Clojure to the point that its often not even noticable) https://kotlinlang.org/ * IntelliJ * Spring is pretty popular, I've seen a lot of people using Vertx * Square libraries like Okio, okhttp, retrofit, wire https://github.com/square * If you're not using spring, use Dagger for DI https://dagger.dev/dev-guide/ * Overlook netflix abandonware (another unpopular opinion, I'm sure) * Use gradle, not maven. Use kotlinscript as the config language, not groovy |