3

浅谈优秀工程师的成长因素

 3 years ago
source link: https://my.oschina.net/dataclub/blog/4840767
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
0ea53fc7-1078-4242-9106-20f1429ba5e4.gif

大家好,我是一哥。最近很多读者在问职业规划的一些问题,有刚毕业的学生,也有工作了3年以上的程序员,今天一起跟大家聊聊,如何成长为一枚优秀的工程师。

048ea902-966f-44b4-a3fc-dbeef2a0e291.jpg

一、自身因素

作为一名程序员,要想成为一名出色的工程师,要从以下三点加强。

e5362079-8772-4785-adb0-f04329e746cc.jpg

思考可以是技术架构上的设计优化,也可以是业务逻辑上的改进创新。在接到每一次任务时候,你要去想自己到底要解决一个什么问题?解决的价值是什么?目标是什么?有哪几种方案能够解决问题?要学会不断问自己为什么,而这也恰恰是我们很多程序员所缺乏的。在日常的工作中,我们会接到不同的任务,而且通常都只有加班才能完成,自己“懒”的去思考为什么,只想着赶快干完,下班!其实你只需要一点时间,如果现在你的工作中没有思考的时间,那么你就会很难提高。最近在面试一些同行的时候也发现,有些人的工作只是手熟罢了,没有规划,提不出方案,领导安排什么就是做什么,所以我们要从码农的思维转换一下。

9d0e3184-5bd5-468e-ba5e-46b293e83367.jpg

学习包括自己专业相关的,比如大数据技术栈,某种语言,某种工具,或者某种方法论。学习技术让自己从技术角度考虑自己可以完成哪些任务;学习方法论可以让自己从流程管理方面考虑怎么提高工作效率。

其实现在各行各业都需要学习,特别是对于IT行业,技术变化非常快。就像几年前实时处理还是storm和Spark的天下,现在实时计算引擎Flink成长的非常快,占据了各个大厂的技术实践。

3dcc40a4-4e79-423b-a8bf-3a0887931fca.jpg

光有学习还不行滴,要有实践。我们不是产品经理,工程师都是需要动手滴。(产品经理们不要生气哈,你们其实更不容易)

其实,在处理很多线上bug定位和数据处理的坑时,如果你没有遇到过类似的问题,其实很难立刻定位到,没有亲身经历,是永远不知道定位处理一个问题有多大的成就感。在处理问题方面,其实多实践还是有好处的,一方面是熟能生巧,另一反面会增加你看问题的深度,尤其是对以后的开发,可以增加一些提前避坑的方案。我每次面试的时候都会问面试者他参与的项目,遇到了什么问题,怎么解决的。没有处理的线上bug的程序员,不是一个好工程师!

二、外部因素

外部因素主要是指公司,大公司可以提供你更多的平台,让你能够专心研究精通一门技术;小公司需要你是全栈,各种打杂,全面发展。

b4be10f2-3ba4-451d-8047-f0c9826300f5.jpg

遇到好的老板,会给你指出明路,让你更快的发展。同时也会制定好的管理方法,提高大家的研发效率。比如绩效,绩效的制定是为了让大家制定一个目标,努力去完成,是要有牵引性的,而不是简单的工时累计。同时牵引性的绩效达成了,自己也会有成就感,同时还会获得物质上的奖励。其实对于很多程序员来说,成就感有时候比多拿一点绩效工资更舒服。(程序员们都比较孤傲,哈哈)

其实很多时候自己做的事情重不重要和领导有很大关系,好的领导善于引导你,给你“挖坑”,让你快速成长,而且能给团队争取好的资源,让队友们知道自己做的事情对公司发展是多么重要。

我们经常说“不怕神一样的对手,就怕猪一样的队友”,有时候队友差到带不起来,对整个团队都是有影响的。

每个团队成员的能力都是呈阶梯的,优秀的同事可以带领大家一起进度,给团队贡献好的工具,方法论,并展开一系列培训。每个团队都需要这样一个人,帮助团队Leader实现团队技术上的进度。如果你的团队没有这样的人,那你就努力的成为这个角色吧。

“优秀的工程师都有相似的品质,码农却各有各的‘菜’”。一哥给大家推荐一本书,有机会大家可以读一下。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK