Not the parent, but at my previous job we used lots of JVM languages, plus some python and a tiny bit of JS. We were not particularly successful in getting truly hermetic builds with it - a big part of was a lack of headcount actually working on it.
My main takeaway is this: if you're the only one in the room asking for bazel, it's probably a bad choice. Bazel requires a lot of investment to stay nice to use, particularly in a polyglot environment. I've experienced endless friction getting things to work "in bazel" that would otherwise be simple using language-specific tooling.
In my opinion, the benefits (caching, build speed, a single build tool) did not outweigh the costs (nonstandard tool means you are always operating in hard-mode compared to using language-specific build tools, it's a ton of work to make actually hermetic, devs often aren't familiar with it and don't like writing BUILD files, editor support is extremely lacking outside of IntelliJ).
My main takeaway is this: if you're the only one in the room asking for bazel, it's probably a bad choice. Bazel requires a lot of investment to stay nice to use, particularly in a polyglot environment. I've experienced endless friction getting things to work "in bazel" that would otherwise be simple using language-specific tooling.
In my opinion, the benefits (caching, build speed, a single build tool) did not outweigh the costs (nonstandard tool means you are always operating in hard-mode compared to using language-specific build tools, it's a ton of work to make actually hermetic, devs often aren't familiar with it and don't like writing BUILD files, editor support is extremely lacking outside of IntelliJ).