Join us for a Training & Community day on November 9. Registration is limited to one session per time slot. Morning and afternoon breaks, and lunch will be provided for Training Day attendees.
How To Register: Registration is complimentary, but pre-registration is required. To register, add a Training Day session to your BazelCon registration.
Enough Bazel to be dangerous: a debugging cookbook
Time: 9:15 AM – 11:15 AM
Instructor: Alejandro Gomez
A tutorial on debugging of build errors from the perspective of users/developers. What does one need to look at or consider in order to fix a failing build
Sponsored by
Creating and maintaining a custom cc toolchain using the new rules based toolchain
Time: 9:15 AM – 12:15 PM
Instructor: Dylan Martin
How to use the new rules based cc toolchain to make it easier use multiple compilers, to create and maintain custom toolchains and make it easier to the community to contribute
Sponsored by
Bazel102: Python
Time: 11:30 AM – 1:30 PM
Instructor: Coming Soon!
Bazel 102: Python is a practical, intermediate-level course designed for developers who are ready to integrate Python into their Bazel-based workflows. In the era of AI, Python has become a vital tool in many organizations. It covers essential topics such as creating applications, setting up editor-friendly virtual environments, enabling watch mode, managing monorepo dependencies, and implementing testing, debugging, and linting workflows. The course introduces key Bazel modules including rules_python, aspect_rules_py, and rules_uv, enabling powerful dependency management and development tooling.
Sponsored By
Bazel Management for Developer Productivity Experts
Time: 12:30 PM – 4:00 PM
Instructor: Billy Autrey
As companies begin to adopt Bazel, developer productivity teams are left to discover how to maintain Bazel in their repositories. This interactive session provides developer productivity engineers with hands-on experience. By the end, you will have the knowledge needed to manage and extend Bazel in your workspace.
Led by Billy, the training and professional services lead at EngFlow, this session will cover: Bzlmod, Starlark and macros, toolchain configuration, flag management, debugging Bazel builds.
Sponsored By
Bzlmod Migration Bootcamp
Time: 2:00 PM – 4:00 PM
Instructor: Mike Bland
With Bazel 9, the legacy WORKSPACE API for configuring external dependencies was retired and replaced by Bzlmod. While the new API offers improvements, it also imposes constraints that can break existing builds, making migration challenging.
This workshop highlights the differences between Bzlmod and the legacy WORKSPACE API, offering solutions to common Bzlmod-related breakages. We’ll cover repository name handling, patching dependencies, toolchains, dependency version compatibility, and testing. An example repository will be used to illustrate each topic, but participants are welcome to work on and ask questions about their own projects.
This session is led by Mike Bland, who has extensive experience with the topic. He led Google’s Testing Grouplet, wrote the “Testing on the Toilet” articles, helped launch Blaze and Forge within Google, and founded Apple’s Quality Culture Initiative. Mike contributed the first working version of Python’s with statement, updated rules_scala to become Bzlmod compatible, and authored EngFlow’s Bzlmod blog series.
Sponsored By
Integrate Dev Workflows
Time: 4:15 PM – 6:15 PM
Instructor: Coming Soon!
The course focuses on the complex, human-centered challenge of using Bazel, emphasizing strategies to reduce disruption and accelerate adoption. It covers practical topics such as formatting and linting, continuous integration, artifact versioning, selective delivery—all while ensuring scalability and performance in large monorepos. Participants gain actionable insights for building resilient workflows, preserving developer velocity, and defending the long-term leverage of Bazel across growing engineering organizations.
Sponsored By
Writing Bazel Rules
Time: 4:15 PM – 6:15 PM
Instructor: Jay Conrod
Learn how to write your own Bazel rules. In this workshop, you’ll discover how to add support for code generation tools and new programming languages. You’ll gain a deeper understanding of how Bazel builds projects using rules and actions. Plus, you’ll get practical insights on writing efficient, scalable rulesets optimized for remote execution.
This session is led by Jay, an expert in the field. He led the development of rules_go and Gazelle while at Google, authored the “Writing Bazel rules” series, and now focuses on optimizing remote execution and caching at EngFlow.
This workshop is aimed at beginner to intermediate Bazel users. You should be familiar with basic concepts like build files and labels, but prior experience writing rules or macros isn’t required.
Sponsored By