为什么营销的事儿,硅谷却是硅谷工程师的4个等级在做

馆藏&201756
TA的推荐TA的最新馆藏【来源】: .cn/s/blog_5edejm.html
我在前一篇文章里比较了中,美,印,日的四国工程师,其中的一个观点是我们国内的工程师相对比较浮躁和急功近利。得到了不少人的共鸣。由于在硅谷工作过,我常想,为什么硅谷有这么多40岁以上的工程师,而国内30岁以上的就已经寥寥无几了?为什么硅谷的工程师的技术寿命可以这么长?为什么他们可以不浮躁,不急功近利呢?
在国内,有2-3年工作经历的工程师就可以算有经验的了。工作了5年以上的工程师往往会考虑向管理岗位转型,或者向业务转型。中国目前处于高度发展的阶段。很多企业缺乏管理人才,工作5年就被提吧为干部很正常。但留下的后遗症是30岁以上的优秀技术人才极度缺乏。
在硅谷,5年以下工作经验的人都算是初级的。一般高级工程师需要5年以上的工作经验,架构师一般需要10年以上的工作经验。这还不算上大部分硅谷的工程师都有计算机硕士学位。硕士毕业已经是24,25岁了。再工作10年,35岁才升为架构师是非常正常的。然而,公司里的架构师有限。其实大部分40岁的工程师仍然在一线工作,比如写程序,做测试,进行项目管理等。
美国硅谷是计算机人才集中的地方,也是创业公司群集的地方。在硅谷,从只有几个人到几十个人的创业公司比比皆是。他们的共同梦想就是经过几年的奋斗,通过技术的创新,再次缔造像英特尔,&苹果公司,思科,甲骨文,雅虎,Google,Facebook等这样的神话。即使创造不了神话,也可以通过IPO或者被收购的途径创造财富。在这样的环境中,公司对管理人才的需求同样是非常大的,但为什么仍然有大量的工程师“无动于衷”,仍然从事着技术活儿呢?
我认为很有两个主要原因。
一个是外因。在美国,管理岗位的待遇和技术岗位待遇相差不大。特别在崇尚技术的硅谷,经理的地位并不比工程师高,甚至更低。比如架构师在公司里的重要性往往要超过经理。因此管理岗位的“诱惑”并不大。在这样一种技术氛围中,走技术路线很正常。
但是即使在这样一个技术环境中,硅谷对管理人才依然需要。当工程师表现出色时,也有很多机会转成管理岗位。然而相当一部分工程师会主动放弃这样的机会,而继续干他们的技术活儿。这就是内因在驱动了。技术工作和管理工作的本质区别是,前者面对的是系统(软件,硬件等),而后者面对的是人。系统问题再难,只要有足够的时间和资源,一般都可以解决。越难的问题,解决之后越有成就感。而人的问题,有时候看似很简单,却解决不了。是人,总要有头疼脑热,生病的时候。是人,免不了产生情绪,从而影响工作。有人的地方,就会有矛盾,就会有摩擦。简单地讲,系统会按照事先设定的逻辑运行,是死的,因此往往可控,可规划。而人是活的,不是输入几条命令就可以控制的,而是需要沟通,需要感情的。因此,大部分硅谷的工程师很“聪明”。他们主动选择“简单”地工作。白天好好地工作,晚上好好地生活。何必去“自寻烦恼”,转做管理呢。
其实不光是硅谷的,其它地区的工程师都有一个共同的性格特点,追求简单,追求完美,思维方式上比较理性和逻辑性,看问题比较趋向于非黑即白。这样的性格非常适合做技术工作,可是我们中国的工程师有时候偏偏看不到自己的这个特点。
不想当元帅的士兵不是好士兵。工程师希望向管理方向发展是非常正常的。但问题是为什么和怎样?我碰到过不只一个工程师告诉我,希望转做管理的原因是担心今后年级大了,技术能力跟不上了。我觉得非常可笑。这就好比是一个士兵说:我杀敌本领不行,不适合上战场,那就让我做军官吧。一个没做过士兵的元帅肯定不是好元帅。其实做技术和当兵毕竟不同,不是靠体力吃饭的。年级大点往往是优势。
我觉得走技术路线对工程师性格的人是一条捷径。如果能静下心来仔细钻研技术,一定能在某个方面做得比别人好。这里的关键是好奇心和耐心。在今天这样的信息时代,找到答案并不是一件难事。难就难在有没有好奇心和耐心去找。比如,Java程序员天天都用到String这个类型。但有没有想过为什么Java语言里有String和StringBuffer两种字符串类型,而不是一种?有没有去看过String和StringBuffer的源代码?再例如,天天做网站和HTTP打交道,有没有看过HTTP协议?有没有尝试过不用浏览器,wget等工具,而用最原始的telnet方式来访问网站?看看这HTTP的头里到底是什么东东?在我面试过的工程师中,做过这几件事的人不到5%。
一旦了解得比别人深,就容易看到问题本质,产生信心,激发乐趣。这时候你的解决方案就比别人漂亮,逐渐建立起了影响力,成为了“专家”。因此公司里的疑难杂症会主动找上门来。你就比别人得到了更多的提升能力的机会。一旦进入良性循环,你的进步就比别人快,但付出的却不一定比别人多。这时候你已经走上了捷径。
在技术人才极度缺乏的中国,在众人盲目追求管理岗位的那点虚荣的今天,如果你的性格适合做技术,我认为走技术路线是最适合的。如果你才毕业,那你是最幸福的。你可以给自己制定3个甚至4个五年计划。例如5年打基础,10年变专家,15年国内知名,20年世界闻名。如果你已经奔三或者三十出头,那你快成熟了,但离开花结果还早呢。看看这些人的历史,你是不是觉得还有很多时间可以研究技术呢?
拉里-沃尔(Larry&Wall)33岁时出版了《Perl语言编程》一书。之前他是一个系统管理员。
互联网之父温特-瑟夫(Vint&Cerf)在发明TCP/IP时,已经35岁。
万维网之父蒂姆&伯纳斯?李(Tim&Berners-Lee)在37岁时才发明了万维网(WWW)。
丹尼斯-里奇(Dennis&Ritchie)的《C程序设计语言》一书出版时,他37岁。
Java之父詹姆斯&戈士林(James&Gosling)40岁时才因为发明Java而成名。
苹果公司创始人之一史蒂夫?沃兹尼艾克(Steven&Wozniak)在今年年初以首席科学家的身份加入一家创业公司,研发基于高速闪存技术的存储。他如今已经59岁了。
回复讨论(解决方案)
坚持就是胜利
国外的人很讲究创新,而不是单纯的在工作而已
这些东西让我想了一个问题,为什么中国没有出现优秀的框架或开发语言
路在自己脚下,怎么选择都在自己,信念只对自己负责,即使某被环境左右了
对&&&中国是这样的&&关系是第一生产力&&&
观念不一样。认识不一样。
哎,我都不知道我的方向在哪
很好,思考中
在中国现有的环境和体制下,软件行业的发展带有其他行业普遍的共性,所以和美国等其他国家的差距也就不可避免了
我很赞同楼主的见解,我也是快奔三张儿的主儿了,现在我在考虑是否还要在技术岗位上继续做下去,这篇文章对我的启发很大.
打算此生投身于软件行业(甚至不退休)
不知道如何走?
我只知道,中国的人工智能领域连一个数码相机的自动对焦都解决不了,但日本人却做到了,人家是靠近30年的技术积累才走到这一步,中国连35岁以上的软件工程师都不愿意用,还会给你20年时间扎扎实实做研发?25岁开始做,20年后都45岁了,可中国哪个企业会给你这样的机会?硅谷公司人才招聘那些事儿——硅谷“超级面试官”董飞专访
发表于 14:05|
摘要:来自美国硅谷的Coursera软件工程师董飞是硅谷华人工程师里的“明星人物”,近期CTO俱乐部对其做了专访,对比了国内外一些公司的技术氛围和企业文化,同时分享了硅谷公司在技术考核和激励机制方面的一些做法。
来自美国硅谷的Coursera软件工程师董飞是硅谷华人工程师里的“明星人物”,本科毕业于南开大学,硕士毕业于美国杜克大学计算机系。在攻读硕士期间,从事与Hadoop大数据相关的研究项目,在VLDB、SOCC顶尖数据库大会发表过论文,先后在创业公司酷讯、百度基础架构组、Amazon云计算部门、LinkedIn担任高级工程师,负责过垂直搜索引擎、百度云计算平台研发、广告系统和在线教育平台的架构。在多年工作中,董飞除了对技术的不懈追求,也积累了大量的面试经验,他曾拿到北美热门公司10+ offer。在LinkedIn期间,还积极参与面试过近200人,成为全公司前三的“超级面试官”,参与面试题制定,乐于分享并帮助多人成功求职,实现目标。近期,CTO俱乐部对董飞做了专访,请他分享关于团队人才招聘及培养方面的思考。此前,邀请董飞带来“典型硅谷公司的大数据实战分析”演讲,详见。以下是专访内容。硅谷“超级面试官”、Coursera软件工程师 &董飞CTO俱乐部:我们看到你在国内百度等一线互联网公司以及美国LinkedIn、Amazon等公司都有工作经历,对比中国公司和美国公司,你觉得在人才招聘以及培养方面有哪些不同?
董飞:人才招聘方面国内外公司有以下不同之处。国内一线公司:更多注重应用层战略布局,抢占入口。因此更偏向实用型人才,我记得在百度时,有很多社会招聘,从各种渠道挖人,比如传统招聘网站、猎头公司、BBS论坛、竞争对手手中。现在也有一些创新方法,通过微信公众号、产品推广中附带一些招聘信息。此外校园也是重要的人才摇篮,通过学校宣讲会,举办编程算法大赛(像百度之星)来吸引同学。美国一线公司:对基础架构非常重视,注重基本功、员工素质和价值观认可。在Linkedin上就有丰富全面的简历库,通过对毕业学校、就职公司的过滤去挖掘潜在员工。还有一些高水平的学术会议,工业界愿意支持和参与,比如SIGMOD、VLDB顶级数据库大会;美国公司也喜欢举办公开技术讲座,邀请社会各界参加,注册时留下联系方式。或者写一些技术博客、开源产品,通过做得有意思的项目来间接吸引人才。有些公司也举办一些Hack比赛,比如24小时做出一个小产品原型,欢迎各类技术人才挑战。当时我也参加LinkedIn的编程马拉松,每人发一件T-shirt,写着 eat,code,no sleep。招聘流程方面:国内公司,如果是在校生,一般都会有笔试,通过率也不高,可能就百分之几,然后在校园里面试3轮左右,分别对技术、基本功、价值观的考察。之后就会大规模发offer,一些大公司如百度、阿里一年招上千人是很常见的。而美国公司,一般没有笔试。直接1、2轮电话面试,而如果通过,则邀请onsite面试,公司会花很大代价去组织,包括报销来回机票、吃穿住行、赠送小礼物,给候选人一种非常受尊重的感觉。不过成功率非常低,真的是千里挑一,但至少在宣传企业文化和价值上也是起到积极作用。作为创业公司,不能这么奢侈,但作为创始人就应该把一半精力花在招人上。培养机制方面:国内各大公司都有自己的内训、技术学院,比如百度入职半年内会有丰富的技能培训,同时也介绍企业文化。而美国公司大多在面试前考察比较全面,大致会有5~7轮,里面就包含关于企业文化价值观的考量,基本保证了员工的高质量,进来后反而宽松化管理,他们期望通过自由开放的环境来激发大家的创新和工作热情。前Facebook技术经理王淮在《打造Facebook》中介绍Facebook有新兵训练营,给12周时间,让大家在新环境中尽情尝试,最后选择最适合自己的小组。我以前在的LinkedIn公司也会每周组织技术讲座,定期职业培训,比如手机应用开发。对于一些重要岗位还是更希望从内部成长起来,我在百度时也遇到2年多连升4级,也听过Facebook有26岁就领导几十人的高级技术经理。所以那些优秀的公司,是会给你足够的发展机会。CTO俱乐部:对于有机会希望能去美国发展的技术人,你能给点建议吗?应该从哪些方面入手来重点做准备?董飞:关于该从哪些方面来重点做准备,可以从以下几方面展开叙述。技术:平常扎实的技术积累,包括系统知识点、不同编程语言、开源工具、团队合作工具,比如REST架构有哪些特点、动态语言的优劣。我在知乎上也给出了《硅谷跳槽工具箱》一文。基本功:代码简洁优美没有Bug、常见算法的应用、优化技巧等,比如如何把一个O(n^2)的算法优化成线性。交流:其实技术人员用到的英文都比较浅显,听和读应该问题不大,但最好在说和写方面下大功夫,这能突破一些天花板,更多融入团队交流。系统设计:包括设计大型系统的架构选型、各种不同组件的tradeoff、数据库系统、网络系统、分布式系统。比如什么时候适合用NoSQL、如何做一个推送系统、缓存系统如何搭建等类似角度去做些思考和准备。CTO俱乐部:身为超级面试官,请问你在面试中会重点考察面试者哪些方面的能力?面试者身上哪些特点往往会是各公司认为不能接受的?董飞:能力考察跟上面问题有些类似,只不过换个角度。第一,看他的背景是否能符合职位的需求。比如做分布式计算的工程师,对系统底层、大数据架构就要有一些涉猎。第二,聪明。如果我交流的时候发现他们能很快意识到我说的意思甚至补充我心里想的,这种人非常讨喜。如果思路异于常人,很快给出最优解,则通常能挑战一些难度大的问题。第三,好奇和热情。如果面试者说不清为什么要申请该职位,或者没什么主动提问,我会觉得他对公司兴趣不大,没有好好做功课,态度上不够积极,而即便是技术很出色,在评价上也要打折扣。另外如果他技术面很狭隘,技术兴趣不广泛,可能也要考虑是否能胜任创业公司不断变化的环境。第四,交流能力。其实公司都不希望招一个只会闷头写代码的人,而是能进行一些讨论,能顺畅表达思想,或者批判现在的做法也是可以的。第五,代码基本功。一些好的编程习惯一定要坚持,例如对齐格式、边界检查、参数检查、异常处理、单元测试。不管面试者之前做过多少年,只要申请软件工程师职位都要经历编程的基本考核。第六,设计功底。这个比较高级,但如果能给出一些合理的解释并说一些常用的选型,这能体现面试者的积累和与时俱进的学习能力。不能接受的两个方面包括。不愿意学习。面试者说的或者写的很自大,但不虚心接受其他人指出的问题和建议。企业文化不合。对公司的使命和价值观有一些偏差,这个比技术功底更加致命,公司招人还是要找志同道合的人。CTO俱乐部:硅谷企业的组织结构,在产品、技术、运营、人力财务、营销、销售这几方面如何划分?典型新秀公司如Uber 和明星公司Google、Facebook、Apple在组织结构上有什么不同?董飞:硅谷大多是重技术轻运营的公司,它们很多有自己的核心技术,比如机器学习算法、高可靠大规模系统,它们希望打造技术壁垒,追求国际化,在不同的市场中成功。它们的产品上线都是全球几十个国家、几十种语言同时支持,这也对后台系统的高扩展性、架构的设计提出非常高的要求。这也是为什么这些公司喜欢在工程师身上更多地投入,同时也有一些创新的模式,比如Uber的打车软件,虽然技术上要求很苛刻,但主要还是运营团队在每个城市开辟市场,包括很多律师团队需要解决复杂的法律问题。所以不同的公司要求不一样,总体来说产品和技术是核心,而也有一些专门去优化内部组织效率,比如开发工具提高销售精准度,用一些指标去衡量营销效果。CTO俱乐部:这些公司的职称体系分类是什么样的?董飞:一般是分成技术岗和管理岗,比如在LinkedIn,技术路线是从实习工程师、工程师、高级工程师、主任(Staff)工程师、高级主任工程师直到杰出工程师。管理路线就是技术经理(跟主任工程师平级)、高级技术经理、总监、高级总监、技术副总裁、CTO。总体说还是管理岗更有挑战,影响力更大,技巧性更强,但如果你不喜欢做管理,也可以在技术岗位上发挥到极致,做一个大家都尊敬的大牛。CTO俱乐部:这些硅谷公司的技术考核和激励机制是上下左右评价吗?在激励方面如RSU option方面如何发放?董飞:以前有一种评价方式是KPI(key project issue),按项目的关键点来安排人力资源,这种方式比较死板,很容易造成小组为了短期利益而牺牲了整体利益。现在很多公司采用OKR(objective and
key results)。主要是针对公司发展的战略目标,对每个组做目标定位和关注核心结果,Google提出目标要远大激进,最后完成70%~80%就算不错的成绩了,如果都完成了,反而说明目标定低了。在考察时,可以从你的直接管理领导、团队内部同事互相评价,你也可以对管理者评价,通过这种交叉评价可以获取更多维度的信息。有些公司提出必须要淘汰10%,或者设置奖金池,如果评价结果靠后的人就不得有任何奖励。而经理的压力更大,他要平衡组内关系、争取到上级信任、跟别的组竞争、获得更多资源和影响力,不仅如此,自己还要身先士卒、保持最佳精神状态。所谓公司政治就往往就在这一层,都是步步惊心,劳心伤神。对于激励,除了奖金,股票和期权也是很灵活的,一般来说是根据级别的上升,期权、股票会重新定位(refresh),在有些成长快的地方,比如Google X、Facebook等可能每一年都会给你增加股票,这确实非常有吸引力。还不是CTO俱乐部成员的各公司技术负责人,欢迎立即加入俱乐部:&。更多俱乐部动态,欢迎扫码关注微信号:
推荐阅读相关主题:
CSDN官方微信
扫描二维码,向CSDN吐槽
微信号:CSDNnews
相关热门文章TA的推荐TA的最新馆藏

我要回帖

更多关于 硅谷工程师文化 的文章

 

随机推荐