1 优先级说明
1.1 P0:就业底线
这些不会,Go 后端求职很难过面试。
1.2 P1:覆盖绝大部分岗位
如果你想适应当前市场,这些建议必须补。
1.3 P2:按岗位方向选修
不要求全学,根据目标岗位选 1~3 个。
2 完整学习路线
2.1 基础能力
| 优先级 | 学什么 | 唯一推荐文档 | 达标标准 |
|---|---|---|---|
| P0 | Git | https://git-scm.com/book/zh/v2 | 会分支、合并、解决冲突、提 PR |
| P0 | Linux | https://ubuntu.com/server/docs | 会文件、进程、端口、日志、权限、systemctl |
| P0 | HTTP | https://developer.mozilla.org/zh-CN/docs/Web/HTTP | 懂请求、响应、Header、状态码、Cookie |
| P0 | JSON | https://www.json.org/json-zh.html | 能用 Go 解析和生成 JSON |
| P1 | TCP | https://datatracker.ietf.org/doc/html/rfc9293 | 能讲三次握手、四次挥手、连接状态 |
2.2 Go 语言核心
| 优先级 | 学什么 | 唯一推荐文档 | 达标标准 |
|---|---|---|---|
| P0 | Go 入门 | https://golang.google.cn/doc/ | 会变量、slice、map、struct、interface、error |
| P0 | Go Modules | https://go.dev/doc/tutorial/create-module | 会 go mod init、go mod tidy、依赖管理 |
| P0 | Go 标准库 | https://pkg.go.dev/std | 会用 fmt、strings、time、errors、json、net/http |
| P0 | Go 泛型 | https://go.dev/doc/tutorial/generics | 会写泛型函数、泛型约束 |
| P0 | Go 工程规范 | https://go.dev/doc/effective_go | 能按 Go 惯用方式写代码 |
| P1 | Go runtime | https://pkg.go.dev/runtime | 能理解 goroutine、内存、GC 相关 runtime 信息 |
| P1 | Go GC | https://go.dev/doc/gc-guide | 能讲 Go GC 基本原理和调优方向 |
| P1 | Go 新特性跟进 | https://go.dev/blog/ | 能持续了解 Go 版本变化 |
2.3 并发、测试、工程化
| 优先级 | 学什么 | 唯一推荐文档 | 达标标准 |
|---|---|---|---|
| P0 | context | https://pkg.go.dev/context | 会用 timeout、cancel 控制请求生命周期 |
| P0 | sync | https://pkg.go.dev/sync | 会用 WaitGroup、Mutex、RWMutex、Once |
| P0 | 单元测试 | https://go.dev/doc/tutorial/add-a-test | 会写表驱动测试 |
| P0 | pprof | https://go.dev/doc/diagnostics | 会抓 CPU、内存 profile |
| P0 | 代码评审规范 | https://go.dev/wiki/CodeReviewComments | 能按 Go 社区规范写代码 |
| P1 | 结构化日志 | https://pkg.go.dev/log/slog | 会用 slog 输出结构化日志 |
| P1 | Fuzz 测试 | https://go.dev/doc/tutorial/fuzz/ | 会写基础 fuzz 测试 |
| P1 | OpenTelemetry | https://opentelemetry.io/docs/languages/go/ | 会接入 trace、metrics |
2.4 数据库与缓存
| 优先级 | 学什么 | 唯一推荐文档 | 达标标准 |
|---|---|---|---|
| P0 | MySQL | https://dev.mysql.com/doc/ | 会建表、索引、事务、执行计划 |
| P0 | database/sql | https://go.dev/doc/tutorial/database-access | 会用 Go 原生方式访问数据库 |
| P0 | GORM | https://gorm.io/zh_CN/docs/ | 会用 ORM 完成 CRUD、关联、事务 |
| P0 | Redis | https://redis.io/docs/latest/ | 会缓存、过期、锁、限流、排行榜 |
2.5 Web API 与安全
| 优先级 | 学什么 | 唯一推荐文档 | 达标标准 |
|---|---|---|---|
| P0 | net/http | https://pkg.go.dev/net/http | 能不用框架写 HTTP API |
| P0 | Gin | https://gin-gonic.com/zh-cn/docs/ | 会路由、参数绑定、中间件、JSON |
| P0 | JWT | https://datatracker.ietf.org/doc/html/rfc7519 | 能讲 Token 认证流程 |
| P1 | OpenAPI | https://spec.openapis.org/oas/latest.html | 能设计 REST API 文档 |
| P1 | Web 安全 | https://owasp.org/www-project-top-ten/ | 懂 SQL 注入、XSS、CSRF、认证风险 |
| P1 | OAuth2 | https://datatracker.ietf.org/doc/html/rfc6749 | 能讲授权码、AccessToken、RefreshToken |
2.6 微服务与分布式
| 优先级 | 学什么 | 唯一推荐文档 | 达标标准 |
|---|---|---|---|
| P0 | gRPC Go | https://grpc.io/docs/languages/go/ | 会写 gRPC 服务和客户端 |
| P0 | Protobuf | https://protobuf.dev/ | 会写 .proto 并生成 Go 代码 |
| P0 | Kafka | https://kafka.apache.org/documentation/ | 会生产、消费、幂等、重复消费处理 |
| P0 | etcd | https://etcd.io/docs/ | 会服务注册发现、配置存储 |
| P0 | Prometheus | https://prometheus.io/docs/introduction/overview/ | 会暴露指标、理解 QPS、延迟、错误率 |
| P1 | 系统设计 | https://docs.aws.amazon.com/zh_cn/wellarchitected/latest/framework/welcome.html | 能理解可靠性、性能、安全、成本 |
| P1 | 云原生应用设计 | https://12factor.net/zh_cn/ | 会配置、日志、进程、端口、环境分离 |
2.7 云原生与交付
| 优先级 | 学什么 | 唯一推荐文档 | 达标标准 |
|---|---|---|---|
| P0 | Docker | https://docs.docker.com/get-started/ | 会 Dockerfile、镜像、容器、compose |
| P0 | Kubernetes | https://kubernetes.io/zh-cn/docs/home/ | 会 Pod、Deployment、Service、ConfigMap |
| P0 | GitHub Actions | https://docs.github.com/zh/actions | 会自动测试、构建、打包镜像 |
| P1 | Nginx | https://nginx.org/en/docs/ | 会反向代理、负载均衡、基础配置 |
2.8 AI 时代后端能力
这是现在及未来 Go 后端的重要增量。
| 优先级 | 学什么 | 唯一推荐文档 | 达标标准 |
|---|---|---|---|
| P1 | LLM API | https://platform.openai.com/docs/overview | 会调用大模型、流式输出、Function Calling |
| P1 | 向量数据库 | https://milvus.io/docs | 会向量存储、相似度检索 |
| P1 | MCP / Agent 协议 | https://modelcontextprotocol.io/ | 能理解 AI Agent 工具调用和上下文协议 |
说明: 如果你在国内求职,LLM API 也可以替换成国内大模型官方文档,例如阿里云百炼、DeepSeek、智谱、Kimi 等。 但核心能力是一样的:
- LLM API 调用
- 流式响应
- Prompt 管理
- RAG
- 向量检索
- Function Calling / Tool Calling
- Token 统计
- 限流和配额
- 内容安全
2.9 高阶选修
这些不是每个人都必须学。 根据岗位 JD 选 1~3 个即可。
| 方向 | 学什么 | 唯一推荐文档 |
|---|---|---|
| Kubernetes 进阶 | Helm | https://helm.sh/docs/ |
| Service Mesh | Istio | https://istio.io/latest/docs/ |
| 国内消息队列 | RocketMQ | https://rocketmq.apache.org/docs/ |
| NoSQL | MongoDB | https://www.mongodb.com/docs/ |
| 搜索 / 日志 | Elasticsearch | https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html |
| NewSQL | TiDB | https://docs.pingcap.com/zh/tidb/stable |
| OLAP / 分析型数据库 | ClickHouse | https://clickhouse.com/docs/en/home |
| SRE / 稳定性 | Google SRE Book | https://sre.google/sre-book/table-of-contents/ |
2.10 算法
| 优先级 | 学什么 | 唯一推荐平台 | 达标标准 |
|---|---|---|---|
| P0 | 算法与数据结构 | https://leetcode.cn/ | 150~250 题,能讲清楚思路和复杂度 |
优先级顺序:
- 数组
- 字符串
- 哈希表
- 链表
- 栈和队列
- 二叉树
- 二分查找
- 排序
- 回溯
- 动态规划
3 最终项目组合
如果要覆盖绝大部分岗位,建议做 3 个项目。
3.1 项目一:短链接服务
目标:证明你能独立完成完整后端服务。
技术栈:
- Go
- Gin
- MySQL
- Redis
- Docker
- Prometheus
- GitHub Actions
必须包含:
- 用户登录
- JWT 鉴权
- 创建短链
- 短链重定向
- 访问统计
- Redis 缓存
- 接口限流
- 单元测试
- Docker 部署
- 压测数据
3.2 项目二:优惠券 / 秒杀服务
目标:证明你能处理并发、幂等、异步任务。
技术栈:
- Go
- Gin / gRPC
- MySQL
- Redis
- Kafka
- etcd
- Prometheus
必须包含:
- 活动创建
- 优惠券领取
- Redis 预扣库存
- 幂等控制
- 分布式锁
- Kafka 异步处理
- 失败重试
- 指标监控
- 压测报告
3.3 项目三:AI RAG 知识库服务
目标:证明你具备 AI 时代 Go 后端能力。
技术栈:
- Go
- Gin / gRPC
- LLM API
- 向量数据库
- Redis
- PostgreSQL / MySQL
- Docker
- OpenTelemetry
必须包含:
- 文档上传
- 文档切片
- Embedding 生成
- 向量检索
- RAG 问答
- 流式输出
- 会话管理
- Token 统计
- 限流和配额
- Function Calling 或 MCP 工具调用
这个项目是当前市场很加分的方向,例如:
- AI 客服
- 企业知识库
- 智能运维助手
- AI Agent 后端
- LLM Gateway
4 到底够不够?
4.1 如果只找普通 Go 后端工作
上一版最小路线基本够:
- Go
- MySQL
- Redis
- Gin
- HTTP
- Docker
- 项目
- 算法
4.2 如果要覆盖绝大部分岗位
需要加上:
- Go 泛型
- Go runtime / GC
- OpenTelemetry
- 安全
- OAuth2 / OpenAPI
- 系统设计
- Kafka / etcd / gRPC
- Kubernetes
- AI 应用开发
4.3 如果要适应时代发展
必须补:
- 可观测性
- 云原生交付
- 稳定性设计
- AI 应用后端能力
- LLM API / RAG / Agent / MCP
5 最终执行建议
不要把所有 P2 都学完再找工作。
正确顺序是:
- 先完成 P0
- 再完成 P1
- 做 2~3 个项目
- 开始投递简历
- 根据 JD 补 P2
你最终应该达到这个状态:
- 能独立开发 Go 后端服务
- 能设计 MySQL 表和索引
- 能用 Redis 解决缓存和锁问题
- 能用 Kafka 做异步解耦
- 能用 gRPC 拆微服务
- 能用 Docker/Kubernetes 部署服务
- 能接入 Prometheus/OpenTelemetry
- 能写单元测试和压测报告
- 能讲清楚项目难点和优化结果
- 能做一个 AI RAG / Agent 后端项目
到这个程度,你的学习路线就已经覆盖了绝大部分 Go 后端求职市场需要的内容。