优秀工程师要具备哪些能力?

更新日期: 2019-06-14阅读: 4.1k标签: 工程师

平庸的人总是相似,优秀的人却各不相同。在这各不相同的特性里,掩藏着怎样的共性?据说这十大能力,是通往优秀工程师之路的必备资质。


预备工作的能力

常言道“一日之计在于晨”,一天的工作效率,其实取决于早晨的工作状态。我们的工程师每天早晨来到公司,都会这么做: 

  1. 主动与身边的同事打招呼,面带微笑。

  2. 清理自己的办公桌,保持干净整洁。

  3. 打开电脑,顺便可以去倒一杯水。

  4. 打开钉钉、微信、邮件等工具的电脑客户端(同时保持手机客户端也开启)。

  5. 查看自己的今日待办任务,开始完成自己最重要的工作(一切遵循“要事第一”原则)。

「一个优秀的团队,需要高效的做事方式,才能把对的事情做对。」


把事情做对的能力

如果说产品经理的目标是“做对的事情”,那么工程师的目标就是“把事情做对”。前者固然重要,但后者也影响着产品最终的成败。对于工程师而言,我认为有些重要环节需要在平时工作中加以关注,比如: 

  1. 收到产品经理的需求宣讲会议邀请时,能合理安排好自己的工作时间,确保自己不会缺席这次会议。

  2. 在需求宣讲会议中,认真思考,积极主动地提出自己对产品的看法和建议,并能制造轻松活泼的会议氛围。

  3. 拿到产品需求文档后,仔细阅读文档中的每个细节,对于疑惑的问题,汇总下来之后,私下找产品经理逐个确认。

  4. 充分理解需求后,快速设计技术解决方案,并主动找技术主管探讨方案的合理性,确保此方案行之有效。

  5. 动手编码之前,首先定义接口及其文档,并主动找接口调用者确认接口的合理性,确保后续双方可以并行开发。

  6. 每个接口都有对应的单元测试,确保接口实现变更后,可立即执行单元测试,以判断接口的稳定性。

  7. 代码中包含关键性注释,且注释内容做到言简意赅,确保让他人可通过注释快速了解自己的代码逻辑。

  8. 数据库的变更都有对应的执行脚本,脚本中能清晰地看到每次变更的内容与时间,便于上线前数据更新。

  9. 交付集成测试前,自己能反复测试,确保集成后功能的稳定性,以帮助测试工程师节省更多的时间。 

  10. 每次产品发布后,记录代码变更日志,以便让其他工程师知晓代码的变更细节,后续能更加方便地在此基础上做扩展。

「打造一个优秀的团队,先从优秀的个人开始。」

与队友协作共事的能力

软件开发这项工作充分体现了团队协作精神,优秀的工程师必须学会怎样与队友共事。缺乏团队协作技巧,不仅对团队发展不利,而且自己也会变得孤立,离这个行业越来越远。我给大家分享几点关于团队协作方面的个人观点: 

  1. 充分理解自己的职责,以及队友的职责。

  2. 不怀疑队友,相信队友一定能胜任。

  3. 不抱怨队友,帮助队友快速进步。

  4. 学会赞扬队友,让对方充满激情。

  5. 走进队友生活,和他成为朋友。

「人生有缘才相聚,需要珍重在一起共事的缘分。」

与同事快乐相处的能力

在其他部门同事眼中的工程师,往往是棱角分明,有些人性格内向,沉默寡言,甚至一开口说话就得罪人,自己还不知道。想成为一名与其他同事快乐共事的工程师,我觉得有几个方面需要高度重视,比如: 

  1. 与其他部门同事对话时,能面带微笑,说话风趣幽默,会换位思考,站在对方立场说话,让对方很想和你聊天。

  2. 其他部门同事找你帮忙时,不管自己有多忙,此时心情有多糟糕,都能心平气和地倾听对方到底想要什么帮助。

  3. 遇到业务上不太清楚的问题时,能及时并主动地找到懂这方面的同事,客气地咨询对方,请对方给予自己帮助。

  4. 抓住每一次能展示自己的机会,学会在公司内部分享自己的工作成果,让其他同事了解自己以及自己所在的团队。

  5. 时常主动约其他部门同事一起吃饭,增强同事之间感情,上班是战友,下班是朋友,珍惜彼此在一起共事的缘分。

「觉得自己优秀还不够,还需要别人也觉得自己也优秀才行。」

与领导融洽沟通的能力

在企业中,我们都在谈“领导力”,往往却忽略了“被领导力”。对于工程师而言,我们要先学会“被人领导”,才能学会“领导别人”,所谓“被人领导”就是与领导处好关系。在与领导共事过程中,我也有几点心得,可以给大家分享一下: 

  1. 不当众拍领导马屁,只是让领导感觉有面子。

  2. 领会领导真实意图,学会站在领导的立场上来思考。

  3. 及时向领导汇报,懂得哪些必须汇报,哪些不该汇报。

  4. 协助领导管理团队,把团队的事当成自己的事。

  5. 不越权,不跨级,与领导共同成长,共同进步。

「与领导处好关系,让自己优秀,让团队卓越。 」

快速学习新技术的能力

互联网是一个飞速发展的行业,作为软件工程师,我们必须掌握快速学习新技术的能力。我可以给大家介绍一个很奏效的学习方法: 

  1. 通过官方网站学习新技术,先看首页功能介绍,再看新手入门教程,先了解该技术可以做什么。

  2. 按照官方教程的步骤,亲自动手做一个 Hello World,目的是让自己快速上手,为后续的学习打好基础。

  3. 阅读官方技术文档,学习自己所需技术的使用方法,一定要用心去学,亲自动手,不能只是看文档。

  4. 一边学习,一边动手,一边做笔记,可用“印象笔记”等工具来记录,建议将自己的学习笔记发布到博客中。

  5. 在团队中分享自己的学习成果和经验,使团队充满学习和探讨的氛围。

「学习、总结、分享、探讨,让学习有动力,有目标,有价值。」

锻炼产品思维的能力

作为一名优秀的工程师,不仅对技术要有追求,还要对产品有所认识。技术服务产品,技术驱动产品,不懂产品的技术人员不是优秀的工程师。我认为产品思维是可以训练出来的,比如: 

  1. 训练用户视角,把自己想象成真实用户去体验产品。

  2. 学习产品业务,自己动手画业务流程图,写功能列表。

  3. 研究竞争产品,思考哪些做得好,为什么要这么做。

  4. 以数据为驱动,收集并分析数据,通过数据来量化产品。

  5. 关注行业趋势,了解行业生态圈,多与产品人交流探讨。

「没有技术,就没有产品;没有产品,技术啥也不是。」

锻炼演讲技能的能力

工程师往往沉默寡言,聊技术滔滔不绝,但让他上台演讲却扭扭捏捏。可见,咱们不是不能说,而是不想说,不愿在公开场合下表现自己而已。其实这是工程师不自信的一种表现,我觉得应该突破这层障碍,习惯演讲,喜欢演讲。同样,演讲技能也是可以训练出来的,比如: 

  1. 平时多思考、多体会、多总结,一定要找机会去分享。

  2. 不要害怕演讲,把每次演讲当成是对自己的一种锻炼。

  3. 不要追求完美,只要这次比上次有一点点进步就行。

  4. 观看出色的演讲视频,学习优秀的幻灯片制作技巧。

  5. 参加 QCon 技术大会,观察大牛们怎样做现场演讲。

「演讲让自己更加自信,让别人爱上自己。」

拓展自己人脉的能力

工程师们上班坐公司,下班宅家里,人际圈除了同事就是同学,很少会关心社交,除了被家长逼着去相亲以外。我认为“交朋友”也是工程师的综合能力之一,关于交朋友的话题,我简单提几点:

  1. 保持性格阳光,活泼开朗,幽默风趣。

  2. 进微信群,发点红包,多加好友,记得点赞。

  3. 参加线下交流会,主动和参会的朋友聊天。

  4. 想办法结交大牛,向他们虚心请教。

  5. 给自己一个任务,每个月认识几位新朋友。

「优秀工程师绝不是“技术宅”,人际关系让他们变得更加优秀。」

总结工作的能力

所谓“善始善终”,好的开头很重要,好的结尾也同样需要重视。优秀的工程师绝不会草草了结自己每天的工作,他们一定会总结,会反省,会想尽办法让自己变得更加优秀,更加卓越。其实结束自己每天的工作也可以养成一种习惯,比如: 

  1. 查看“任务清单”中哪些事情没有完成,并注明延误原因(任务清单软件,首推“奇妙清单)。

  2. 将今天学到的东西以及犯下的错误,记录到“工作笔记”中(工作笔记软件,首推“印象笔记”)。

  3. 对于需要系统性学习的东西,统一安排到自己的双休日中。

  4. 将明天打算做的事情加入到“任务清单”中,并标明优先级。

  5. 思考:怎样让自己的明天比今天更加优秀?

「从平凡到优秀,从优秀到卓越,需要方法,更需要坚持。」


链接: https://fly63.com/article/detial/3710

Web前端工程师必备的PS技能之切图

Web前端工程师必备的PS技能之切图:PS中我的标尺的参考线为什么不能自动吸附图层或画布中间了?有个选项没有选择“菜单栏-视图-对齐”,按照设计师提供的设计稿,实现HTML页面,需要将设计稿切分成为最终在页面中呈现的一个个图片为“切图”

写给工程师的十条精进原则

作为一名技术人员,我们应该如何践行呢?本文总结了十条精进原则,希望能够给大家带来一些启发,更好地指导我们行动。Owner意识、时间观念、以终为始、闭环思维、保持敬畏

如何学习前端知识?优秀的前端开发工程师应该具备什么条件?

Web前端开发技术主要包括三个要素:HTML、CSS和JavaScript!如果单纯只是学习前端编程语言、而不懂后端编程语言(PHP、http://ASP.NET,JSP、Python),也不能算作是优秀的前端工程师。在成为一个优秀的前端工程师的道路上,充满了汗水和辛劳。

全栈工程师是什么?为什么要做Web全栈工程师?

随着软件技术的发展以及市场需求的变化,全栈工程师似乎已成为未来发展趋势。很多Flag公司都已经声称只招Full Stack的员工,那么面对这样的市场形势,对于正在求职路上或者是想要跳槽的程序员来说,我们需要如何准备,如何应战?现在,小编带你了解为什么这次我选全栈工程师!

高级PHP工程师所应该具备的专业素养

初次接触PHP,就为他的美所折服,于是一发不可收拾。很多面试,很多人员能力要求都有PHP高级工程师的字眼,如果您真心喜欢PHP,并且您刚起步

前端工程师自检清单与思考

对于JavaScript,掌握其语法和特性是最基本的,但是这些只是应用能力,最终仍旧考量仍然是计算机体系的理论知识,所以数据结构,算法,软件工程

作为一个web前端工程师,要不断的深入自己的技能

现在,前端工程师终于前所未有的在Web中占有了一席之地。随着多设备、浏览器和Web标准的演变革命,前端正在成为兼顾逻辑、性能、交互、体验的综合性岗位。

一名【合格】前端工程师的自检清单

前端开发是一个非常特殊的行业,它的历史实际上不是很长,但是知识之繁杂,技术迭代速度之快是其他技术所不能比拟的。

写代码这条路,能走多远?工程师能力模型告诉你

职场危机感似乎是每个人在职业生涯都会遇到的话题,我对这种危机处境和自己曾遇到的问题进行了一番思考,参考了其他人的一些结论并结合自身的经历,设计了应对的初步方案。

我放弃了成为一个全栈开发工程师的理想

一提起“全栈开发工程师”,大家的印象肯定是:这号人啊,堪称大神!会很多技术,前端后端都精通,不掌握七八种语言都不好意思出来打招呼,热点技术名词全都知道,也都会点儿;

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!