Simple play icon Course
Skills

Concurrent Programming in Go

by Mike Van Sickle

Modern software systems must operate with a high degree of concurrency to take advantage of the hardware they are running on. This course will teach you how to get the most out of Go's features to build robust and elegant concurrent programs.

What you'll learn

One of Go’s primary design goals is to simplify the creation of concurrent programs. In this course, Concurrent Programming in Go, you’ll learn how to do just that. First, you’ll warm up by reviewing Go’s essential concurrency tools - goroutines and channels. Next, you’ll explore these constructs to learn their full capabilities. You’ll learn some design patterns that allow concurrent systems that are predictable and well-organized. Finally, you’ll learn about other features Go offers to ensure your concurrent programs are efficient and well-behaved. When you’re finished with this course, you’ll have the skills and knowledge of Go’s concurrency needed to create robust, clear, and efficient concurrent programs with Go.

About the author

Michael Van Sickle is an application architect in Akron, Ohio. He started his career as a mechanical engineer, designing components for the automotive industry, before changing to software engineering. He is passionate about learning new programming languages and is comfortable working in Java, C#, JavaScript, PHP, and F#. Mike also loves learning about user experience design and is taking a lead role in his company's attempt to make applications that are elegant and simple. When he i... more

Ready to upskill? Get started