共计 1138 个字符,预计需要花费 3 分钟才能阅读完成。
今天小编要跟大家分享的文章是关于想成为一名合格的工程师需要具备哪些能力。技术人员追求的也不仅是知识点,而是在专业领域正确做事的方法及达成目标的能力。两个同时入职的员工,一段时间后技术好的那个就发展得好吗? 还是有更好做事方法及能达成目标的人更容易得到认可? 今天小编就带大家一起来看一看一个好的工程师应该具备的能力有哪些?想要 Linux 入门 的小伙伴们看好了!
一、设计能力
设计能力参见前文技术评审中关于设计的描述,简要的说就是具备设计简洁、易于扩展及维护的功能及特性能力。
需要补充一个设计方面的 anti pattern,选择合适的技术及架构,意味着不引入及增加不必要的抽象层或框架,并提供高质量、稳定、高效、安全的代码。不少能力还不错的人员有这个缺点,一个简单的项目,出于追求流行或者对于某项技术的崇拜心理,引入了复杂的技术或框架,对于个人来说确实提高了见识,增加了业内交流的资本,但是对于组织来说这种锻炼却是团队成效的噩梦,对于技术从业人员来说,不盲目引入不必要的高深技术来保证项目进展是一种基本的职业素养。
此外设计中还有一个隐含的条件,就是选择的方案能相对减少开发周期,加快交付时间。也就是下一点介绍的。
二、交付能力
· 通俗的说就是不管发生了什么,都能按时交付。
· 充分考虑自身技术能力、项目依赖、队员排期冲突、负面情绪、技术方案风险、未预知的技术障碍、需求变化等。
· 具备为功能的设计做取舍的能力,但功能取舍并不以牺牲产品的核心愿景为前提。
三、规范与协作
· 在编码前能够完成模块或特性的清晰架构或设计文档,并保持在开发过程以及代码重构过程中文档的一致性。
· 推动及促进团队的代码及设计规范,并确保执行过程中与规范的一致,并能根据实际情况对流程及规范提供优化建议。
· 编写的代码通常当做团队的模板或者是最佳实践的设计模式。
四、团队效率贡献
· 有改善团队效率方面的贡献吗? 比如做一个相似项目为何周期很长? 为什么开发完成之后又花了比开发周期更长的时间调试或修改 bug?
· 推进代码复用,你的代码和工具其他小组或部门愿意用吗,准备让他们用吗? 有推动让他们用吗?
· 自动化体系来帮助提高测试、开发、debug、跟踪用户问题的效率
· 能够用服务化的方法来解决异构、多版本问题
· 有优化流程贡献?
已经不是那个独行侠或个人技术英雄的时代了,融入团队,多考虑对团队的贡献,更容易得到成长。
以上就是小编今天为大家分享的关于想成为一名优秀的技术工程师需要具备哪些能力的文章,希望本篇文章能够对想要成为一名优秀的工程师的小伙伴们有所帮助。想要了解更多 IT 相关知识记得关注马哥教育官网。最后祝愿小伙伴们工作顺利!
作者:Tim Yang
来源:timyang.net/management/engineer-performance/