Open Source Go Conference

Sep 23rd - 25th 2019

Ultimate performance

Ultimate Performance

Ultimate Performance is a hands-on class that focuses on squeezing better performance out of your Go applications. It teaches performance, profiling, and tracing

Trusted by:


Ardan Labs offers the “Ultimate Performance” class, a 2-day on-site corporate training for software developers who wants to learn how to debug, profile and trace their Go applications. This class will be both lecture and hands-on experience to teach and navigate the Go compiler and tooling.

Your team will walk away with philosophies and techniques for solving common problems with a big understanding of “if performance matters” then these things matter.

Course Overview

This class provides an intensive and comprehensive view of the Go compiler, profiler, and trace tooling. This will be a combination of lecture (to learn the important aspects of the Go compiler) and hands-on experience (to learn how to use the profile and trace tooling).

We will talk about semantics, guidelines, mechanical sympathy, and data-oriented design. Then we will dig into benchmarking, profiling and tracing. We believe this class is perfect for anyone who wants a jump start in learning how to debug Go applications or who wants a more thorough understanding of the language and its internals.

Everyone is going to be mentally exhausted by the end of each day. We will be challenging every student to think about what they are doing and why. In the 3 years, we have taught this material, we never had someone not appreciate the class and feel like they are a better developer for it.

Course outline:

  • Mechanical Sympathy
  • Data-Oriented Design
  • Escape Analysis
  • Inlining Functions
  • Bounds Check Elimination
  • Benchmarking
  • Profiling and Tracing

Minimal Qualified Student:

The material has been designed to be taught in a classroom environment. The code is well commented but missing some of the contextual concepts and ideas that will be covered in class. Students with the following minimal background will get the most out of the class.

  • Studied CS in school or has a minimum of two years of experience programming full time professionally.
  • Familiar with structural and object-oriented programming styles.
  • Has worked with arrays, lists, queues, and stacks.
  • Understands processes, threads, and synchronization at a high level.
  • Operating Systems
    • Has worked with a command shell.
    • Knows how to maneuver around the file system.
    • Understands what environment variables are.

Go Training Reviews

Great class! The teams would benefit from post-class help in code reviews, mentoring, and development of starter kits for typical applications types in our environment.

Engineer, PayPal

The course is extremely well organized and the pace is also very conducive to the learning process. The exercises are very well organized. Delivered very high value.

Engineer, Cisco

Excellent class. The instructor is a hacker speaking to hackers, so we got very useful information and advice. Well-structured and paced was not totally dead at the end of the day. Good exercises. 10/10 would gopher it again.

Engineer, Zip Recruiter