Workshops

Ultimate Software Design with Kubernetes

Bill Kennedy

Managing Partner, Ardan Labs Instructor

When

February 7th: 09:00-18:00

Summary

This class teaches how to build production-level services in Go leveraging the power of a Domain Driven, Data Oriented Architecture that can run in Kubernetes. From the beginning, you will pair the program with the instructor walking through the design philosophies and guidelines for building services in Go. With each new feature that is added to the service, you will learn how to deploy to and manage the Kubernetes environment used to run the service. The core of this class is to teach you and your team how to handle and reduce the spread of complexity in the systems you are building.

What a student is expected to learn

Throughout the day we will learn:

  • Design Philosophy, Guidelines, and Policies
  • Deploy First Mentality
  • Project Structure
  • Kubernetes and Quotas
  • Domain Driven, Data-Oriented Architecture
  • Review Architecture Implementation

Prerequisites

Recommended Preparation

  • Please clone the main repo for the class: github.com/ardanlabs/service
  • Please read the instructions in the makefile for installing everything prior to coming to class.
  • Please email the instructor for help: bill@ardanlabs.com
  • Computers should be capable of modern software development, such as access to install and run binaries, install a code editor, etc.

Bio

William Kennedy is a managing partner at Ardan Labs in Miami, Florida. Ardan is a group of passionate engineers, artists and business professionals focused on building and delivering reliable, secure and scalable solutions. Bill is also the author of Go in Action and the Ultimate Go Notebook, plus the author of over 100 blog posts and articles about Go. Lastly, he is a founding member of GoBridge and the GDN, which are organizations working to increase Go adoption through diversity.



ULTIMATE GO

Miki Tebeka

Go Trainer, Ardan Labs, Instructor

When

February 7th: 09:00-18:00

Summary

This workshop is based on "Ultimate Go" by Bill Kennedy. It is aimed at developers who have experience with Go and want to understand how to write more efficient code and understand data semantics and concurrency patterns. We'll cover many coding best practices that help write precise code.

Some of the topics we'll cover are:

  • Programming vs engineering
  • Polymorphism with interfaces
  • Using generics to reduce code size
  • Using concurrency
  • Performance optimization (both CPU & Memory)

Prerequisites

You should have experience writing Go code. You should have the following installed on your machine:

  • Go SDK
  • IDE such as VSCode with the Go extension or Goland
  • Git
  • Graphviz

Bio

Miki is an old Gopher and even older developer :) He spends his time teaching (either via his company or via ArdanLabs), writing books, creating video courses, blogging and of course - writing code (either open source or for customers). Miki is one of the organizers of GopherCon Israel and the Go Israel Meetup.