A public, long-term journey from beginner to senior backend engineer. Documenting Go mastery, system architecture, and algorithmic problem-solving.
This repository is my public learning laboratory with three interconnected goals:
| # | Goal | Purpose |
|---|---|---|
| π¦ | Master Go | Document every concept from variables to advanced concurrency patterns |
| ποΈ | Understand System Architecture | Learn how to design scalable, reliable backend systems |
| π§© | Sharpen Problem-Solving | Solve LeetCode problems daily and document the thought process |
I know some JavaScript but I'm not an expert. I chose Go as my primary backend language. This repo is my commitment to learn in public, force deep understanding through writing, and create a resource for others on the same path.
A senior backend engineer isn't just someone who knows a language. They understand:
- Language Mastery: Idiomatic code, performance, concurrency patterns
- System Thinking: How components interact, scale, and fail
- Algorithmic Foundation: The ability to reason about efficiency and trade-offs
This repository intentionally combines all three.
β‘οΈ structure
This is the target. I'll track my progress against this matrix.
| Competency | Junior | Mid-Level | Senior | My Status |
|---|---|---|---|---|
| Go Proficiency | Basic syntax | Idiomatic Go, concurrency | Performance optimization, library design | Learning |
| System Design | Follows patterns | Designs simple systems | Architects complex distributed systems | Not Started |
| Database Knowledge | CRUD operations | Indexing, basic optimization | Sharding, replication, advanced tuning | Not Started |
| API Design | Implements endpoints | Designs RESTful APIs | API strategy, versioning, gRPC/GraphQL | Not Started |
| Testing | Occasional tests | Unit tests, integration | TDD, test strategy, mocking | Not Started |
| DevOps | Runs locally | Docker, basic CI | K8s, observability, incident response | Not Started |
| Communication | Needs guidance | Clear communicator | Mentors others, technical writing | Progressing |
| Problem Solving | Brute force | Efficient algorithms | System-level optimization | Learning |
This is a learning repository. If you see something I got wrong, explained poorly, or could improveβplease contribute!
See CONTRIBUTING.md for guidelines.
Ways to help:
- π Correct my code or explanations
- π‘ Suggest better examples
- π Add resources to
/resources - β Ask clarifying questions (I'll improve the docs)
| Activity | Time | Frequency |
|---|---|---|
| Learn one Go concept | 30 min | Daily |
| Document what I learned | 20 min | Daily |
| Solve one LeetCode problem | 30-45 min | Daily |
| Read one architecture article | 15 min | Daily |
| Code review / Refactor | Weekend | Weekly |
If you're on a similar journey, star this repo to follow along. Let's grow together.
Last Updated: April 2026 Current Focus: Go Fundamentals - Variables and Control Flow