This course is for C++ developers and students who want to learn Bazel, a powerful build system used in real-world software projects. As software projects grow, managing dependencies, compiling code, and running tests can become increasingly complicated. A good build system helps you automate these tasks, improve build efficiency, and keep your projects organized. Have you ever encountered Bazel at work and struggled to understand how it works? Or found yourself confused by BUILD files, dependencies, and unfamiliar commands? Whether you’re completely new to Bazel or have already used it without fully understanding what’s happening behind the scenes, this course will help you understand Bazel and use it with confidence.
No previous experience with Bazel is required. Basic C++ knowledge and familiarity with the command line are recommended. Python knowledge can be helpful, but it is not required. If you’re completely new to Bazel, this course will guide you through the fundamentals. If you already have some experience, please explore the curriculum to see if there is anything new and of value for you.
Bazel is cross-platform. In this course, we’ll work with:
- Windows
- Linux
The course includes explanations and hands-on coding examples. I strongly recommend that you try the examples yourself, experiment with them, and modify them to better understand how Bazel works.







