高级软件工程师自述:这个职位到底要做什么?
极客时间编辑部
讲述:初明明大小:3.46M时长:03:47
目前来看,几乎每一家软件公司都设有技术晋升与管理晋升两条职业道路,这意味着如果只走技术方向,技术人员也完全可以在不出任管理职务的前提下达到相同的职级。很多初级程序员在选择职业发展道路时,预测自己未来会是一名高级软件工程师,而对于这个职位到底到做什么,其实是比较含糊的。
近日,高级软件工程师乔伊·埃博茨(Joy Ebertz)发文分享了他的工作内容,以下是他的自述。
我现在是一名高级软件工程师,接下来我会开诚布公地告诉你,我是如何工作以及如何看待这份工作的。而这并不意味着我所说的内容是高级软件工程师的唯一日常。
如上图所示,我花了点时间思考自己每天需要处理的具体事务,并把它们整理成一份图表。我肯定遗漏了一些内容,而且具体工作每周都会出现明显波动,所以这只是一份粗略的图表,仅供参考。
我意识到,自己只花了大约一半的工作时间直接为 Scrum 团队完成任务。其中包括所有团队会议,我觉得这进一步突出了流程精简的重要意义。具体工作包括编写设计文档、编写代码、进行代码审查以及测试所有代码等内容。
其次,我用了大约 20% 的工作时间做技术咨询。其中包括为自己的团队与其他团队提供咨询建议,回答技术问题以及在 API 标准委员会任职等。
至于剩下的时间,基本上就是花在指导他人、建立更大的项目规划、技术品牌以及其他杂事身上。在指导当中,又分为正式指导与非正式指导。非正式指导一般是一对一当面传授心得,正式指导自然是在众多同事面前通过演示文稿的形式讲解项目知识了,而且可能涉及一场甚至是多场会议。
虽然正式指导看似有用,但它在我的指导内容中只占了很低的比例。相反,在大多数情况下,最好的方式是只立足一到两个问题围绕同一主题进行讲解。在非正式指导方面,我更倾向于称其为同伴指导或者相互指导。这并不是单纯的导师与学生的关系,而是我会把我自己的问题与思路分享给同事,他们也同样向我分享。我们都能为对方提供见解与想法,并从其他人的不同观点当中受益。
大型项目规划包括与其他高级工程师及经理合作,为我的团队或者所在部门设定技术方向。其中还可能包括改善工程中的多样性与包容性等。基本上,这些都是涵盖多个团队的长期战略项目。随着时间的推移,我先后参与了众多不同的大型项目。有时候同事们会邀请我加入讨论,但一般来说我都能早一步发现问题并主动组织讨论。
接下来是技术品牌问题,我的主要工作就是帮助企业改善品牌形象。就个人而言,这主要涉及撰写博客文章,外加接受访谈或者帮助他人编辑文章内容。其中一些属于宣传性信息,但也有一些更侧重于学习与分享,旨在引导我们的工程师对于部门中正在研究的某些课题产生兴趣。
最后,我提到的杂项是不太好归类的其他工作内容。其中囊括了各种各样的事务,包括接受采访、参加技术讨论或者参加公司内的黑客马拉松活动等。这些事情同样重要,但在时间占比上相对比较有限。
以上就是埃伯茨作为高级软件工程师的工作内容,希望能给你带来参考价值。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论