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

  1. 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.

  2. 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.

  3. 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.

    Workshop environments⁠Built-in services⁠Portal REST API⁠

  • 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.

    Isolated Sessions⁠

  • 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.

    Publishing workshops⁠Training portal⁠

  • 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.

    Runs on your cluster⁠

For the Builder

How it works

A team's training setup has four parts, and all of them are yours.

  1. 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 educates CLI. The cluster requirements cover sizing, the ingress controller, wildcard DNS and Kyverno.
  2. Workshops in Git. Each workshop is a Workshop definition and its Markdown pages in a Git repository. Start one with educates new-workshop and write it against a local cluster on your laptop first.
  3. Published by version. Educates downloads a workshop's content from a branch or tag in Git, or from an OCI image that educates publish-workshop or the GitHub action publishes when you push a version tag.
  4. A standing portal. A TrainingPortal lists 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:

workshop.yaml
apiVersion: training.educates.dev/v1beta1
kind: Workshop
metadata:
name: platform-onboarding
spec:
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: true

The 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.

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.