在面试奥斯汀市中心一家精品APP公司的过程中,我就知道我与这个工作无缘了。他们想看我写的代码,然而他们也知道,我之前为公司写的代码是不能展示的。当然,这不成问题,我可以给他们展示我正在做的众多业余项目中的任何一个。
但问题是我没有业余的代码项目,没有GitHub账号,也没有把下班时间花费到开源项目上面。我从未在任何最近看起来很酷的代码库中提交Pull Request,即使很多大牛都参与其中。我也没有在Haskel的比赛中浪费时间。还有,我讨厌编程马拉松。
当我说「我没有业余项目」时,他们(面试官)听到的仿佛是“我不是最好的,我不是一个充满激情的程序员,我没有花时间让自己在教育和技能方面保持领先”。他们认为我做开发,只是为了一份工作。
从某种程度上来说,这是事实。我不是最好的程序员。我曾经遇到过一些所谓的最好的,我发现我和他们根本不同。打个比方,以前我经常跑步,并且始终能在那些坚持跑完全程的人中排到前5-10%,但是我和那些健将的差距就如同我和倒数1%的人之间的差距。我对跑步这件事充满激情,每周跑50多英里。我促使自己变得优秀,在为自己设下的时间和生活平衡界限中脱颖而出。要想成为健将,那么我在生活上必须牺牲做其他事情的时间来跑步,但我并不愿意做出这样的牺牲。
有一小群人另当别论。代码在他们眼中不只意味着一份工作,更是一种使命。代码是一门手艺,而他们是艺术家。他们中有成千上万个基础扎实,编程厉害的程序员,写代码的能力超过90%的计算机专业毕业生。但他们不是“最好的”。
每当公司表示,他们要的是能够利用空闲时间编程的「有激情的、最好的程序员」时,我总会感到紧张。这对于团队建设来说是个短视的做法。这是把人当机器的行为。
我已经在简历和网上简介里列出了我热爱的其他事情,包括:我在奥斯汀发起的艺术项目、托狗所、跑步、绘画和写作,我的这些爱好在公司被赏识,这对我来说很重要。如果公司能赏识我的这些爱好,他们也会赏识别人的爱好,这也充分说明了公司良好的文化建设。
世界正一点一点赶上这个现实。湾区、西雅图、纽约,初创公司或大型企业最喜欢设立在这些地区,但他们只招住在当地的人。我有四个孩子,我和妻子有一个完整独立的托狗所,我活跃在本地艺术社区,所以我不可能再搬去以上任何一个其他城市。虽然一些公司逐渐意识到我不是个例——Facebook、Google和Amazon,他们在奥斯汀也有重要业务,关键是因为他们在其他地方招不到人——很多地方依然相信最好的程序员就是整天编程的人。他们相信最好的程序员会因为你们公司有个休息室、每周工作80小时、有个乒乓球台而被吸引。他们很乐意每周五加班,并且绝对没有晚上或周末计划。从来没有。
我没有得到在奥斯汀市中心那家精品APP公司的工作。我没有业余(代码)项目展示给大家看。每周四晚,我会去一个生活绘画工作室,和其他艺术家花上三个小时,为我们的模特素描各种姿势。平常晚上,我做完晚饭后会和妻儿们呆上一段时间,然后我会静下来为我的第五部小说码个2000字(虽然它会像前四本一样躺在我的“羞耻堆”中,绝不会被其他人读到)。到了周末,我喜欢徒步旅行,我深入研究艺术。我是个充满激情的程序员,因为我是个充满激情的人。但是我没有代码给你们看。
原作者Ezekiel Buchheit后来加入Amazon做软件开发工程师了。
原文出处:https://www.linkedin.com/pulse/i-have-side-code-projects-show-you-ezekiel-buchheit/