工程师当上老板是否还需要亲自写代码?
2013-06-17 20:04:32 来源:华启智能
他们曾经是优秀的工程师,但当他们走向创业道路,并一步步成为拥有几十名员工的老板时,他们还需要亲自为产品写代码吗?
Quora联合创始人兼CEO亚当·安杰罗(Adam D’Angelo)针对这个问题提供了自己的答案:需要。
作为Facebook的首任CTO,安杰罗曾掌管着Facebook众多新产品的开发工作并管理整个工程师队伍。2008年,安杰罗开始创办问答网站Quora。
虽然已经成为CEO并要做大量的管理工作,但安杰罗始终没有丢弃自己作为工程师的基础技能:写代码。
此前也有新闻传出,Facebook CEO扎克伯格在公司拥有5亿用户的时候,也还亲自写一些产品的代码。
为什么他们会有如此选择,安杰罗在Quora上写的答案或许能带给你启发:
作为掌管着如此规模公司的CEO如果还要写大量的代码,我认为这并不是一个好想法。但是写少量的代码并一直保持着和代码库的接触却能带来很多的益处:
•它能让你了解其他人要完成任务时会面临多大的困难。这对于形成基本的直觉很重要,即什么事情容易做和什么事情难做。这会让你很自然地推动公司去做一些更有价值的项目。
•它能让你更加理解工程师。如果一个项目花费了很长时间,是不是因为这个项目本身就难度太高?还是因为大家没有足够的动力?或者安排的人并不适合这个岗位?虽然这些问题可以通过很多的方式来找到答案,但如果你自己了解编程方面的工作,你的直觉将会更准确,也会得到更正确的结论。
•它将会帮你形成这样的结论:我们需要减缓产品开发的进程,并将更多的精力用于如何提高工程师的工作效率。在很多的公司中,这种想法不会发生。虽然一些工程师主管会考虑这些问题,但很多公司都大大低估了提高技术架构方面的价值。因为这方面的成本和收益在很多CEO眼里都并不明显。
虽然话这么说,但是代码库的更新量还是巨大的,时刻追踪最新的进程其实也是一件成本很高的事情。每周都会有新的方式、新的架构、新的功能建立。那些天天写代码的工程师如果要掌握这些,肯定会简单很多。但作为CEO,如果几个月都不写代码,当你要去对这些项目提供一些重大的改进意见,就要花费很大的精力。所以,我倾向于对一些我熟悉或者我非常关心的项目原型和代码领域保持长期的关注。
当然,CEO写代码也有一定的风险,就是你会制造出一些代码漏洞。因为你并不是长期写,所以你可能并不了解整个项目的最新进程。更糟的是,当你做完后,这些漏洞在以后会变得很难修补。所以我写代码时也会以工程师的标准要求自己,减少犯错。因为当你犯错后,你可能并没有时间再去修补,毕竟你还有一堆的会议等着开。
除了关注Quora本身的代码库,我几周前还开发了一个Android应用。我做这件事,一方面是觉得有趣,另一方面,也是为了更好地了解Android这个平台。
作为Facebook的首任CTO,安杰罗曾掌管着Facebook众多新产品的开发工作并管理整个工程师队伍。2008年,安杰罗开始创办问答网站Quora。
虽然已经成为CEO并要做大量的管理工作,但安杰罗始终没有丢弃自己作为工程师的基础技能:写代码。
此前也有新闻传出,Facebook CEO扎克伯格在公司拥有5亿用户的时候,也还亲自写一些产品的代码。
为什么他们会有如此选择,安杰罗在Quora上写的答案或许能带给你启发:
作为掌管着如此规模公司的CEO如果还要写大量的代码,我认为这并不是一个好想法。但是写少量的代码并一直保持着和代码库的接触却能带来很多的益处:
•它能让你了解其他人要完成任务时会面临多大的困难。这对于形成基本的直觉很重要,即什么事情容易做和什么事情难做。这会让你很自然地推动公司去做一些更有价值的项目。
•它能让你更加理解工程师。如果一个项目花费了很长时间,是不是因为这个项目本身就难度太高?还是因为大家没有足够的动力?或者安排的人并不适合这个岗位?虽然这些问题可以通过很多的方式来找到答案,但如果你自己了解编程方面的工作,你的直觉将会更准确,也会得到更正确的结论。
•它将会帮你形成这样的结论:我们需要减缓产品开发的进程,并将更多的精力用于如何提高工程师的工作效率。在很多的公司中,这种想法不会发生。虽然一些工程师主管会考虑这些问题,但很多公司都大大低估了提高技术架构方面的价值。因为这方面的成本和收益在很多CEO眼里都并不明显。
虽然话这么说,但是代码库的更新量还是巨大的,时刻追踪最新的进程其实也是一件成本很高的事情。每周都会有新的方式、新的架构、新的功能建立。那些天天写代码的工程师如果要掌握这些,肯定会简单很多。但作为CEO,如果几个月都不写代码,当你要去对这些项目提供一些重大的改进意见,就要花费很大的精力。所以,我倾向于对一些我熟悉或者我非常关心的项目原型和代码领域保持长期的关注。
当然,CEO写代码也有一定的风险,就是你会制造出一些代码漏洞。因为你并不是长期写,所以你可能并不了解整个项目的最新进程。更糟的是,当你做完后,这些漏洞在以后会变得很难修补。所以我写代码时也会以工程师的标准要求自己,减少犯错。因为当你犯错后,你可能并没有时间再去修补,毕竟你还有一堆的会议等着开。
除了关注Quora本身的代码库,我几周前还开发了一个Android应用。我做这件事,一方面是觉得有趣,另一方面,也是为了更好地了解Android这个平台。
标签:华启智能