The Bazel migration process
Assessment
We start by determining which areas will benefit the most from the Bazel migration. After careful assessment, our engineers suggest the most appropriate out of 3 approaches.
1. An immediate migration.
We select an optimal time to freeze non-critical updates to the old system. This allows our team to start migrating your project to Bazel. Meanwhile, we will continue to maintain your existing tooling, ensuring a stable development environment.
2. An integration layer approach.
The migration is gradual and is achieved by integrating the old build system into the new one (or vice versa). For example, initially, the first 80% of your project will use your old build, and the remaining 20% will be Bazel-based, but your developers will interact only with Bazel. Over time, the balance will shift until your tooling becomes 100% Bazel-based.
3. Maintaining parallel builds.
Bazel as well as your old tooling are run and maintained simultaneously. Our team manages the Bazel build and migrates changes done to the old build system. Developers and releases pipelines will be moved gradually to the Bazel build.
Proof of concept
At this stage, we are assessing whether your desired setup can be done and what we need to make it work. Once this stage is complete, our engineers will be able to estimate how fast the new build is going to be.
Migration
Every migration process looks different, depending on the approach and each client. As a result, the codebase is built faster, in a more secure manner, and with fewer resources.






