前一阵在知乎上看到一篇关于“选择某大公司还是ThoughtWorks”的提问,于是毫不犹豫地点了进去。果不其然,除了一些同事的安利回答(尤其以Phodal同学的安利最为严重)外,也没有太多有价值的参考了。对于这种一边倒的回答,我只想说我喜欢……额不,不是这句,应该是,很可能会有阴谋论者以为是营销套路吧?
其实选择哪家公司,并不是一件多么难以抉择的事情。如果选择了某家公司却发现不适合自己,那就趁早走人呗。我相信在就业上能够有所选择的人,是不会因为在一家公司待了几个月发现不合适,辞职出来后就找不到工作的。既然现在能拿到ThoughtWorks的offer,几个月或几年以后,只会拿到更好的,不是吗?而至于是否适合自己这个问题,就只有自己才能感受了,其他人的回答只是参考。我相信题主已经做出了选择,等他过段时间再来更新吧。
ThoughtWorks是一家奇特的公司,奇特到她的员工很少有说她坏话的,不管是在职还是离职;奇特到也有一些“ThoughtWorks终身黑”一直致力于各种嘲讽。当然,对于大多数人来说,她是神秘的。
因为她所倡导宣扬的东西,在其他公司尤其是传统IT企业来说都太难以推进了。比如Clean Code、比如TDD、比如持续交付(当然,如果你认为这些实践对于软件开发来说无足轻重,欢迎来辩)。因此曾经有不少技术圈网红希望能够到ThoughtWorks参观,无非就是想看看,“你们说你们XXX做得很好,到底是不是真的啊。”
我在加入ThoughtWorks之前也抱有这样的疑问。因为当我看着上千行的方法发呆时,他们说超过15行甚至5行就算大方法;当我们还在没有单元测试的深渊中挣扎时,他们已经TDD得不亦乐乎;当我刚开始用Jenkins搭建好构建环境,《持续交付》出版了;当我们终于搭建起分布式应用,觉得差不多算是SOA了,人家已经把大服务砍成微服务了!同样是程序员,这么一比怎么就感觉自己不会写程序了呢?他们简直就是神一般的存在啊。
到底是不是真的呢?以我有限的ThoughtWorks项目经验来回答:“并不全是真的。”超过15行的方法比比皆是;TDD倒是一直在践行,但是团队成员对它的质疑从来就没有停止过;持续交付还在路上,还做不到每天都部署到生产环境,我们相比Amazon还差着好几千个Facebook;而一度客户对我们的challenge是,“别再加服务了!”
但是,与其他企业不同的是,ThoughtWorks一直把这些优秀实践作为追求的目标。前路也许坎坷,但永远不会放弃。对于“代码坏味道”的争执可能贯穿整个Code Review,不辩个淋漓尽致不痛快,不为别的,只为把代码写好;TDD虽然有争议,但都在努力学习,各种workshop和培训纷至沓来,不为别的,只为get一门新技能,融会贯通突破极限成为大神;企业应用的持续交付难度比互联网要大得多,但这条路我们也基本上趟出来了,并且会坚持走下去;至于微服务,经过了那段低潮期,我们从各个方面开始调整,已经基本找到了应对之道。
所以,重要的不在于这些东西我们现在做得好不好,而在于我们一直在往好的方向上做。而在这个过程中,收获最多的不就是人的成长吗?
回到主题上来,我当初为什么选择ThoughtWorks呢?坦白地讲,对于一个在国企工作多年饱尝了世间冷暖、见识过项目百态技术却没啥进步的我来说,在换工作时并没有太多可选择的余地。要不是在拿到ThoughtWorks offer的两周前我的人生导师推荐我去ThoughtWorks试试,我可能就去一家房地产企业做甲方的技术经理了。
但选择公司这一行为不仅仅发生在当初挑offer时,也发生在每年的离职季。每年春天,拿完年终奖、过完年,那些对promotion不甚满意的年轻人就开始躁动起来,人员流动如滔滔江水连绵不绝。对于每个人来说,是去是留都要做个了断。那么我为什么每次都选择ThoughtWorks呢?
14年初,我刚刚过试用期,对ThoughtWorks的一切都还处于看似懂了但现在看来其实too young的阶段。那时我留下来的理由非常简单,我还没有领悟到这家公司的精华,还需要不断地学习。
15年初,我所在的项目新启动了子项目,使用ReactJS作为前端框架,同时还引入了node.js。对于一心想学习JavaScript的我来说简直如沐春风。在这个时间点,国内很多公司都还没有引入ReactJS。顺便说一句,该项目从10年便引入了AngularJS,同样是国内领先。对于新技术孜孜不断地追求把我牢牢地拴住了。
时间来到去年底今年初,一位同事找到了包括我在内的几个人,成立了一个“地下组织”,开始互助写作。所谓“互助”其实就是互相督促、互相建议、互相伤害而已。除我之外,其他人都是公司里举足轻重的人物,不知道这位同事为啥会找到默默无闻的我。在其他公司,这种事发生的概率恐怕会很小。谁管你有什么特长喜欢什么呢?
而在ThoughtWorks,这样的地下组织有很多。志同道合的同事们会自发地聚集在一起,为做成点事情而努力。比如BQConf和CDConf,都是大家觉得想做点什么,于是找到了一拨人一起做,需要公司帮助的时候再找领导谈。没有一个是自上而下的“委派”。半年来我们这个组织诞生了不少优秀文字、演讲和播客,以及最新的ThoughtWorks读书雷达。
三个月前,我们这个小组织进行了一次团建,期间问到是什么动力促使自己坚持下来。一些同事的回答让我动容。他们的大意是说,“希望通过自己的微薄之力,保持ThoughtWorks在社区的影响力,不能让ThoughtWorks的招牌砸在我们这一代ThoughtWorker的手中。”一个普通的员工对自己的公司爱得如此深沉,让我肃然起敬。不知道文章开头和ThoughtWorks比较的那家大公司有没有员工愿意无偿做这些事情,反正我是真的为能和这样的人成为同事而感到骄傲。
行文至此,已是深夜。心有戚戚,无以言表。思绪万千,不知所云。
以上,献给入职三周年的我。