Monorepo CI at Scale: Bazel Caching for 1,000 Microservices

Designing a monorepo CI pipeline that doesn't collapse under 1,000 microservices means getting Bazel remote caching and selective test execution right from the start. You'll learn: • How to structure a monorepo CI pipeline so only affected services trigger builds — using Bazel's dependency graph to compute the minimal affected set • Configuring Bazel remote caching (local cache, shared remote cache via gRPC or HTTP) to avoid rebuilding unchanged targets across parallel CI workers • Selective testing strategies: combining bazel query with --build_event_stream to identify and run only impacted test targets • Common failure modes at scale — cache poisoning, overly broad BUILD file dependencies, and flaky remote executor connections • How to structure the CI orchestration layer (GitHub Actions, Buildkite, or Tekton) to fan out Bazel shards without thrashing the remote cache Keywords: monorepo CI pipeline, Bazel remote caching, selective testing microservices, CI at scale DevOps interview, platform engineering build systems 🎧 Listen, then go deeper — DevOps & Cloud interview-prep ebooks at DevOpsInterview.Cloud (https://DevOpsInterview.Cloud/?utm_so...)