Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Coursera

Golang: Functions, Pointers and System Design

KodeKloud via Coursera

Overview

Google, IBM & Meta Certificates – 40% Off
One plan covers every Professional Certificate on Coursera.
Unlock All Certificates
This course is designed for intermediate Go programmers looking to master memory management, modular design, and professional architectural patterns. We elevate your coding skills by focusing on how to write modular, reusable, and memory-efficient software that is ready for production. You'll start by going deep into Go's functional capabilities. You'll write clean, reusable code using multiple return values, named returns, and variadic parameters. You'll implement advanced patterns — recursion, anonymous functions, and higher-order logic — and use the defer statement to handle resource cleanup reliably. From there, you'll tackle the topic that separates good Go developers from great ones: pointers. You'll learn how memory addresses work, how to use the address (&) and dereference (*) operators safely, and how to make deliberate, performance-driven decisions about passing data by value versus by reference. The course closes with Go's approach to system design. You'll create custom data types with Structs, attach behaviors using Methods and Method Sets, and implement Interfaces to build decoupled, flexible architectures — the same patterns used in professional Go codebases at scale. Every module includes hands-on coding labs, practice quizzes, and AI-guided role-plays — including refactoring legacy code, patching a high-throughput analytics system, and designing a multi-channel notification architecture.

Syllabus

  • Using Functions
    • Explore the depth of functional programming in Go, covering everything from basic syntax to advanced higher-order and anonymous functions.
  • Memory & Pointers
    • Gain direct control over memory by mastering pointers, addresses, and the distinction between passing data by value versus reference.
  • Structs, Methods & Interfaces
    • Build complex data models and define behaviors using Structs, Methods, and Go’s powerful Interface system for decoupled design.

Taught by

Mumshad Mannambeth

Reviews

Start your review of Golang: Functions, Pointers and System Design

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.