年末了,身边很多人都在考虑辞职这件事~
午休的时候,和 HR 聊起了这个话题,她说,最近公司是“新人来,老人走呀”,年底了,她招聘的压力是越来越大了!
普遍来说,即便是再不能忍受这份工作,也会熬到年后拿完年终奖再走。
但是,还是会有一部分人,宁愿不要年终奖,也要在年前跳槽。
01
最近,我就收到一个程序员的跳槽经历分享:
工作 3 年多
第一家是创业公司,1 年多。
第二家属于技术不错的公司,2 年多。
他说,自己看着身边的朋友都进入了 BATJ 这样的大厂,拿着令人羡慕的高薪,业务场景丰富、也更具挑战性。自己也想进入大厂锻炼几年,更好地提升个人能力,对以后的职业规划也有更多选择。
可要拿到大厂 Offer 并不容易……
几乎所有的大厂面试,都要求求职者熟练掌握数据结构和算法,是必考题!不管你是刚毕业还是工作了多年的老手。
而他,面试多家大厂,每次都挂在数据结构和算法上,颇受打击……
用他的经验总结:掌握数据结构与算法成为进大厂的敲门砖~
02
目前,国内的一线互联网公司,如阿里巴巴、腾讯、百度、字节跳动等,以及 Google、Facebook、Airbnb 等硅谷知名互联网公司,在工程师技术、编码能力的面试中,都会考察数据结构和算法的扎实程度,薪资越高,题目难度也会相应加大。
数据结构和算法是程序员的内功,架构搭的再好,技术使用的再新,如果没有好的数据结构设计和算法,系统也会出问题甚至崩塌,只有高效掌握算法与数据结构知识,才能解决实际工作和面试中的算法问题。
在平时的工作中,数据结构和算法的应用到处可见。
例如:在使用 OAuth2授权的时候,通常应用会弹出一个类似这样的信息,
1)获取用户基本信息接口
2)获取用户列表接口
3)用户分组管理接口
这其实就是将数据及其之间的关系有效地储存在计算机中后,通过选择合适的算法策略,并用程序高效实现。
又比如,缓存满了之后,需要删除没用的数据,保留有用的数据,这时候采取的策略就是LRU缓存淘汰算法,通过使用频率去判定数据有用与否。
所以啊,数据结构与算法的掌握的扎实程度,决定了工程师的未来发展高度。
03
既然数据结构与算法这么重要,那为什么大多数工程师的算法水平还是停留在很基础的水平呢?原因可能在于:
- 非科班出身:入行靠速成,基础薄弱,无论多简单的概念知识,都有可能成为自学阻碍;
- 没学习重点:知识体系太庞杂,刷了很多题,看了很多书,对工作和面试却没有任何帮助;
- 无练习机会:日常机械敲代码,日常工作用不到,费劲学好久,很快就忘了;
- 缺思考时间:项目急,上线还得靠加班,无暇思考代码优化与最佳解法。
其实大家都进入了一种误区,学习数据结构和算法,是非常好的思维训练的过程,不需要付出大量时间,或是需要花大量金钱。
算法学习需要技巧,找对“套路”,必将事半功倍!
标签:工作,学会,接口,面试,算法,大厂,数据结构,总是 From: https://blog.51cto.com/csnd/5952699