PHP-Z

编程

你还不是一个软件工程师

2016-2-21 09:19 发布者: admin

  英文原文:You Are Not a Software Engineer (Yet)

  如果你以写程序为生计,那你有机会称自己我“软件工程师”。 但也有可能你称不上。

  就我而言,我毕业于一个工程(软件系统)学位并且时常很自豪的称自己如是。

  但是,只有“编写代码”多年后我才明白,称自己作为一个工程师是一个正确的,不是来自大学,但却必须要获得的东西。

  有多少“软件工程师”可以称他们是和阿基米德,亨利·福特或者尼古拉·特斯拉范畴的?

  把我们的眼观放低一点,有多少人可以说他们做产品至少有 10 年?又或者 5 年?又或者是 5 个月?

  切莫焦虑

  倘若你并未赢得自称工程师的资格,切莫焦虑,我相信你是可以做到的。

  我认为作为软件工程师最重要的要素就在于他们(真正称职的软件工程师)是极富原则性的,并且能够做到真正坚信他们总能取得进步。

  通过自律,你明了自己的立场及其原因。或许更重要的是你能够与他人分享。

  当你坚信你能不断取得进步,那么你将持之以恒地倾听他人、向他人学习,激励自己变得更好。

  为了达到这个目的,这篇将是一系列分享我的原则及往年所学的帖子之一。

  尽情阅读吧!

  不断从“价值优化”的角度来检查你度过的每一天

  程序员每天多的让人惊讶的时间浪费在没有意义的事情上,坦白说,是在作无用功。

  如果一件事不会给你或者你公司带来任何价值,那为什么要花时间在上面呢?通常这种事情是会议、聚会或者"流程”之类。

  最近我一个朋友向我抱怨,自从升为“团队领导”之后,自己几乎没完成任何一件事情。

  所以他决定回顾检查自己的时间。他发现一周之后,自己仅仅在“工程”方面花的时间总共 20min。

  现在,如果他的其他的时间是花在指导或领导团队上倒是还好,但不幸的是大部分时间”花在“其他人、其他团队、其他部门等等。

  请不要把我的观点误解为合作和交流完全没必要。

  我的意思是作为工程师,我们的重点是找到最佳解决方案。这才是工程师要做的。

  比如说:

  • 如果会议是关于“同步”的(团队成员之间同步进度),那就积极一些。把你的进度状态发布到 wiki、内部博客或者邮件列表。让其他成员及时了解你的进度,适应大家的节奏。

  • 如果你是团队或者部门领导,并且感到在会议上花很多时间去解决小问题,那就放权,交给下属。这不仅仅腾出你的大量时间,而且让团队成员积累更多经验,更快成长。请务必授权下属进行部分或者全部决策,否则,解决问题的人会要求你不断参与进来。同时务必要支持下属的决策;他们需要自信来进行决策,表达你意见的时候不要到这怀疑的情绪。

  • 如果你老板想要指导“哪些正在做”或者“哪些已经完成”,那最好找个工具汇报这些事情。建立一个随时更新的任务列表,这是一个团队成员花一点点精力就可以做到的小任务。

  • 如果“流程”要求你用 5 个步骤完成任务,但大部分是麻木机械的工作。(比如生成改变日志或者发送邮件提醒),那你就发挥你作为“码农”的特长,尽量自动完成。想一下,如果有个简单任务要求你每天要花 10min 完成。那你花 2 小时写个脚本把这个任务简化到 2min,“浪费”的时间只需要 15 天你就赚回来!!!

  • 发现自己经常由于 email 或者即时通讯消息所干扰分心?那就关掉这些应用!作为程序员我们的工作需要集中注意力,任何小干扰都可能搞乱我们的流程,打乱节奏。这种在电脑上通过文本的交流方式有一个最大的优点,那就是“异步”;这意味这你可以在任何空闲进行交流。一些人采用“番茄工作法(http://pomodorotechnique.com/ )”来解决这个问题。虽然我建议你试试,但是这并不适合每个人,我试了试觉得很难坚持。(译者:卧槽,那你还推荐)

  生活于快节奏的环境之中,我们极易兴奋于那些就展现在我们面前的事物,并且不停地从一个任务奔向另一个任务,而不去思考为什么这样。

  我强烈建议您,时不时回头看一看、问一问:

  1. 我的日子是如何逝去的?

  2. 我今日是否致力于最重要或最有价值的事情?

  3. 我是否本该更有效地做别的什么事?

  最后,(我要说)珍惜属于你的时间,你可以“开发”出更好的解决方案:用你的技能使生活更加美好!

关注微信公众号

扫一扫关注微信公众号

PHP-Z_COM