golang-developer-roadmap README

The project's README from github.com/darius-khll/golang-developer-roadmap. As one markdown file: README.md.

Go Developer Roadmap

Roadmap to becoming a Go developer in 2021:

Below you can find a chart demonstrating the paths that you can take and the libraries that you would want to learn to become a Go developer. I made this chart as a tip for everyone who asks me, "What should I learn next as a Go developer?"

简体中文版 繁體中文版 日本語版 Versão em Português do Brasil 한국어 Русский Українська العربية

Disclaimer

The purpose of this roadmap is to give you an idea about the landscape. The road map will guide you if you are confused about what to learn next, rather than encouraging you to pick what is hype and trendy. You should grow some understanding of why one tool would be better suited for some cases than the other and remember hype and trendy does not always mean best suited for the job.

Give a Star! :star:

If you like or are using this project to learn or start your solution, please give it a star. Thanks!

Roadmap

Roadmap

Resources

  1. Prerequisites

  2. General Development Skills

    • Learn GIT, create a few repositories on GitHub, share your code with other people
    • Know HTTP(S) protocol, request methods (GET, POST, PUT, PATCH, DELETE, OPTIONS)
    • Don't be afraid of using Google, Power Searching with Google
    • Read a few books about algorithms and data structures
    • Learn about implementation of a basic Authentication
    • Solid principles, architectural & design patterns, ecc
    • Basics of software testing (unit, integration, e2e)
  3. CLI Tools

    1. cobra
    2. urfave/cli
  4. Web Frameworks + Routers

    1. Beego
    2. Chi
    3. Echo
    4. Fiber
    5. Gin
    6. Revel
  5. Databases

    1. Relational
      1. SQL Server
      2. PostgreSQL
      3. MariaDB
      4. MySQL
      5. CockroachDB
    2. Cloud Databases
    3. Search Engines
    4. NoSQL
  6. ORMs

    1. Gorm
    2. Xorm
  7. Caching

    1. GCache
    2. Distributed Cache
      1. Go-Redis
      2. GoMemcached
  8. Logging

    1. Log Frameworks
    2. Log Management System
    3. Distributed Tracing
  9. Real-Time Communication

    1. Centrifugo
    2. Melody
  10. API Clients

    1. REST
    2. GraphQL
  11. Good to Know

  12. Testing

    1. Unit, Behavior, Integration Testing
      1. GoMock
      2. Testify
      3. GinkGo
      4. GoMega
      5. GoCheck
      6. GoDog
      7. GoConvey
      8. Dockertest
    2. E2E Testing
  13. Task Scheduling

  14. MicroServices

    1. Message-Broker
    2. Building message-driven
    3. Frameworks
    4. RPC
  15. Go-Patterns

Wrap Up

If you think the roadmap can be improved, please do open a PR with any updates and submit any issues. Also, I will continue to improve this, so you might want to star this repository to revisit.

Idea from : ASP.NET Core Developer Roadmap

Contribution

The roadmap is built using Draw.io. Project file can be found at golang-developer-roadmap.xml file. To modify it, open draw.io, click Open Existing Diagram and choose xml file with project. It will open the roadmap for you. Update it, upload and update the images in readme and create a PR (export as png with 400% zoom and minify that with Compressor.io).

License

License: CC BY-NC-SA 4.0

golang-developer-roadmap (darius-khll/golang-developer-roadmap)

Searching Database…

What is this?A visual roadmap and curated list of libraries, tools and resources to follow when learning to become a Go (Golang) developer, covering things like web frameworks, databases, ORMs, caching, logging, testing and microservices.
Is this a step-by-step course or just a reference chart?It's a reference chart plus a categorized list of resource links, not lessons or exercises; it's meant to show the landscape of Go tooling rather than teach it directly.
Where should a beginner start?The roadmap suggests starting with prerequisites (Go itself, Go Modules, and SQL) before moving into general development skills like Git, HTTP and basic algorithms.
Is this still being updated for the latest Go ecosystem?The README is titled '2021' while the GitHub description still says '2020', and entries are just library names with no explanations or version notes, so it's better as a starting point for further research than a current, maintained reference.
Is the roadmap available in other languages?Yes, besides English there are versions in Simplified and Traditional Chinese, Japanese, Brazilian Portuguese, Korean, Russian, Ukrainian and Arabic, linked at the top of the README.
Can I edit the roadmap diagram myself?Yes, the chart is built with Draw.io and the editable source is the golang-developer-roadmap.xml file, so you can open it in draw.io, update it, export as PNG and submit a PR.
Why did the author make this roadmap?The author made it as a quick answer to the question What should I learn next as a Go developer, inspired by the existing ASP.NET Core Developer Roadmap.
Does it explain each listed tool or just name-drop it?It just name-drops tools and libraries by category (e.g. Validator, Testify, RabbitMQ) without descriptions, so you're expected to research each one yourself.
Size
32.5 MB
Stars
18.4K
Updated
CommitOct 02
Age
7y
Commits · 90 Days