8 个月前写了一篇 DeepDevelop 的发展总结(《从 300 到 300 万,一个远程外包团队的发展历程和经验》),本意是希望为一早一晚社区贡献内容,与小范围内的朋友探讨远程工作和外包的经验,没想到文章发出后受到了很多人的关注,传播范围也大大超出预期。在过去这段时间里我们收到了 200 多封邮件,社区里产生了 2500 条讨论。很多人的邮件写的很长很认真,令我们很感动。站在一个新的转折点上,再次将过去 8 个月的经历写下来, 希望可以与更多朋友探讨远程、外包、创业的话题。
这几个月的数据变化:
2014 年
团队成员:10人
分布地:4个国家,9个城市
年收入:¥300W
2015 年
团队成员:15人
分布地:1个国家,9个城市
年收入:¥1000W
从数据可以看出,我们将目光聚焦到国内,人均创造的产出有了比较大的提升。实际上我们用几个月的时间重新调整了定位,先来说说这段过程。
1. 发展的困境
从 2010 年单枪匹马开始外包生涯,到 2014 年团队达到 10 人规模并有几家长期合作的客户,这个过程中无时无刻不被危机感包围。
最初担心的是个人生计问题。当时对外包市场一无所知,自己的技术能力也非常有限,只能像无头的苍蝇一样去尝试各种渠道寻找自己可以做的事情。对于每个月是否能赚到几千块钱养活自己这件事情并没有十足的把握。直到与第一家客户建立较稳定的合作关系之后,来自生存的压力才得到缓解。
团队有了 2,3 个人的时候,担心的是是否可以把我们这几个人养活好。那时候虽然已经有了比较固定的项目来源,但并不是很稳定,可能某个月的项目多到做不过来,也可能某个月的项目收入刚够所有人的工资。当时自己的经济能力也比较弱,抗风险能力几乎为零,每增加一名新同事的时候都很谨慎,都要确保每个月的现金流为正。
到 2014 年的时候,我们从 7,8 个人逐渐增加到 10 个人。这时候最大的危机感来自增长和发展。简单来说,如果上个月的收入是 20 万,这个月的收入还是 20 万,那这就意味着退步。团队里每个人都在不断成长,大家的技术水平在提高,做事习惯在改进,协作流程在完善,个人追求也在提升,但团队收入却没有增长或者增长的速度赶不上大家成长的速度,这种压力比解决个人生计的压力来的更大更猛烈。
在原有的方向上下了一番功夫之后,局面并没有很大改观。从 2014 年开始每开拓一家新的客户都变的更加困难,毕竟我们大部分同事都在国内;如果在国外不设立办公室并做好运营的话,很难实现规模和价格的突破。同时,欧洲和澳洲的经济形势并不乐观,我们一直在努力协助推动现有客户的业务增长,但他们似乎无能为力,业务量很难有跳跃式的增长。相比国内的如火如荼,欧洲和澳洲的这些公司安静的像只树懒。
与扩大规模相比,我们其实更希望在模式升级上有所突破。虽然我们一直很注重团队建设和流程建设,努力做一家“不一样”的外包公司,但从每个人创造的价值来说依然很初级,带有浓重的体力劳动色彩。心里会告诉自己要一步一步来,但这已经成为最迫切的任务。
2. 尝试改变
===========
想来想去,我们有两条路可以走。第一,做自己的产品,就像 Basecamp 一样;第二,提供更专业的付费服务,就像 Thoughtbot 那样。无论哪个方向,对我们而言都是很大的挑战,挑战主要来自当时团队的整体水平。挑战归挑战,结论还是要在实践中得出来,于是马上着手行动。
当我们试着做了几个简单的产品之后,意识到这不是适合我们走的路。当时团队里几乎全部是程序员,没有懂其他行业的人,也没有优秀的产品和视觉设计师。这样一帮人聚集在一起,只能做出给程序员用的产品。但是做这类产品我们没有任何优势,无论是在产品还是在技术或者在推广方面,都很难找到胜出的理由。
与此同时,得益于前几年的口碑积累,逐渐有一些独立的创业项目找上门来。在前面几年我们对这种独立的项目通常都是拒绝的态度,那时候认为只有标准化才能降低沟通和开发的成本。我们与设计公司建立稳定长期的合作关系,同时也建立标准化的工作流程,由此来降低双方的成本。而这些独立的项目与“标准化”是相悖的,背后的团队形形色色,产品本身也遍布各个行业包含各种不同特征。但现在我们决定试一试,最直接的出发点是他们愿意付更多的钱。
与多个项目沟通之后,我们挑选了一家英国的创业公司,因为他们沟通顺畅,对项目理解清晰,做事讲规则。他们的项目是关于艺术品交易的。我们为这个项目单独调整了服务的流程和心态,尝试以创业者的身份与客户站在一起思考,努力参与到项目的多个环节里,而不仅仅是对照文档写代码。经过 2 个多月的努力,这个项目顺利上线。现在回头看,虽然当时所谓的“调整流程”只是微调,而且是边走边摸索,没有系统化的知识来指引,但已经让客户产生了亲人般的感觉,得到了他们期望的服务和结果。
这次合作下来,并没有被我们担心的那些问题所困扰;反而更体会到深度参与的乐趣和发挥更大价值的成就感。从这个项目开始,我们的人均产出有了一次大幅提升。当时突然觉得这或许会是个不错的新方向,但这个新方向到底会带来多少变化,心里并没有底。
3. 新机会
就在第一阶段的总结文章发出来之后,一位很优秀的大学同学联系到我,希望一起来做一个服务于投资人和创业者的项目。她的为人、资源以及项目本身都对我有很大的说服力,我们在深圳一起吃了一顿饭就把事情定下了。于是接下来我在一边发展 DeepDevelop 的同时,一边将一部分精力投入到了这家新公司里面。在此之前,我对国内互联网创业的圈子、对投资领域的了解很少。随着接触的投资人、创业者、创业项目越来越多,对这个领域理解的越来越深入,越发意识到国内外包行业的混乱无序,一大批有理想、有资源、有资金的创业者对专业的产品和技术服务的渴求。
很快,新的圈子给 DeepDevelop 带来了新的项目。2014 年底我们连续为 3 家国内的创业公司提供了产品和技术服务,帮助他们把产品从 0 到 1 做出来并上线开始运营。在每个项目的实施过程中虽然偶尔有磕磕绊绊发生,但整体都很顺利。此时,我们的视角也随之发生了变化,不再盯着本月收入 5 万还是 50 万,而是尝试站在更高的层面去理解这个几百亿规模的市场。
我们决定调整定位,专注于为优秀的中小型公司以及初创项目服务。
做出这个决定之后,并没有马上站出来宣布,因为还有两件重要的事情要先做好。
第一件事是给现有的国外的这些客户一段缓冲期,协助他们找到新的合作伙伴并顺利交接,保证他们的业务不受影响。同时也再次跟他们说明,凡是我们做过的项目,将来有任何问题都我们都继续负责。
第二件事是重构团队。更专业的服务需要更专业的团队来支撑,我们的氛围和流程很好,但一部分同事的基础和成长速度不能满足新业务的需求。我们要有优秀的新鲜血液加入,同时要为原有的部分同事提供理想的归宿。
4. 重构团队
DeepDevelop 是从我一个人、从最简单的网站开发起步(在第一阶段的总结中介绍了当时团队的情况)。虽然没有停止过更新团队的步伐,确保团队的整体水平一直在稳步上升,但是我们想做的更好,在团队方面需要一次变革。
首先需要下手的就是我自己:当初自学了前端、后端开发,并且实际运用了 3 年;对移动开发、运维等方面也有涉猎;在过去的几年里一直在主导 DeepDevelop 的团队和流程建设。由于这两年我大部分精力都放在团队和业务方面而很少再写代码,现在我已经是整个团队里技术水平最差的人。我的技术缺陷已经成为团队的绊脚石,或者说无法为团队的飞跃式发展提供帮助。我们决定为每一个环节各引入一位技术精湛、经验丰富的核心成员,包括产品和视觉设计、Web 开发、App 开发、测试、运维。这几位核心成员负责各自环节的建设,他们也是持有公司股份的合伙人。
其次需要更新的是一部分像我一样技术水平无法满足团队成长需求,或者技术栈不符合我们后续需求的同事。客观来说,他们的水平并不低,全中国的互联网公司都在被招人的难题困扰,尤其是成千上万的创业小公司,他们去找一份开发工作应该是很简单的。但我们希望可以给这部分同甘共苦一路走过来的同事一个更好的选择,于是将我们原有的国外的客户交到他们各自的手上,由他们去自立门户,努力经营下去。同时,希望他们继续留在 DeepDevelop 的圈子里,跟大家一起交流成长。
/ *********************************************************************************** /
/ *********************************************************************************** /
做好初步的准备之后,借助于越来越多的投资和创业领域的资源,我们开始增加项目的数量。目前每个月过来的项目在 5-10 个之间,我们会从中选出 2-3 个为他们提供服务。在做好进一步的发展准备之前,会将数量控制在这个水平并保持稳定。趁着稳定,再来说说招聘和客户这两个核心的话题。
1. 让招聘自然发生
==============
—— 周,帮我女朋友开个收入证明,我要买房了,后天去签约
—— 好啊,收入证明是小事。考虑一下加入我们?现在时机已成熟
—— 先给了收入证明再说
—— 来我们电话聊聊…… 20 分钟后
—— 周,刚跟我爸妈还有女朋友说了不买房了,跟销售说不去签约了,等下去跟老大谈谈离职
这是 L 同学加入我们的过程,只用了不到半个小时,更改了买房计划,放弃了一线公司的无息贷款、股票以及即将到来的升职。
许多互联网公司在招聘的时候会写出一个长长的列表,可以给员工提供各种各样的福利,比如期权、大屏幕、零食、椅子、宠物、旅游。DeepDevelop 从招聘第一位新同事的时候就开始思考这个问题,我们想要的那些人才,他们到底想要什么。作为一个以外包为主业的公司,我们没有激动人心的故事可以讲,也没有取之不尽的钱可以烧,在这种情况下想要吸引到比平均水平更优秀的人才,自然需要更独特的东西。久而久之,这些东西已经变成了团队性格。
--- 自由和认同感
在 DeepDevelop 每个人都是自由的,无论是时间上还是空间上还是精神上。我们一直是远程工作的倡导者,现在同事们仍然分布在国内多个城市。我们在北京和深圳各有了一个办公室,但没有规定大家几点来上班或者哪天来上班,更多的是为了给大家提供一个交流的场所和见客户的会议室。互联网产品和技术的工作特性决定了不需要必须时刻坐在一起,而且越是优秀的人才通常都是个性越鲜明的,他们不应该被束缚,不应该把时间浪费在地铁上或者拥堵的环路上。
我们以星期为单位来分配任务设置节点,只要在这个星期内完成了任务就可以。周一女朋友过生日下午要带她去扫货,周三身子不大舒服想睡到中午 12 点,周五看中这家书店的环境想在这里写一天代码不去办公室,周日没事干打了鸡血把接下来一周的任务都完成了……这些在我们看来都不奇怪,女朋友确实比工作更重要,在身心愉悦的时候确实比满脑子糨糊的时候工作效率更高。实际上大家并不会有那么多特殊情况,多数时候都会在工作时间保持在线。
自由也包括施展拳脚的自由。我们不希望把时间都花费在客户的项目上,鼓励大家每个星期都要有一定时间参与到团队和流程的建设上,或者贡献项目外的开源代码,或者输出知识积累。
与自由相伴的是认同感。这种生活和工作方式并不适合所有人,凡是被吸引的一定是认同这种方式,认同我们正在提供的服务和创造的价值,认同我们的同事,认同我们的客户和他们的项目。这些认同会带来成就感和责任感,是可以享受这种自由工作方式的前提。
--- 可观的收入,并且没有天花板
自由的生活也需要足够的收入来做支撑。在当前全民创业的大潮下,真正有干货的人才从来不需要为自己的收入担心,他们甚至不会出现在招聘网站上。形形色色的创业公司们开出的价格一个比一个高。坦白说在比拼月工资方面我们没有特别突出的优势,但可以确保不低于平均水平,确保每位同事都能过的自在。在此基础上,我们在努力做好两方面的建设:
- 让更多的人持有股份。没有期权的激励措施,优秀的同事获得的都是公司的股权,每年一次参与分红。
- 简单高效的成长和奖励机制。每个人都有机会获得项目的收入分成,做的越好分的越多。
--- 与优秀的人共事并成长
但凡有过在公司或者其他群体里生活工作经历的人都知道与优秀的人相处和共事是多么美妙的体验。一方面可以大大节省自己的时间和精力,另一方面可以让自己在潜移默化中变的更好。我们精挑细选每一个同事,不仅仅是为了技术或业务的发展,更是为了营造优秀的氛围,让每个人都沉浸在这种氛围中,都有条件变得更优秀。
受益于这种与众不同的性格,DeepDevelop 在招人方面是很幸运的,几乎不会为招聘发愁,也很少需要公开发布招聘信息。我们每个星期都会收到几封邮件,除了个别毫无营养的之外,这些邮件都会得到认真的回复并希望引发更多探讨。它们并不都是简历,其中一大部分是关于远程工作、外包行业、技术学习等方面的探讨。在每次聊完之后,我们都会将有价值的人才信息以及沟通记录整理到一个 Trello Board 上并合理分类。逐渐的这个 Board 已经成为我们的人才库。当发展到某个阶段,对某一类人才有需求时,就会在这个 Board 里的某个位置上将潜在的同事找出来并与他取得联系。
2. 客户愿意为信任和专业买单
谈到外包的收费,很多人会用诸如 15000/人/月 x 3人 x 3月 的方式来计算。对于我们所服务的客户和项目类型来说,这种计算方式是非常不合理的,就像把一台 iPhone 拆解开,所有零件的价格加起来是 1150 元然后由此给 iPhone 定价一样。iPhone 不是一堆零件的简单组合,DeepDevelop 提供的服务也不是几个机械式的程序员拼凑机械式的代码。
一个完整的产品应该是在一套科学的、连贯的流程下逐步诞生的,应该是具备自己鲜明的特征和统一性格的。同时,作为这个产品的主人或者缔造者,应该熟知它的每个细节和诞生的过程,确切知道哪些部位非常可靠哪些部位尚有待改进。只靠一堆零件生产不出下一代 iPhone,只有几个临时的程序员也不可能开发出具备这些特征的产品。
每个项目开始之前,我们并不会跟客户要需求文档这类的东西,而是希望跟他们进行一次长谈,由他们来讲讲这个项目的故事,团队的故事。我们的产品负责人和技术负责人都会参与到这次长谈中,确保大家都能深入的理解项目,甚至对项目和团队产生认同感。之后,才会由我们的产品负责人来梳理这个项目,协助客户一起将其形成一个合理的产品,然后继续推进到后续的环节。同时,我们会将产品背后的故事整理下来,确保后续参与进来的每个人都知道这个项目和团队的背景,可以从更深层次把握产品的特点和走向。
由于我们服务的项目大多数与互联网以外的行业结合的比较紧密,客户也多数来自其他行业,很多时候他们无法把握产品的发展步骤,经常发散思维。我们在协助梳理产品的过程中,为需求分级就成了一项重要的工作。每个阶段只开发当前一级的需求并逐步上线,由此帮助客户将时间和金钱成本降到最低,从而降低风险。
在产品和技术层面,我们在每个环节都会与客户进行专业化的探讨,甚至引入第三方的朋友一起参与,不把客户当傻瓜,也不把自己当权威。下面这张图是我们的设计师与客户探讨网站导航位置时给出的解释:
谈到一个项目需求的时候,通常大家都会谈它应该长什么样子、运行在哪个平台上、具备哪些功能给用户用,很少有人会关注运营后台应该长什么样子、具备哪些功能、如何才能让负责运营的人用起来更顺手。但运营后台在我们看来是非常重要的一个组成部分,除了保证美观之外,我们会花很大力气进行体验和功能上的设计和优化。
代码方面,每位开发的同事都会严格遵守我们的规范;每个人的代码确保至少经过一个人的审查。
每个项目我们都会以星期为单位制定开发计划和交付计划,通常每个项目的每个阶段会拆解分配到到 8 - 12 个星期里。每个星期一给客户交付上一星期的工作结果,探讨遇到的问题。通过这种方式确保客户随时知晓项目的进展和质量,而不至于 3 个月后突然冒出一句 “我们要延期了” 或者 “质量太差用不下去了”。
部分客户在项目上线后并不能组建好自己的技术团队,我们会有一位负责运维的同事一直协助他们保证线上产品正常运转;同时开发团队会负责已有功能的维护,发现 bug 要立即响应并修复。
我们正在计划尝试建立一套评价体系,客户在每个节点给产品和服务作出评价,评价结果将关系到产品和技术团队成员的收入和晋升。
为了确保每个同事都愉悦工作,创造最大价值,保证利润合理,我们会本着“宁缺毋滥”的态度筛选项目。总结下来我们的目标服务对象通常具备这样几个特点:
- 团队逻辑清晰,对互联网产品有较清醒的认识
- 沟通顺畅
- 通常是资源驱动型或者运营驱动型项目
- 每个阶段可以在 8-12 个星期内完成
与资源驱动或者运营驱动相对应的是产品驱动或者技术驱动。产品驱动,比如一个更好用的社交产品,一个更好用的书签产品,这个类型的项目通常需要大量的细节打磨和迭代,并不太适合由外部的团队来实施产品的设计和开发;而且这个类型的项目通常都是没有多少预算的。技术驱动,比如与硬件相关的项目,或者涉及到某个领域的专业技术比如图像识别语音识别,这种类型的项目更适合找领域内的专家。最终留下的是资源驱动或者运营驱动型,这种类型的项目创始人通常都具备不错的资源来支撑这个产品,产品本身更多的是为资源和运营服务的。
/ *********************************************************************************** /
/ *********************************************************************************** /
从 300 到 300 万花了4年,从 300 万到 1000 万花了 8 个月,下一个数字会是多少、需要多长时间?随着对这个行业的认识、资源的积累以及对服务深度的挖掘和广度的开拓,我们的焦点已经不在数字本身。
品牌和标准
所有找过付费外包服务的人或许都经历过这样煎熬的过程:面对遍布网上的个人、团队、公司不知道该选哪一个;小心翼翼选中一个之后,不知道该按什么标准付费;付费之后不知道该按照什么流程推进和验收;到了截止日期不知道对方到底会给自己什么样的结果。
在整个国内市场上,目前还没有一个具备足够知名度和号召力的专为小型团队和项目提供产品和技术解决方案的品牌。伴随品牌缺失的是标准。面对鱼龙混杂的现状,别说局外人了,就算是我们这些局内人都很难在短时间内判断一个团队或个人是否靠谱,以至于在互联网圈子里,“外包” 与 “低端” 画上了等号,很多人在找工作的时候要刻意避开这样的公司。
与此同时,这个行业内存在着一小部分很优秀的团队和个人,他们有能力有追求,但缺少系统性的指引,常常为如何建设团队、如何降低成本、如何高效协作、如何寻找客户而烦恼。
我们希望能改变这种现状,吸引更多更优秀的人才加入我们,不断提升专业度的同时,将我们实践得来的高效流程和标准公开给大家参考,希望越来越多的从业者一起来优化这套流程和标准,从而影响更多服务需求方和供应方,让这个行业更有序和规范。在这个过程中,让越来越多的人认识 DeepDevelop。
最后,如果你有兴趣加入我们,或者加入我们合作过的项目,或者探讨有关远程工作和外包的话题,不论城市、年龄、性别、学历,欢迎联系我们:jason [at] deepdevelop [dot] com。期待精通以下几类技能的同学:
-
产品设计,交互设计,视觉设计
-
Web 开发
-
App 开发
-
测试
-
运维
-
品牌建设,市场推广
-
项目管理
他们的网站都访问不到了。。
假的吧?