That changes drastically if your codebase contains a lot of C++ and your SW model doesn't quite match the way Bazel tries to push you into. For instance doing any of the following things will quickly turn into a nightmare when using the Bazel C++ rules:
* dynamically linking libraries
* using a containerized approach for library includes (so transitive relative include paths)
* using different toolchains and cross compiling
* interfacing with thirdparty libraries
We are talking seasoned build engineers ending up frustrated after literally months of trying to achieve something that is easy as pie in CMake.
In addition there is still no real IDE support. The CLion plugin is permanently broken and lags behind versions. No real VSCode support. Using custom rules makes this even worse, to the point where CLion will refuse to sync and not having a way to produce a compilation database json.
There are so many bugs open on those projects and no progress or answers. I can not recommend Bazel if C++ or C is what you care about.