陆奇给工程师们的5个建议

大家好,我是写代码的篮球球痴

今天分享的文章是陆奇以前在百度一次内部演讲给工程师们提的5点要求,个人觉得对很多人非常有益,大家可以耐心一读。

至于陆奇是谁,可以直接搜索,借微软CEO斯蒂芬·鲍尔默对他的评价 : 陆奇集资深专业技术知识、出色的领导能力和广泛的商业知识于一身,在业界是非常罕见的奇才“。

正文部分:

一位工程师,如何才能称得上优秀?除了写得一手好代码,什么样的工作态度和方法才是一个优秀工程师的必备?

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

1

Believe in 技术

首先要相信技术,我刚才已经讲了,整个我们工业界,特别是像百度这样的公司,对技术坚定的、不动摇的信念特别重要。

我也分享一下,盖茨提到微软公司的宗旨就是:写软件代表的是世界的将来。

为什么?未来任何一个工业都会变成软件工业。盖茨是对的,因为任何工业任何行业自动化的程度会越来越高,最后你所处理的就是信息和知识。

但现在软件的做法又往前提了一次,因为在人工智能时代,不光是写代码,你必须懂算法,懂硬件,懂数据,整个人工智能的开发过程有一个很大程度的提高,但是,技术,特别是我们这个工业所代表的技术一定是将来任何工业的前沿。

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

2

站在巨人的肩膀上做创新

我们观察一下,在美国硅谷、在中国,互联网创业公司也好,大型公司也好,大家的起点是越来越高的。为什么现在创新速度那么快?主要是起点高了。我们可以使用的代码模块,使用的服务的能力,都是大大的提升。

在内部我想强调这一点,很多大公司包括微软在内,内部的Code都重做了无数遍。

我现在的要求是,每一次你写一行新的代码,第一要做的,先想一想你这行代码值得不值得写,是不是有人已经做了同样的工作,可能做得比你还好一点。有没有其他人已经解决这个问题,然后你可以把你的时间放在更好的创新上。

特别是大公司里面重复或者是几乎重复的Code实在太多,浪费太多的资源,对每个人的职业生涯都不是好事情。

我再强调,在大公司内部,你写代码之前想一想,你这行代码要不要写,是不是别人已经有了,站在别人的肩膀上去做这件事情。

3

追求Engineering Excellence

     

我要另外强调的一点就是Engineering Excellence,工程的技术的卓越性和能力。

任何市场上竞争就像打仗一样,就看你的部队体能、质量,每一个士兵他的训练的程度,和你给他使机关枪、坦克,还是什么样的武器。

所以Engineering Excellence跟这个类比,我们要建的是一支世界上最强的部队,每一个士兵,每一个领军人,每个人的能力,他的训练都是超强的,然后我们给每个人提供的工具和武器都是一流的。

所以 Engineering Excellence 是一个永无止境的、个人的、团队的,能力的追求和工具平台的创新,综合在一起可以给我们带来的长期的、核心的竞争力,为社会创造价值,最终的目的是给每个用户、每个企业、整个社会创造价值。

我另外还要在这里强调的一点就是Relentless pursuit of excellence:永无止境的不断的持续的追求。

我们要么不做,要做的事情一定做最好,这是我对大家的要求。数据库也好,做大平台也好,大数据也好,我们要做什么事情,我们一定要下决心,这是我对你们每个人的要求,做什么事情一定要做最好,一定要是做业界最强的。

4

每天学习

每天学习,可能是对每个人都是最最重要的。

我今天分享一下,我自己怎么想我自己的。就很简单一个概念,我把自己想象是一个软件、一个代码,今天的版本一定要比昨天版本好,明天的版本肯定会比今天好,因为即使犯了错误,我里面有If statement,说如果见到这个错误,绝对不要再犯。

英语,另外有一句说法就是Life is too short, don’t live the same day twice. 同样一天不要重活两次。每天都是不一样,每天为什么不一样,因为每天都变成最好,每天都变得更好。今天的版本一定要比昨天好,每个好的、杰出的工程师,杰出的技术领袖,一定要保持自己学习的能力,特别是学习的范围。

在这上面我也稍微引申一下,做Computer science的,如果只学Computer science,不去学一些其他的行业,肯定不够。我举个例子,经济学必须要学。为什么这样讲?Computer science它有个很大的限制,他是假定你有输入以后有输出,这种解决问题的方式有它的好处,但有它的限制性。

我给大家举个例子,地图导航,如果你纯粹用这个方式去做,你只是把一个拥挤的地方移到另外一个拥挤的地方。经济学,它对问题的建模是不一样的。它起点是假定是一个整体的一个生态,每个人的输入都是另外一个人的输出,你要用经济学的方式来描述地图导航的问题,你就会去算一个Equilibrium,市场也是这样。

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

另外,学产品,我以前跟所有的工程师都讲,如果不懂产品,你不可能成为一个最好的工程师。真正要做世界一流的工程师不光要懂产品,还要懂整个商业,懂生态。因为你的工作的责任,是能够看到将来,把技术展望到将来的需求,把平台、把开发流程、把你的团队为将来做准备。所以学习是非常非常重要的。

5

Ownership

     

最后是从我做起。

我们公司有个非常大的使命,用科技让复杂的世界更简单。整个世界非常非常复杂,人其实所做的事情基本上都是Reduce entropy。

因为从热力学第二定律来讲,世界是会变得越来越乱的,我们想做的事情就是把它变的更简单,让我们生活变得更美好。

而且具体的,我们可以通过人工智能技术来做到唤醒万物,但是这一切是通过每一个人的一点一滴的行为累计起来,从我做起。还有Ownership,看到机会不需要问别人,有机会就去做,看到问题也不要去问别人,就把它Fix。

把我们的使命、把我们的公司当成我们自己每个人的事业来做,我可以坦诚的给每个人讲,如果你把公司的使命,把公司的事业,当成你自己个人的事业,Own everything,你在职业生涯一定是走得最快。从我做起,从身边的每一件事情做起。

最后总结就是 : Believe in 技术、站在巨人的肩膀上做创新、追求Engineering Excellence、每天学习、Ownership。

素材源于:文章来源,百度Family

版权归原作者所有。仅供技术的传播和学习讨论,如涉及作品版权问题,请联系我进行删除。


推荐阅读:

专辑|Linux文章汇总

专辑|程序人生

专辑|C语言

我的知识小密圈

关注公众号,后台回复「1024」获取学习资料网盘链接。

欢迎点赞,关注,转发,在看,您的每一次鼓励,我都将铭记于心~

89989848955189108493afba979ba668.png

嵌入式Linux

微信扫描二维码,关注我的公众号

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/465016.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

leetcode 764.Largest Plus Sign

根据题意的话就是在非0的地方开始寻找上下左右分别能够走到的最大步长的。 那么使用暴力的方法竟然leetcode还是给过了。 class Solution { public:int orderOfLargestPlusSign(int N, vector<vector<int>>& mines) {int res0;vector<vector<int>>…

16道C面试试题

预处理器&#xff08;Preprocessor&#xff09; 用预处理指令#define 声明一个常数&#xff0c;用以表明1年中有多少秒&#xff08;忽略闰年问题&#xff09; #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL 我在这想看到几件事情&#xff1a; 1). #define 语法的基本知识…

云服务器成势?

在许多应用领域&#xff0c;刀片服务器正在大规模替代传统的塔式服务器。螳螂捕蝉&#xff0c;黄雀在后。刚刚兴起的云服务器会不会成为刀片服务器的替代者呢&#xff1f; 2010年12月&#xff0c;北京天地超云科技有限公司&#xff08;以下简称天地超云&#xff09;首台云服务器…

每个电子工程师都埋藏着一颗游戏的心

在电子森林推文 700个字节的代码在ATtiny10里跑一个游戏[1] 介绍了一个 开源小游戏RunTiny[2] .用了&#xff1a;一个AVR单片机ATtiny10微控制器&#xff08;只有6个脚&#xff0c;Digikey上0.3美元一颗&#xff09;一个128*32的OLED显示屏一个按键一个电池 - 3.3V&#xff5e;…

python之file 方法

file 对象使用 open 函数来创建&#xff0c;下表列出了 file 对象常用的函数&#xff1a; 1 file.close() close() 方法用于关闭一个已打开的文件。关闭后的文件不能再进行读写操作&#xff0c; 否则会触发 ValueError 错误。 close() 方法允许调用多次。 当 file 对象&a…

100条经典C笔试题

题目来源&#xff1a; 1、中兴、华为、慧通、英华达、微软亚洲技术中心等中 外企业面试题目&#xff1b; 2、C 语言面试宝典(林锐《高质量编程第三版》)。 说明&#xff1a; 1、部分C 语言面试题中可能会参杂部分和C 相关的知 识&#xff0c;为了保持题目的灵活性故保留&#x…

Linux kernel 中模块化的平台驱动代码介绍

介绍在linux kernel中通过module_platform_driver来实现模块化平台驱动。大量的设备驱动程序都基于该种方式来实现&#xff0c;使用频次非常的高&#xff0c;在linux kernel 5.4.124的代码中搜索module_platform_driver共有2356次引用。这个宏的使用方式大相径庭&#xff0c;有…

Golang切片的三种简单使用方式及区别

概念 切片&#xff08;slice&#xff09;是建立在数组之上的更方便&#xff0c;更灵活&#xff0c;更强大的数据结构。切片并不存储任何元素而只是对现有数组的引用。 三种方式及细节案例 ①定义一个切片&#xff0c;然后让切片去引用一个已经创建好的数组 package main import…

这样给数组初始化,你肯定没有见过

今天在朋友圈看到一个朋友发的图片是给数组初始化的代码截图如下&#xff1a;我看到这个代码&#xff0c;也让我着实惊了一下&#xff0c;写代码这么久&#xff0c;也没有见过这样子初始化的。这个代码是出自海思的SDK里面的&#xff0c;华为的大牛还是很多啊&#xff0c;学习C…

如何让自己升薪

1) 经理应该好好看一看年度工作总结&#xff0c;这样他就能知道我对同事提供了多大的帮助。 2)如果一个程序员的工作很容易完成&#xff0c;那就不要等他主动来索取更多的任务。相反&#xff0c;积极交给他更加有挑战性的复杂的任务。 3) 在谈话中不要阻止建设性的批评。这个经…

ARM知识点

1、ARM有几种工作模式&#xff1f; 答&#xff1a;有7个基本工作模式&#xff1a;用户模式&#xff08;user&#xff09;、系统模式&#xff08;system&#xff09;、数据访问中止模式&#xff08;abort&#xff09;、未定义指令中止模式&#xff08;undef&#xff09;、快速中…

《你不知道的JavaScript》中卷 KYLE SIMPSON 著 单业 姜南 译

一部分 类型和语法 1.内置类型&#xff08;7&#xff09; null、undefined、boolean、number、string、object、symbol(ES6新增&#xff0c;符号) 2.toString()和Json.stringify() (1)字符串、数字、布尔值和null的JSON.stringify()规则与toString基本相同 (2)如果传递给JSON.…

CP命令引发的思考

转自&#xff1a;OSC开源社区今天同事用 cp 命令&#xff0c;把他给惊到了&#xff01;背景是这样的&#xff1a;他用 cp 拷贝了一个 100 G的文件&#xff0c;竟然一秒不到就拷贝完成了&#xff01;用 ls 看一把文件&#xff0c;显示文件确实是 100 G。sh-4.4# ls -lh -rw-r-…

安装windows XP或者2003时提示找不到硬盘驱动器的解决办法(总结)转载

&#xff08;本文属于转载&#xff09; 由于SATA接口在近年才推出&#xff0c;Windows XP问世的时候&#xff0c;还没有它&#xff0c;所以安装Windows XP时&#xff0c;需要调用SATA驱动程序&#xff0c;而你又没有提供相应的驱动&#xff0c;就会出现无法识别硬盘的错误。 不…

C宏定义注意事项

1、带参数的宏与函数的优缺点 2、宏定义一个函数时&#xff0c;需要注意每个参数都需要用括号括起来。 如&#xff1a;#define Min(a,b) ((a)<(b)?(a):(b)) 3、宏定义一年中的秒数 #define SECONDE_OF_YEAR 606024365UL &#xff08;√&#xff09; #define SECONDE_OF_YE…

不要再来北上广深了

大家好&#xff0c;我是写代码的篮球球痴最近我们的一个离职群里面讨论一个问题&#xff0c;就是在北上广深工作的性价比问题&#xff0c;我有几个同事这样描述。一线城市确实会遇到一些机会&#xff0c;也有可能会遇到一些改变命运的机会。不过对于生活来说&#xff0c;一线城…

mogndb 慢查询

0 摘要 在MySQL中&#xff0c;慢查询日志是经常作为我们优化查询的依据&#xff0c;那在MongoDB中是否有类似的功能呢&#xff1f;答案是肯定的&#xff0c;那就是开启Profiling功能。该工具在运行的实例上收集有关MongoDB的写操作&#xff0c;游标&#xff0c;数据库命令等&a…

Linux命令中正则表达式的运用

一、正则表达式简介 事实上&#xff0c;正则表达式不仅适用于linux&#xff0c;多种编程语言中也可以使用到它&#xff0c;因为它实际上是人们对于某种规律的表达方式。 如果要把他的所有应用都讲上的话那这篇文章会变的太长以至于无法阅读&#xff0c;我只介绍他在linux下和几…

程序的内存分配模式(堆栈以及静态存储区,文字常量区,代码区)

程序的内存分配模式 一个由 C/C编译的程序占用的内存分为以下几个部分&#xff1a; 1、栈区&#xff08; stack &#xff09;—由编译器自动分配释放&#xff0c;存放函数的参数值&#xff0c;局部变量的值 等。其操作方式类似于数据结构中的栈。 2、堆区&#xff08; heap&a…

稚晖君教你制作全球最迷你的自平衡机器人

摘要&#xff1a;Nano是一个小巧可爱的机器人&#xff0c;身高大约10公分&#xff0c;特点是平衡感好&#xff0c;长得很白以及善于卖萌。作为全球最迷你的自平衡机器人&#xff0c;Nano身材虽小&#xff0c;但配置有丰富的传感器—陀螺仪&#xff0c;超声波&#xff0c;Motion…