I remember primarily working in Java when it was the one main choice you had. People were actively looking for alternatives, and then Spring came along and saved it from the archonauts. But the counter revolution by the archonauts ended up pretty much as you describe - layers of sophistry. Java is kind of like a really old city, built upon many layers of cities that predate it. Witness the recent log4j debacle. There's so much complication buried amongst the layers, that something as obviously bad as log4j escapes notice. Even the author of log4j abandoned it many years ago to create logback and slf4j. So, just with logging, there is the standard logging (which nobody uses), log4j (hopelessly complicated), a few others, and then slf4j/logback. Even doing logging in java is a choice fraught with peril.
Come to think about it, the Java ecosystem now resembles more of a Big Ball of Mud (http://www.laputan.org/mud/), where being a swamp guide is more important than other skills.
These days I primarily work in go, and the reduction in cognitive overhead to get things done is immense. Its a language that learned from the mistakes of many others, and gets many things right.