如果您有时间的话好好看完 如果您还在学校的话好好看完 如果您想学golang的话好好看完
读完大概3分钟
简单介绍一下golang
go语言又称golang 我喜欢叫golang
golang目前最主要的是用作后端和区块链,而区块链又被称作第四次工业革命的技术。
golang最突出的特点是处理并发的能力,轻轻松松创建10000个协程,轻轻松松处理10000个协程(golang中的协程类似与操作系统中的线程,比线程更轻量,是面试中容易问到的一个问题) 底层的系统开销接近于C语言,上层的封装可以比肩python ,有很多很优秀的库, 官方话语 “兼具Python 等动态语言的开发速度和C/C++等编译型语言的性能与安全性”
我个人对golang的前景充满信心,也很喜欢golang,对他的底层有一定的刨析
学习golang的过程
学习golang是在去年12月份,考完研的第三天,前两天很郁闷,也不知道干啥,游戏也不香了,考研结束后并没有我之前想象的快乐,倒是挺伤感的,原因肯定是没考好呗,同学说希望赶紧考,我说再给我一个月,可惜没有如果。
刚开始学习的时候,直接买了三本书
《零基础go语言从入门到精髓》 《go语言高并发与微服务实战》《go语言高级编程》
我很幸运在大学加入了嵌入式实验室,是实验室学长推荐我golang这个语言,这位学长目前在腾讯。
第一本书,我看了两周就看完了,golang和c很像,c的基础再加上面向对象的思维就能很轻松的学习golang ,golang的具体内容我就不介绍了,可以去买这三本书,我很推荐
另外在看书的过程我也看了李文周老师在老男孩go语言5期的视频 视频链接:https://www.bilibili.com/video/BV17Q4y1P7n9
,李文周老师讲的很好,很细,会去刨析源码,讲原理,这部分面试是最喜欢问的, 其实面试不会问很多的框架问题,现在学习golang的比较少,底层的原理才是一个人的能力的体现,给你们看一个图:
框架不难,难的是对语言本身的运用自如,如果有能力可以自己写框架
这里简单介绍一下golang目前的框架 可作为主要学习的框架
gin 为速度而生的路由框架
grpc 远程过程调用框架
go-micro 面向微服务的可插拔RPC框架
推荐几个学习的网站
https://www.liwenzhou.com/ 李文周老师的博客 www.liwenzhou.com是复习的很好资源,学过一遍就能理解透的知识一定是自己以前遇到过的,所以学过一遍后又忘 了这很正常,多重复看几遍。
https://studygolang.com/ go语言学习中文网,一个国内较早接触golang开发的北京大学学长做的论坛。
http://www.topgoer.com/ 网站首页有作者自己的微信,我加了,还和学长聊过,有问过他面试该咋办,还看到它上面有个错误和他探讨了,学长人很好,博客也写 的很棒,上面几乎包括了golang的所有,从基础到框架、从笔试题到笔试题、从插件库到开源仓库,都有介绍。
golang我觉得学习至少一个月,任何时候不要高估自己的能力,多敲敲,只看不敲无法上手做项目,心也会虚
找工作的经历
2月26号考研成绩出来之前,我还抱有一丝希望的,最后还是破灭了,于是开始制作自己的简历,简历前前后后修改不下二十次,修改简历是必须的,刚开始我自己都不了解自己,慢慢的我知道了我需要在简历上呈现出我自己的模样, 找工作是个推销自己的过程,当然自身的硬实力是推销自己的前提,笔试一定要过是吧!
我跟着做了一个golang的小项目,还没有使用到golang的上层框架,写在了简历上,另外还有我写的一个cocoscreater2d游戏的项目(同样感谢我加入的嵌入式实验室,在嵌入式的两年接触到了优秀的学长学姐,优秀的老师,思想在碰撞,格局在变大,感恩)
投简历我都是在boss直聘上投的,其他的平台我没有看到有golang校招的,还有一个拉钩网,有校招的,但是没有回应,倒是他自己在打广告,给我打了几次电话报他们的班。我只在我们学校的招聘会上看到一家在招golang的企业,我去了,他很喜欢我,我觉得他也不错。
面试第一家的时候完全没有面试经验(没有做笔试),视频面试的,全层看着地板思考问题,很糊涂就像一个答题机器,当然还有很多问题是不知道怎么答的,支支吾吾的,最后面试官会问一个问题:你还有什么要问我的吗?如果面试官觉得你还可以,他会主动和你聊他感觉你会问的,如果并没有和你聊,而是只说了这句话,那大概率是没了
面试失败是正常不过的事情了,刚开始还是挺伤心的。。。
然后了在面试之后再复盘一下,把问题总结一下,多面几次,总有一个有缘分的公司会与我相遇,我坚信。
到今天3月30号为止,拿到过三家offer ,golang目前来说岗位还是不多的,但是学的人也不多,找工作相对来说比java简单,比java的学习成本低,室友去了培训班学java 学了5个月,我只学了3个月,对上层的框架并没有太多的使用,只是了解,企业的面试题大多是golang的底层,但基础一定要有的,不是0基础
笔试介绍
目前的大厂都是需要笔试的,笔试内容大都有编程 题,我个人建议去大厂的话需要先去leetcode刷200道题,这个才算把握较大。之前有一次做过是一个小时5个编程题的,没有熟练,12分钟之内根本没办法,也有些公司是有选着题和编程题一起的,不管如何是无法避免编程题。用golang刷leetcode既能学习语言本身又能增进编程思维,何乐而不为了。
小厂会有笔试题也可能没有笔试题,我就面了几家是没有笔试题的,直接面试,从面试能看出你对知识点的掌握程度,问的很广,很深。
选着题的笔试题可以参考牛客和 http://wen.topgoer.com/docs/gomianshiti/mianshiti
面试介绍
我面的都是golang web后端这块的工作,面试的问题会涉及到 golang语言的基础、数据库包括mysql redis 、计算机网络、数据结构、linux命令、还会涉及些java的知识。不知道为什么老是问我Java,是觉得我golang不咋地吗?这个大可不必去管java,都没啥事,其他几个学好就好了。
考研专业课408给我很大的帮助在面试的时候体现了出来,面试问的最多的就是数据结构和语言本省,再次是计算机网络,最后是操作系统了,专业知识永远是重点。
询问的方式比如 讲讲b+树,讲讲快排是怎么实现的?快排时间复杂度n平方是为什么?,http2.0相比http1.1的区别,post和get的区别,三次握手是怎么回事。
更多的面试题可查看牛客面经和http://wen.topgoer.com/docs/gomianshiti/mianshiti,或者知乎搜索golang面试题。
当然要踏入社会了,我也在考虑是否是工作算了还是二战,选着太多不是一件好事
目前的想法是工作会再说,这是我想做的工作,我喜欢golang,薪资和前途是我考虑的重点,现在基本能满足我
身边的亲人都支持我去考研,我会回去吗?7月份再给答案
谢谢观看
有疑问加站长微信联系(非本文作者))