As to the actual "why", even little things like BUILD files requiring you to enumerate dependency graphs gives you a leg up that you _can_ implement in other build systems, but likely won't. Whether you're a "monorepo" or not, you still have all your code living _somewhere_ as a monorepo, and the only question is how good your tooling is. How easy is it in your system to "run all tests properly depending on the set of changed files"? That's easy in Bazel and hard in every other solution I've seen (possible of course, but those sorts of constraints aren't the happy path for other build systems, so teams don't tend to build that way without a very solid lead imposing that strategy).
But I’ve seen many builds, outside of FAANG, that are too slow and that also break frequently after a simple “git pull”. Which other systems promise to improve those, and how do they do it?