之前我出了一期全栈开发学习路线
https://www.bilibili.com/video/BV1xE42157Ag/
但是很多人并不是和我一样,想往全栈开发方向走
可能就专注与后端开发
比如我,在公司里面我的职位其实是后端开发,只有自己的项目我才是全栈开发
所以对于后端开发,对于go语言来说,学习路线我还是有话语权的
确定方向
因为go语言能做的事情还是很多,比如服务端开发、云原生、区块链
大部分我接触到的,还是以服务端开发为主
哪些是必学的
很多人没有那么多时间什么都学一下
当务之急就是先把最重要的先学了
什么是最重要的呢?
如果你还在找工作,那么你目标公司需要的技术栈就是最重要的知识
比如公司用的是gin、gorm做web开发
那你就得学gin、gorm,然后快速的上手做一下项目,把项目流程搞清楚
这个地方可以看看我的 博客系列,fai课程
如果你的目标公司是用go-zero微服务模式开发
那你就得学下grpc,go-zero,然后可以看看我的fim课程
如果你的目标公司是用其他的web开发框架,那你就得找对应的视频或者官方文档去学习
总之,公司需要的才是最重要的
对了,mysql,redis这些我默认你们都是学了的
还有就是我的go系列基础课程,go,gin,gorm这三个是必学的
比如gin,从0开始学最多也就是三天,学完之后再类比去学其他的库
比如echo、fiber、beego、revel、Iris, 这些跟着官方示例,学完也就一个下午
所以不要再问我为什么不讲这些了,同类型的我会选用的人多的讲,一是受众面广,二是出现问题好搜
如何过面试
中小公司,直接去boss上找岗位职责,看看技术栈用的啥
大公司,去网上搜面经吧
我的很多课程、项目都是技术向的
学了那些不一定能通过面试,主要是面试不仅仅是面技术能力(占40%)
一般面试的话,也就是问下常见面试题,如果问项目的话,一般就问你项目中的一些问题,设想一个场景,你如何去解决场景中的一些问题
所以,就算你没有面上,也不要气馁
哪些是需要学的
到这个阶段,说明你已经获得了一份工作
在入职前就得学会的,git和linux
后面你如果想在公司里面有点话语权,遇到问题不慌,那你还得学一下扩展知识
nginx、docker、计算机网络、前端的一些东西
为什么要学前端呢,其实是为了更好的定位项目问题,我是真遇到过系统出问题,很多人不知道怎么去排查的
比如有一个页面,本来有数据的,但是某一天没数据了,领导大概率会觉得是后端问题,测试大概率会觉得是前端问题
但是只要会一点前端,打开f12看下,请求有没有过去,数据有没有正常响应,就能确定是不是前端问题
长期学习的
到这个阶段,说明你已经有一份稳定的工作了,并且还有空余时间学习
一定要培养遇到问题解决问题的能力
对一些技术栈的底层可以进行深入的了解
比如mysql主从同步的原理、gin的路由匹配机制、go内存管理、redis底层
docker网络的底层、分布式系统
能到这个节段,说明你在go开发领域,已经不需要我的指引了
做自己想做的事情吧