I never felt before that I am wasting brain cells as much as when I have to do something in bazel. The hermecicity thing it does relatively well but god does the documentation suck, at some point you can only get farther if you just read the java code implementing it...
I think bazel is only worthwhile when you are big enough to have a team that builds and maintains the bazel setup in a company/team. At Google it works fantastically, but I've also tried putting it into a project from scratch and it was too much.
It’s been many years since last time i had to do anything in bazel’s java code. Most warts have been massively improved and only require occasional starlark hack or the right incantation of flags. The docs are honestly not too bad but the system is so massive and deals with so much inherent complexity that it always going to be missing something