做一个“不去问别人的”优秀的工程师

2020-07-18 21:23:42 APP开发网 3812

怎样的工程师才能称得上优秀?除了能写好code之外,还需要具备以下的工作态度和方法,这样才能成为一名优秀的工程师。

陆奇出席百度内部Engineering Leadership Talk。作为计算机科学博士及优秀的管理者,他提出的五点要求,对每一位百度工程师都适用。

我们一定要有一个坚定不移的深刻的理念,相信整个世界终究是为技术所驱动的。

有没有其他人已经解决这个问题?然后你可以把你的时间放在更好的创新上。” 

做什么事情一定要做最好,一定要是做业界最强的。

我把自己想象是一个软件、一个代码,今天的版本一定要比昨天版本好,明天的版本肯定会比今天好。

看到问题也不要去问别人,就把它Fix

接下来,我们来谈谈具体应该怎么做。

1.站在巨人的肩膀上做创新

   起点对于创新速度有很大的影响,我们可以看到,无论是在美国,还是中国,无论是互联网还是大型公司,起点都变得越来越高了。现在,大家可以使用的代码模块,使用的服务能力,都能很容易的感受到在大大的提高。在这里想要强调一点,那就是包括微软在内的大公司,每一条code都是重做过无数次。这对我们的要求就是,每写一行新代码,第一件要做的事情就是先思考一下这一行新代码有没有他的价值,是否有其他人已经做了同样的工作,甚至比你做的还要好一些;第二件事情就是想一想还有没有别人没有解决的问题,把自己的时间和精力用在创新上。

   重复或者是几乎重复的Code这样的情况在大公司里尤为明显,对于公司来说这样就使得太多的资源浪费,对于个人来说,对于自己的职业生涯也有一定的负面影响。所以在写代码之前的思考是很重要的,一定要站在巨人的肩膀上做创新。

2.Ownership

   作为一个工程师,有一个重要的使命是用科技让复杂的世界变得简单。热力学第二定律来讲,世界是会变得越来越乱的,我们可以用自己的所学所能,把事情变得简单,让我们的生活更加便捷与美好。

   具体来说,我们可以通过AI技术来实现,这个实现的过程需要大家的共同努力,从自己做起,还有Ownership总结起来就是一句话,看到机会不需要问别人,有机会就去做,看到问题也不要去问别人,就把它Fix

把自己的事业与公司的事业,使命紧紧的联系在一起,把他当做自己的Own everything这样对于个人成长是很有用的。从现在开始从我做起,从身边的每一件事情做起。

 

3.追求Engineering Excellence

还有一点需要强调——工程的技术的卓越性和能力。商场如战场,每一次的竞争,都是检验部队体能,质量,每一个士兵的训练程度,以及战队配备的武器。Engineering Excellence也是同理,我们要建的是一支世界上最强的部队,每一个士兵,每一个领军人,每个人的能力都是超强的,然后我们给每个人提供的工具和武器都是一流的。这就要求我们将Engineering Excellence作为一个永无止境的、个人的、团队的,能力的追求和工具平台的创新,给我们带来的长期的、核心的竞争力,为社会创造价值,最终的目的是给每个用户、每个企业、整个社会创造价值。

我另外还要在这里强调的一点就是Relentless pursuit of excellence——永不停息的追求卓越。当决定做一件事情的时候,就要力求做到最好,不然就不要做,无论是数据库大平台还是大数据,一旦决定要所得事情就一定要做最好,一定要是做业界最强的。

4.Believe in 技术

盖茨提到微软公司的宗旨就是:写软件代表的是世界的将来。这就需要我们的工程师有对技术坚定的,不动摇的信念,要相信技术。

在世界技术高速发展的今天,未来的任何一个工业都会变成软件工业任何工业任何行业自动化的程度会越来越高现在软件的发展又向前进了一步,这就要求我们的工程师们在这个人工智能时代不仅需要会写代码,还需要掌握很多其他的技能,比如需要懂算法,懂硬件,懂数据等。

我们要始终有一个坚定不移的深刻的理念,相信整个世界终究是为技术所驱动的。

 

5.每天学习

  终身学习是现在时代所推崇的,学习也是人想要进步的一个必备条件。把自己想象是一个软件、一个代码,今天的版本一定要比昨天版本好,明天的版本肯定会比今天好,因为即使犯了错误,我里面有If statement,说如果见到这个错误,绝对不要再犯。用英语中的一句话来说就是Life is too short, don’t live the same day twice,用中文来解释这句话就是人生太短暂,不要把一天重复过,今天与昨天相比一定要有所进步,要比昨天的自己会更好一点。这无论是从事哪个行业都要做到的,就是要保持自己的能力,保持自己终身学习的能力和兴趣,并且还要扩大自己学习的范围。

   比如Computer science如果只学习Computer science知识是不够的,可能还需要学习一些经济学的知识。为什么要拓展自己的学习范围呢?那是因为Computer science它有个很大的限制,他是假定你有输入以后有输出,这种解决问题的方式有它的好处,但有它的限制性。比如,如果用这种方法单纯的去做一个地图导航,那就做的工作实际上就是将一个拥挤的地方移到另外一个拥挤的地方经济学与之相比,对于问题的建模是不一样的,经济学的起点是假定是一个整体的一个生态,每个人的输入都是另外一个人的输出,你要用经济学的方式来描述地图导航的问题,你就会去算一个Equilibrium,市场也是这样。

   如果把深度学习真的要想彻底,必须把物理重学一遍,把生物学看一遍,再把进化论再看一遍。因为深度学习跟这些东西完全相关,自己肯定想不清楚,要彻底想清楚,必须学。

作为一个工程师如果不懂产品,你不可能成为一个最好的工程师。一位真正的世界一流的工程师是需要懂的产品,懂整个商业,懂生态。这又是为什么呢?那是因为作为一个工程师,工作是要求能够看到未来,需要把技术展望到将来的需要,拓展知识面也就是拓展眼界的过程,所以学习对于个人来说是十分重要的。

    以上就是成为优秀工程师的五点要求,你了解了吗?


电话咨询
邮件咨询
在线地图
QQ客服