Develop Kubernetes Operators with Go

The DevNinjas Kubernetes operator training teaches you to model CRDs, implement reconciliation and test controllers with Go and Kubebuilder. It is for developers with Kubernetes and programming experience; no prior Go knowledge is required.

  • Level: Beginner, Level 1 of 3
  • Workshop code DW15
  • 3 days
  • Live online
  • German or English

What can you do after three days?

What you will put into practice

What foundation does your team gain?

What you need to know

Preparation if needed:Introduction to Go Programming (DW17)

8 questions, about 6 minutes

Does the content match your level?

Check anonymously which fundamentals you already know and whether the topics in DW15 match your level. The result gives you an honest recommendation for your next step.

Start the knowledge check

No account, no email, no exam

How does the training work and what is included?

“Develop Kubernetes Operators with Go”: 3 days live with an instructor. Browser exercises, no local installation. Public sessions: maximum 8 participants. PDF certificate of attendance and Open Badge included.

How you work in the workshop

Go and Custom Resources → your own operator

  • Practise on your own resources

    You work through exercises on your own resources in DevNinjas Dojo. Your exercise environment is not shared with other participants.

  • Control your own environment

    You have full control over your exercise infrastructure in DevNinjas Dojo. Access uses open protocols such as SSH and HTTPS, as well as web terminals.

  • Ask the instructor live

    Short explanations lead into the exercises. The instructor answers your technical questions live during the workshop.

What is included

No local installation, with proof of attendance for your records

  • Cloud access in your browser

    Your cloud environment in DevNinjas Dojo runs in your browser without local installation, including on restricted corporate networks with VPNs, proxies and firewalls.

    View the Dojo environment
  • A maximum of 8 participants

    Public sessions have no more than 8 participants. For in-house corporate training, we agree the group size with you.

  • Certificate of attendance and Open Badge

    After the workshop, DevNinjas provides a PDF certificate of attendance and an Open Badge. Both document your attendance, not a passed exam.

What does “Develop Kubernetes Operators with Go” cost and which dates are available?

“Develop Kubernetes Operators with Go” is a three-day course with a catalogue list price of €1,665 per person plus 19% VAT. The price for an individual date may differ.

Dates and in-house training

Find all current public dates in the dates overview.

View all datesRequest corporate training

What do participants say about “Develop Kubernetes Operators with Go”?

Selected voices from the DevNinjas portfolio, each labelled with its source.

4.9/ 5

1047+ participant ratings across all DevNinjas workshops · unfiltered

Instructor
5.0
Content
4.8
Hands-on
4.8

DevNinjas overall: approximately 1,384 participants (partly estimated) · 208 companies · 241 workshops

Voice from DW1

“My colleagues specifically looked for a sysadmin course for Docker with another provider and had an instructor who only set up an IDE for them and then only worked on a task sheet with development tasks. I had a course with lots of background information, an instructor who had a really extensive knowledge of the whole subject matter beyond the slides, and I feel optimally informed.”

Johannes BernsteinTRIMET Gelsenkirchen SE

Voice from DW4

“It was fun and I learned a lot that I can actually apply directly in my company. The trainer's approach was very hands-on, and he repeatedly brought in real-world examples.”

Felix R.Dirk Rossmann GmbH

Voice from DW1

“Nico is a very friendly and technically skilled instructor. He answered all questions well. You quickly notice that he combines academic expertise with many years of professional practice.”

Philipp van Wickevoort CrommelinparcIT GmbH

More than 200 customers, including BMW, Bundeswehr and Deutsche Bahn, trust DevNinjas.

How does this workshop fit into your learning path?

In the learning path “Cloud-native developer”, this training is an optional addition to “Develop operators”.

Vincent Sturm - DevNinjas

Your contact

Vincent Sturm

Key Account Manager

Vincent personally advises you on “Develop Kubernetes Operators with Go”, public dates and in-house training.

WhatsApp chat

What should you clarify before booking?

The most common questions on prerequisites, scope, learning path and format.

Do I need Go knowledge for this workshop?

No, provided you have hands-on experience in another programming language. The training starts with a Go crash course introducing relevant language concepts:

  • Structs, interfaces and error handling for controller development.
  • Concurrency foundations for understanding concurrent behaviour.

You should already be able to use functions, data structures, control flow and error handling in your own code, for example with Python, Java or TypeScript. The Golang training explores the language independently of operators.

Is kubectl experience enough without prior client-go knowledge?

kubectl experience is enough; prior client-go knowledge is not required. You should understand core resources and their access model:

  • Understand Pods, Deployments, Services, ConfigMaps and RBAC confidently.
  • Create YAML manifests and inspect resources with kubectl.

You learn programmatic access through client-go and controller-runtime in the training. This includes reading and writing resources as well as informers and caches in the reconciliation loop; Kubernetes fundamentals are not reintroduced.

When do I need a Kubernetes operator instead of a Helm chart?

An operator is useful when domain-specific state must be continuously reconciled. The approaches have different roles:

  • Helm charts bundle Kubernetes resources and configuration values for installation and updates.
  • An operator observes resources repeatedly and applies custom controller logic, for example for external resources or multi-step lifecycles.

In the workshop, you compare concrete workflows and assess whether packaging is sufficient or repeated decisions are needed. The operating model determines the choice.

What is the difference between Kubebuilder and Operator SDK?

Kubebuilder provides controller building blocks; Operator SDK adds its own workflows and further operator approaches. Both use controller-runtime for Go projects but differ in scope:

  • Kubebuilder focuses on scaffolding and developing APIs and controllers.
  • Operator SDK uses Kubebuilder for this and adds Ansible- and Helm-based operators.

The training uses Kubebuilder. Its concepts help with Go projects created through the SDK; the CLIs and additional features remain different.

Can I develop operators with Ansible or Helm?

Yes, Operator SDK provides Ansible- and Helm-based operators alongside Go workflows. The options express reconciliation differently:

  • Go with Kubebuilder allows direct development of controller logic, error handling and API access.
  • Ansible and Helm workflows use their respective automation or packaging models.

This workshop focuses on Go in practice. The other approaches are introduced, not implemented; assess their suitability and extension points separately for your use case.

What can I build independently after the workshop?

You practise developing, testing and deploying a focused operator. The workshop prepares you for four connected tasks:

  • Scaffold operators and connect CRDs with reconciliation.
  • Manage dependent resources through owner references and finalizers.
  • Constrain input and permissions with CEL, webhooks and RBAC.
  • Test behaviour and deploy operators as versioned units.

You can develop these building blocks further in your own project. Production architecture, security review and operational approval remain separate steps.

How does the workshop cover operator testing?

Testing has a dedicated block on day two. You examine different testing levels:

  • Unit tests check individual functions.
  • Integration tests with envtest check reconciliation and status changes against the Kubernetes API; envtest provides an API server and etcd.

The structure is suitable as a starting point for CI. Dependencies on additional cluster components need separate coverage in your project because envtest does not provide a complete cluster.

How does the cloud learning environment (DevNinjas Dojo) work?

DevNinjas Dojo provides the cloud learning environment for your exercises during the booked course. Depending on the workshop, you work with Kubernetes clusters, VMs or containers; the OpenShift training uses a shared cluster. Access uses SSH, HTTPS and web terminals, without a proprietary client or local installation.

You need a current browser and internet access. Restricted corporate networks may require VPN, proxy or firewall permissions. For corporate training, a technical check establishes access beforehand.

How many participants attend a DevNinjas training session?

Public DevNinjas training sessions have no more than 8 participants. For corporate training, we agree on the group size with you; larger groups are possible. We discuss any necessary adjustments during planning. The agreed group size is recorded in the proposal.

What certificate do I receive after DevNinjas training?

After DevNinjas training, you receive a PDF certificate of attendance and an Open Badge. Both are included in public sessions and corporate training. The PDF lists the topics covered and the course period from the start date to the end date, without an hour total.

Even for exam preparation courses, both records confirm attendance, not a passed exam.

How would you like to book “Develop Kubernetes Operators with Go”?

Choose a public date or request DW15 as in-house training: online or on site, with a date agreed with you.