Skip to content

Go Language Guide

Go interview preparation covering DSA patterns, system design, and CS fundamentals.

Directory Structure

All Go code lives under Languages/go/. Module: go.mod. Run with go run.

Categories

Category Topics Path
Algorithms & DSA 19 coding patterns + LeetCode Languages/go/algorithms-dsa/
Low-Level Design SOLID, Design Patterns, OOP Problems Languages/go/low-level-design-lld/
System Design HLD Fundamentals, System Design Problems Languages/go/system-design-hld/
Computer Core Operating Systems, Networking, Databases Languages/go/computer-core/
Application Core Goroutines, channels, interfaces, error handling Languages/go/application-core/
Frameworks & Libraries Gin, GORM, testing, gRPC Languages/go/frameworks-libraries/

Algorithms & DSA Patterns

Pattern Type Path
Two Pointers folder + file algorithms-dsa/patterns/two-pointers/ + two_pointers.go
Sliding Window folder + file algorithms-dsa/patterns/sliding-window/ + sliding_window.go
Binary Search file algorithms-dsa/patterns/binary_search.go
BFS / DFS folder algorithms-dsa/patterns/bfs-dfs/
Backtracking folder + file algorithms-dsa/patterns/backtracking/ + backtracking.go
Dynamic Programming folder + file algorithms-dsa/patterns/dynamic-programming/ + dynamic_programming.go
Greedy folder algorithms-dsa/patterns/greedy/
Graphs file algorithms-dsa/patterns/graphs.go
Graph Traversal file algorithms-dsa/patterns/graph_traversal.go
Heaps file algorithms-dsa/patterns/heaps.go
Intervals file algorithms-dsa/patterns/intervals.go
Prefix Sums file algorithms-dsa/patterns/prefix_sums.go
Stacks file algorithms-dsa/patterns/stacks.go
Tries file algorithms-dsa/patterns/tries.go
Bit Manipulation file algorithms-dsa/patterns/bit_manipulation.go
Linked Lists file algorithms-dsa/patterns/linked_lists.go
Trees file algorithms-dsa/patterns/trees.go

Low-Level Design

Sub-folder Content
design-patterns/ + design_patterns/ GoF patterns in idiomatic Go
problems/ LLD interview problems
solid/ SOLID principles using interfaces

Computer Core

Sub-folder Topics
operating-systems/ Goroutine scheduling, memory, concurrency
networking/ net/http, TCP servers, gRPC
databases/ database/sql, GORM, migrations