擅长临床白癜风研究的专家 https://m-mip.39.net/disease/mipso_5470751.html
很多人都有以下好奇:
软件工程师(SoftwareEngineer)的职业生涯是怎么样的?
是不是一直当“码农”当到头发花白,还是会有更多的职业选择?
初级软件工程师又该如何提升自己?
今天,我们就来给大家介绍一下,SoftwareEngineer的进阶之路。
EngineeringLadder
首先,我们来介绍主流IT公司,如Facebook、Google、Amazon,是怎么给工程师来分技术等级的,也就是传说中的EngineeringLadder。
图片来自网络
这些技术等级在不同公司的名字可能不一样,但是大体是对应的。
比如说,Facebook的E3大体对应的是Google的T3,也大体对应的是Amazon的SDEI。
当然每个工程师之间还会有一些个体差异,并不是完全对应的。
一般硕士毕业的newgrad,进入公司的等级就是E3/T3/SDEI。
博士毕业的newgrad,一般的等级是E4/T4/SDEII。
这两档基本都属于初级工程师。
进入E5/T5/SDEIII之后才可以称之为高级工程师(SeniorSoftwareEngineer)。
比SeniorSoftwareEngineer更高级的职位,在不同的公司之间的差别就比较大了,本文就不一一介绍了。
图片来自网络
以上就是传说中的EngineeringLadder,每一个工程师都对应会有自己的等级。
那么,问题来了。
主流技术公司是如何划分工程师等级的?
是如何评估工程师表现的?
又是如何决定他们的“升官之路”(Promotion)的呢?
下面,我们用一线大公司Google来举例分析。
Impact
Google最看重的,就是你的工作所产生的影响(Impact)。
比如,你所开发的新产品给公司带来了多少新客户?贡献了多少流量?
这是一个很通俗易懂的Impact,证明你对公司的直接贡献。
或者,你开发的某某算法帮助公司减少了多少IT支出?减少了多少网络延迟(latency)?
这个减少支出也是一种贡献。
可是,对于有些Google的组(比如一些SRE),他们不直接跟用户打交道,也比较难从用户的角度来说证明自己的贡献,这时候,要怎么体现自己的Impact呢?
其实,他们可以声明自己的工作(比如说开发某codereview的工具)帮助其他工程师节省了多少engineeringhour?
这个也可以间接证明对公司的贡献。
为什么Google要选择使用Impact这一标准,来衡量工程师呢?
这主要是为了防止工程师们闭门造车,研究各种黑科技不亦乐乎,而忘记了公司的首要目的是要盈利和竞争。
Impact其实代表的就是你对公司的盈利和提高竞争力所做的影响。
Difficulty
Google其次看重的,就是技术难度(Difficulty)。
这个可能也不难理解,毕竟Google是一个技术公司。
这个尺度也是为了避免一些不公平。
比如,一些组刚成立的某个新产品,可能会具有“先天优势”,因为他们很容易就能达到用户翻倍、流量翻两倍等等。如果光是按这个指标评估,对其他组未免显得有些不公。
因此,Google引进评估的第二个维度——就是Difficulty,这就需要工程师去证明,自己达到的这个贡献是不容易的,是有很强的技术难度的。
比如说要开发新的framework,需要新的API,而不是仅仅调调参数就可以达到前面所说的Impact。
EngineeringLadder
工程师想提升自己的职位,第三个需要证明的就是Leadership(领导力)。
这个并不简单等同于你在台上能吹会道,而是更多地表现为你能够团结很多人,并让他们一起为了一个共同目标而努力。
这些工程师可能并不一定是你的同组的同事,可能是别的组、别的部门、甚至别的公司的工程师。
图片来自网络
如何证明自己的Leadership?
你要能够:
1.提出某个目标
(比如说我要有一个新的CloudAPI)
2.说服别人相信你的目标
3.管理项目进度
4.最终推向市场
最后,在高手如云的IT大公司工作,想要进阶的另一大重要因素,就是不断提升自己的背景。
来Offer全栈项目实践班
为你开启成功职场!
?5个工业界最热大项目
?充实简历、斩获面试
?强力提升技术背景
?助你职场晋升一臂之力!
2月12日正式开课!
第一节课免费试听!
EarlyBird立减刀!
想获得刀以上的优惠,
请识别海报上方