Team training
Engineers learn your stack on real environments shaped like production, without touching production
For platform teams and engineering managers training their own engineers, new hires included.
Each engineer gets a Session of their own, with your tools in it and up to a whole cluster to break. The workshops live in Git beside the code they teach, and the portal runs on a cluster you own.
The problem
Nothing hands-on
Onboarding is a wiki that was last accurate two reorganizations ago and a recording of someone else's screen. Engineers learn the platform the first time they use it for real.
The shared sandbox is broken again
Everyone practises in the same sandbox, so one person's experiment breaks it for the next, and nobody is sure what state it is in. People stop trusting it and try things somewhere that matters more.
Onboarding runs on a senior engineer's time
Every new hire needs someone to walk them through the stack, and that someone is the engineer you can least spare. The walkthrough lives in their head and changes every time they give it.
How Educates fits
Your stack, not a generic sandbox
Start from the standard workshop image, the Java or conda one, or an image of your own with your tools in it, and add more with extension packages and setup scripts. Each Session can have a Git server of its own to push to, SSH access into its container, and credentials generated for it, or passed in through the REST API for your other systems.
Real environments, up to cluster admin
Give each engineer a Kubernetes namespace with quotas and RBAC, a virtual cluster with cluster admin to install operators in and break, or, with KubeVirt in the cluster, a virtual machine. It runs on a cluster you keep for training, as the docs recommend, away from production.
Workshops kept like code
Workshops are Markdown in Git, reviewed in pull requests and versioned with the systems they teach, then deployed from a tag in Git or from an OCI image. A standing portal for the team can replace each workshop environment on a schedule, so it starts clean again.
On a cluster you own
Educates runs on a Kubernetes cluster you own, on EKS, GKE, OpenShift or any cluster with an ingress controller, so the training, and the internal code and tools it uses, stay on infrastructure you control.
For the Builder
How it works
A team's training setup has four parts, and all of them are yours.
- A cluster for training. Create a Kubernetes cluster used only for
Educates, not one that runs anything else, and install Educates on it with
the
educatesCLI. The cluster requirements cover sizing, the ingress controller, wildcard DNS and Kyverno. - Workshops in Git. Each workshop is a
Workshopdefinition and its Markdown pages in a Git repository. Start one witheducates new-workshopand write it against a local cluster on your laptop first. - Published by version. Educates downloads a workshop's content from a
branch or tag in Git, or from an OCI image that
educates publish-workshopor the GitHub action publishes when you push a version tag. - A standing portal. A
TrainingPortallists the team's workshops. Engineers register an account and start a Session when they need one, and each Session expires after the time you set.
This workshop starts from the Java 21 image, downloads its content from a tag in your own Git server, and gives every Session a virtual cluster and a Git server of its own:
apiVersion: training.educates.dev/v1beta1kind: Workshopmetadata: name: platform-onboardingspec: title: Shipping a service on our platform description: Build, deploy and roll back a service the way our teams do workshop: image: jdk21-environment:* files: - git: url: https://git.example.com/platform/onboarding-workshop ref: v1.4 includePaths: - /workshop/** - /exercises/** - /README.md session: applications: vcluster: enabled: true git: enabled: trueThe Workshop reference covers custom images, extension packages, secrets and the rest. To write a first workshop of your own before any of this, the Getting Started Guides take you from installing the CLI to a workshop running on your laptop.
What you bring
Educates is the core, not the whole job. This is what it leaves to you, so you can plan for it before you commit.
Sign-in through your identity provider
The training portal has its own accounts, or anonymous access, and nothing else. For engineers to sign in with your company's identity provider, a front end of yours handles sign-in and requests Sessions through the lookup service.
What the docs say: Sign-in through your identity provider (external site)
An Apache 2.0 front end with OAuth sign-in, on the lookup service, to start from (external site)
A record of who completed what
Nothing keeps a history of who finished which workshop. The portal can post events to your webhook as Sessions start, pages are viewed and Sessions finish; storing them, and turning them into an onboarding report, is a service you build.
What the docs say: A record of who completed what (external site)
No trainer view
There is no view of how far each engineer has got through a workshop. A mentor finds out the usual way, by asking or by looking over a shoulder.
No video
Educates does not include video or virtual classroom features. For a live session with a remote team, run it beside the meeting tool you already use.
Proof
Read how it is done
- Blog postDeploying Educates yourself
- Blog postClickable actions in workshops
- FeaturesEvery Feature, by the job it serves
- GuideThe Getting Started Guides
Deploy it from the Hub
The Hub is a catalog of workshops you deploy on your own Educates, each with one command.
Try it yourself, or talk to us
Get started runs Educates on your laptop with a first workshop in a few commands. Get help is where you ask the community, and where you can hire the people who build Educates.