520 不虐狗,送上 6 个高级工程师的成长建议!
版权声明:本文为 DLonng 原创文章,可以随意转载,但必须在明确位置注明出处!
今天 520,各大媒体朋友圈都在虐狗,为了大家的生命安全,所以我就不参合了,今天给大家分享一些关于程序员职场进阶的观点,相信一定会对你有帮助的。
初入职场或者还未工作的大学生的你是否有下列这些困惑:
- 平时工作总是 CRUD 业务逻辑开发,感觉没什么实质性的提升,很是苦恼。
- 不知道自己该往什么方向努力,感觉有力无处使。
- 初入职场 0 - 3 年工作经验的人如何成长为高级工程师?
- 有没有高级工程师的简单判断标准?
- 有没有一些高级工程师必须要掌握的技能?
类似的困惑还有很多,并且网上相关的解惑文章也很多,但很多讲的都很乱,没有把握重点,所以今天我就总结了成长为高级工程师最为重要的几个方面。
1、高级工程师的定义
工作时长在 3 - 5 年,具有独立设计一个业务模块,数据库表以及 UML 的能力,懂得利用部分设计模式和算法,能够编写高质量代码。
总结来说就是 3 点:需求分析、方案设计、编码实现,再深入提炼就是 2 个字「独立」,也就是说高级工程师要具备独立开发与设计的能力,一般都是要求能够独立负责一个模块的开发工作。
说一个误区,有人认为工作年限长了就一定资深,我认为不太准确。这种说法适用于那些工作习惯好,学习能力强的职场人,而对那些生活没有条理,工作中经常犯相同错误,不爱总结,整天混日子的人士是不适用的。
2、高级工程师的 6 点建议
1)选定一个方向
比如音视频处理,算法,架构,后台等,为以后成为该领域的技术专家做准备,不要贪多,少就是多,先学深入,再横向拓展。
工作一开始千万不要觉得精力充沛就什么都学,导致到头来什么都不会,后悔当初没有坚持学习一种技术。
2)基础永不过时
打好计算机基础,其中算法与数据结构必备,也是以后跳槽面试必问的东西,相信已经工作的朋友深有体会。
大厂的算法面试也不是很容易搞定的,面试中很容易思维定式导致简单的问题复杂化,其实归根结底还是基础不牢固,除了基础,也要有在该领域实打实的技术积累,毕竟是要靠技术吃饭。
3)阅读一份开源项目代码
高级工程师不仅要能会使用开源项目,而且要求自己能够读懂项目,很多程序员同学在项目开发中用别人已经写好的开源项目感觉很爽,很简单。
可是当你静下心来仔细想想,在开发的过程中自己做了什么,有没有掌握核心的技术,可能大部分同学都没有吧,最后就会感觉做了很多项目,但是还是感觉自己很虚,没有真本事。
所以如果你想进一步提高技术,那么一定要阅读至少一份优秀的开源项目,开始不要贪多,先搞懂一个,开源项目去 GitHub 上找找。
4)多问为什么
初级工程师知道怎样做,而高级工程师要知道为什么要这样做。
平常开发过程中多问问几个为什么,不仅能够锻炼自己的思考能力,也能加深对项目的理解,机会永远是留给主动的人。
5)写个人博客总结
写总结这件事,怎么强调都不为过!你把你的成长过程记录下来,平常项目遇到的问题也记录下来,时不时的写写自我总结。万一哪天老板看到了你写的东西,一看,这小子可以,思想这么深刻,执行力也不错,然后再结合平常的工作业绩,可能下一个提拔的就是你。
但写作的初心还是要本着提升与总结自己这个目的来,不要为了博得老板或者同事的好感而写,那样是没用的。
你说你要比别人高级,体现在哪里呢?也许几篇有深度的自我总结就可以体现出来,毕竟一个人的思想可以指导 Ta 的行动。
6)思想要上一个台阶
思想这个东西比较虚,不太想说,很多时候都要你自己去把握尺度,但我个人认为:责任心与沟通这两个方面是通往高级工程师的必经之路,其他的自己把握,毕竟每个人都不一样。
总之,建议说也说不完,关键在于执行,高级工程师不是终点,技术专家也不是人生的目标。
永远要记住乔布斯的话:Stay Foolish,Stay Hungry!
本文原创首发于微信公号「登龙」,分享机器学习、算法编程、Python、机器人技术等原创文章,扫码即可关注!
DLonng at 05/20/19