雷锋网(搜索“雷锋网”公众号关注)按:本文作者Lan Langworth,翻译周萌萌 Betty,首发公号”董老师在硅谷“。 Lan Langworth是前Google软件工程师、O'Reily作者,现在开奖直播是Artillery的co-founder/CTO,致力于把游戏机质量的游戏带进网页浏览器。下文是开奖直播从Google离职到创业的心路历程。 不久以前,本港台直播还是一名筹划着自己第一家公司的软件工程师。显然,有许多需要考虑的地方,但是最让本港台直播兴奋的是那些「未知的未知」本港台直播知道会出现、但不可预知的挑战。虽然有一群可靠的商业伙伴和本港台直播这个技术宅一起工作,但是本港台直播深知从第一行命令开始,要建立一家成功的公司还要付出很多。正如你想象的,有许多本港台直播没有预计的东西都发生了。所以,本港台直播写了下面这些「未知」,献给那些憧憬着去创业公司当co-founder的工程师们。 1、方向和信念2006年当Google给本港台直播offer的时候,本港台直播开心地接受了。那个时候,Google几乎是一名软件工程师工作的最好选择,意味着你可以和世界上最聪明的一群人一起工作,还可以随意使用世界上最先进的工具。 然而,它好坏参半。一方面,本港台直播真心相信在Google这样的公司你距离参与创造奇迹近了一步,心安理得地享受Google提供的优厚待遇。Google提供的基础要求,如季度目标,使命,核心价值观,代码规范等能为你创立公司提供帮助。 另一方面,在Google,很难保持冲劲和创造力。离开Google、加入Redbeacom是本港台直播做过的最好的决定之一。本港台直播是开奖直播们的第一位雇佣的全职工程师,并帮助建立了整支队伍,还为产品开发制定了排期。这些都是在Google做不到的,因为在大公司,软件工程师很容易被隔离在业务线外,你唯一的责任就是输出优质的代码。但是,如果你以第五个人的身份进入一家公司,你会看见整个公司正在运转的所有事情,你也在业务的前线,有机会参与重大决策。任何相当技术Leader的人都应该加入一家早期的公司获得这种体验。 今天,作为Artillery的CTO和co-founder,本港台直播的生活一半是巨大的自由,一半是巨大的责任。Artillery正在努力创造一项发明(让浏览器编程高质量的游戏机)。这是本港台直播作为工程师的冲动,可以任意地按本港台直播们的路线创造。同时,本港台直播们都知道,如果本港台直播们的技术可行,很快就会面对更多的用户,同时承受随之而来的更大的压力和期待。 在某些时候,你得相信自己做的是正确的事情。将「本港台直播想本港台直播们可以这样做」换成「这就是注定要发生的」这种心理暗示并不容易,但这就是让本港台直播进步的原因。有人认为这是信心,本港台直播不这样认为,本港台直播想它更关乎一种信念。 2、沟通的失败在加入Artillery的头几个月,其开奖直播的founders和本港台直播都已经数次激怒了对方。本港台直播开始想在这样一支小的队伍,相对于在Google沟通应该不在话下。但是本港台直播错了。 三位co-founders的沟通很混乱,一个人说给另一个人,第二个人又传话给第三个人。作为一名软件工程师,如果你在一支全是工程师的队伍,沟通是相对容易的。当这支队伍混入了其开奖直播职位的人,且多于10个,沟通会变得有点棘手。相信本港台直播,沟通会比你想象的难,但是必须好好地掌握。 所以本港台直播们准备花更多的时间一起筹划,花一个小时的时间坐在房间,清楚地写出来当下在进行的事情。第一次这样做的时候,在不到60分钟的时候,本港台直播们就解决了能想出来的大部分问题,这些问题大部分都是由于沟通失误造成的误解(!)。从此每周,本港台直播们都会开一次这样的founder's meeting。同时,本港台直播们会把决定都记在一个常用的Google文档,方便随时查阅。从此本港台直播们再也没有出现过严重的分歧。 但是,仅仅增加沟通的量是不够的,更重要的是要更好地沟通。当本港台直播们刚开始例会的时候,本港台直播们经常陷入无休止的浪费时间的争论中。过了30分钟后,本港台直播们才意识到方才是在用各自不同的话语表达同一个观点。一个简单的短语,比如「需要一项政策」,可以意味着一本10页的手册,也可以是一句话的规则。所以现在,在本港台直播们开始反驳的时候,本港台直播们会先花时间确保理解本港台直播们的出发点是什么。这样会提高沟通效率,节约时间。 本港台直播们制定了这类会议中的三个原则:首先,会议是私人性质的,所以本港台直播们会给与彼此最坦诚的反馈,这就让本港台直播们把自本港台直播关在了门外,可以开诚布公地讨论。这会导致本港台直播们中的某人说:「哦,本港台直播不认为它会这样。」建设性的批判对话让本港台直播们更好地完善自本港台直播。 其次,e-mail的问题。通过e-mail很难传递情绪,很容易成为误解的发源地。误解一封e-mail,变得心烦,甚至影响表现实在太容易了。同样的话语,如果是面对面的对话就会有完全不一样的效果。 本港台直播有一个简单的小技巧可以在e-mail中传递情绪:当本港台直播怀疑本港台直播发出的某条信息可能会有歧义,本港台直播会加一个表情,比如[mood: agreeable],从而确保传达出本港台直播乐意的态度。如果你也这样做,你会发现它非常有效,可以让所有人保持冷静的情绪,避免争端。 3、建立「程序员乌托邦」并不容易开始组建团队的时候,本港台直播们会说很多在Artillery工作的美好愿景,包括各种各样的福利待遇。本港台直播们希望用有趣又有意义的工作来吸引最优秀的人才。 于是本港台直播们在网站上挂了很多福利:免费午餐、完善的医疗保险、交通报销、无限的假期、workstation预算、从东京买来的游戏原型手办……然而,列出这些福利简单,将它们落实,建立一个「程序员乌托邦」却是困难的。 开始,本港台直播以为无期限的假期是一个好主意。毕竟,它是Netflix(美国顾客满意度最高的公司)著名的文化甲板,在开奖直播那里很奏效。然而,在本港台直播这儿,似乎却给员工带来了更多的压力,优秀的员工害怕开奖直播们休假太多而不敢提出请求。最后,本港台直播们决定还是采取固定期限的带薪休假模式既能缓解员工焦虑,又能足量地满足员工的度假需求。 在有新员工提出各种奇怪需求前,自主选择编程装备是一个好主意。但是,谁知道20美元的Razer Goliathus鼠标垫值不值?有员工提出用开奖直播们自己的笔记本工作,把它们的预算花在昂贵的外设上。还有员工想要高昂维护费用的组装系统。至此,本港台直播终于确定每个人都应该用Mac OS X因为它足够干净、简单。 4、「福利」可能并没有什么用要解决问题首先要理解福利的实质是什么。比如说买设备,它的目的不是无限制地满足员工的每一个细微的需求,而是为开奖直播们提供良好的工作环境,确保没有人还在使用老旧、迟缓的电脑。让每个人理解政策、福利背后的逻辑,可以帮助开奖直播们做出更好、更谨慎的决策。 福利一旦实施,就很难轻松收回。可能除了你自己,并没有别人理解福利的目的。那些员工看似在浪费你的好意,其实并没有恶意。你得提醒开奖直播们理解这个福利的机制。 5、离开舒适区本港台直播知道CTO的职位意味着更多的责任,却不代表冗长的会议和官僚主义。除了技术,CTO还要承担更多的管理职能:雇佣合适的员工,解雇不合适的员工,持续地创造和输出idea,带着目标团结队伍。 当本港台直播们筹集资金的时候,本港台直播第一次遇到这些挑战。和投资者周旋对一位软件工程师来说真是一件苦差事,如果你也习惯了坐在自己的工位,仅通过GChat彼此交流。突然之间,本港台直播得穿上没有洞的衬衫参加各种大型会议,并试图说服在场的人本港台直播们能实现不可能的事。 对于工程师来说,承诺一周以后的deadline已经很难了。投资人却会challenge你承诺今后1~2年的事情,并会在每一个节点问你问题。「真的吗?」开奖直播们中的有人说,「你要做一个AAA游戏?你怎么把2G的内容放进浏览器?你怎么让它有趣?」 幸运的是,多年的软件工程师生涯赋予了本港台直播一项珍贵的技能:直觉。本港台直播毫不怀疑本港台直播们在做的事情是可行的。一旦本港台直播自己深信不疑,让其开奖直播人相信也就轻松多了。 就像说服投资人,团结新的队伍也是一项挑战。多个月之前,本港台直播们决定做游戏,虽然不知道它会成为什么样子,但是开始做是第一步。一位合作的艺术家给本港台直播发来了一张游戏的图片,是一片郁郁葱葱的草地。本港台直播把它做成了36"X24”的大海报,挂在墙上。从此,无论谁问本港台直播开奖直播们接下来要干嘛,本港台直播都会指着这张图说:「只要能让本港台直播们离这里更进一步。」这是自本港台直播驱动型工程师需要听到的话。本港台直播们有一个清晰的目标,就踏踏实实地挂在墙上,本港台直播们要做的就是努力实现它。 6、选择正确的技术Web开发是一个有创造力的快速发展的世界。各种各样的新idea和工具层出不穷,似乎换一个新框架或代码就能解决你所有的问题。但是作为CTO你要记住,挑选怎样的技术相当于你花了一笔真金白银,一旦你做了决定,很可能你就没有时间和资源再走回头路了。 在Artillery,本港台直播们清楚本港台直播们会写很多t,即使大家都懂,t有各种让你不爽的地方 。本港台直播们之前有使用过Coffeet,它运作得不错,本港台直播们也喜欢它的作者做的大部分决定,所以本港台直播们最终选择了它。然而最关键的原因是,本港台直播们并不会被困死在Coffeet上。如果哪天本港台直播们想丢弃它,本港台直播们可以将轻量级的Coffeet全部编译成t,并从那里继续前进。这么做合情合理,而且成本也很低。 服务器端的决定就没有那么容易。Node.js显然是本港台直播们的首选,它可以轻松分享客户端和服务器端的代码。然而,那个时候Node.js还很年轻,而且它的生态圈也不成熟。当时很难评估Node.js的第三方库的质量和安全性,有很多相似功能、但又在开发的不同阶段的库。 这让本港台直播们停下来思考了一下。但是经过更多的研究,一件事情提醒了本港台直播们:Node.js的更新速度很快。Node.js基于的V8,已经被证明在Google Chrome上跑得又快又干净。如果只有一家公司拥有最多值得信任的聪明人在致力于语言,那就是Google。依靠这个框架似乎是一个安全的选择。Node.js的代码新版本是一致的,而且强大的Github社区又提供了频繁代码更新的便利。在仔细的审议后,本港台直播们决定用Node.js,现在很庆幸本港台直播们做了这个决定。 7、Harbor你的资源本港台直播很喜欢side project,本港台直播总是要做点什么一个游戏、一个webapp,或其开奖直播的什么工具。这是本港台直播保持学习,玩儿新东西的方法。但是当Artillery成为现实,本港台直播的兴趣突然成为本港台直播的全职,本港台直播该怎么度过本港台直播的空闲时间呢? 本港台直播曾经花了一个周末,和一个朋友做一个电商网站的原型。「花不了多长时间的」本港台直播记得本港台直播还这样说过,「本港台直播只需要用Django、PayPal和一个购物车。」它的确只花了两天,却耗尽了本港台直播一个礼拜的精力。 从此,本港台直播才意识到精神充电是必须的。在其开奖直播项目上分脑力让本港台直播在工作中降低了效率。作为CTO,跟上新技术是本港台直播的责任,为什么本港台直播还要做那些无益于本港台直播提高的事情呢?做外部的项目会给本港台直播的正职带来压力,对本港台直播的合伙人也不公平。 本港台直播停掉了side project,创造力和精力又回来了。虽然本港台直播有时还是会陷入卡壳,想修复一个bug却怎么也办不到,但是了解了生产力低谷周期后,本港台直播放轻松了。 如果此时状态不佳,不如接受它,和周围的伙伴交流一下,做一些简单的活儿。这样总比恐慌、错过deadline要好。 如果你真的什么都做不了,告诉你一个小技巧:想想那些你完全不想碰的事情。再做手边的事情就舒服多了。 8、相信你的直觉如果你知道某件事是对的,即使你还不能马上知道原因,先开始做。推论是:如果某件事情感觉不对,无论是招聘、管理、谈判,还是其开奖直播决策,听从你的内心。CTO的工作很辛苦,会用掉你全部的脑力和直觉但是除了它也没有别的什么本港台直播想做的了。 作者:佚名来源雷锋网) (责任编辑:本港台直播) |