只有三名全职员工,每月经常性收入却超200万美元,程序员在线面试这门生意还能这么做...
你好,请你介绍一下自己的背景,以及现在的工作。
大家好,我叫Vincent Woo,CoderPad创始人,这一平台支持通过网页浏览器和程序员进行面试。我今年28岁,住在旧金山湾区。大学时候,我念的是计算机科学,在创办CoderPad之前,我也只是先后在几家公司当普普通通的程序员。
不过,辗转几家公司并不意味着我喜欢。我其实从未享受过学校教育,成为企业员工要比做学生好得多,但也没好太多。
我在谷歌和亚马逊过了平淡无奇的几年,总的来说,我一直感觉成年人可以说小气、短见又懒惰。这样的情绪堆积起来,逐渐转变成了对公司的怨愤。
我直接拒绝阅读我的任何绩效评估,这很好,因为我知道他们想说什么。我不是一个好员工,我知道。
我之所以告诉你这一点,是因为我相信,我作为员工的态度影响了我创办公司的方法。 CoderPad是一家小企业,通过为大公司提供有价值的服务来赚钱,就是我曾经讨厌的那些公司。 是的,我自己身上也充满着讽刺意味。
CoderPad的产品是面向程序员的高保真采访环境,强化了代码执行、调试和堆栈追踪。我们把这个工具卖给程序员很多的公司。如今我们有三名全职员工(除我之外),每年的经常性收入超过200万美元。
CoderPad最初是我在Everlane工作时的一个副项目(这是我第一个也是唯一享受的工作)。当时我正在面试一大堆候选人,我想看看候选人会如何解决问题。
其中一个人问我某特定Ruby对象是否支持.map运行,我想说:“你试试不就知道了!” 但问题是,我们当时用的是像Collabedit这样的一些老旧的共享文本编辑器,它不支持这样的高级功能。
我觉得这很荒谬,所以我想购买一个支持这种功能的产品:提供一个实时的执行环境,以及同步文本编辑器。 令我惊讶的是,我找不到这样的产品。 我觉得开发起来应该不是太难,所以我在周末攻克了一个仅支持Ruby的模型。
当我开始使用它来面试Everlane的候选人时,我很明显地感觉到可以把它卖给其他人——这款工具无疑给充满压力的过程“减负”了。与此同时,我也偶尔在其他公司面试,因此我重建了原型,并开始了解我的采访者是否也喜欢它。 他们通常是喜欢的,这大概就说明这个想法是正确的。
最初我利用晚上和周末的时间开发CoderPad,因为白天我还要上班。我第一次给客户的版本花了大约三个月时间来开发。这个部分在我的记忆中是模糊的,因为那是很久以前的事情,而且当时我只觉得自己是弄着玩玩。我对这款产品能够成功这个概念漠不关心,所以这个开发阶段似乎只是另一个副项目。
我隐约感觉知道这个产品会成功,但是从情感上来说,似乎又不太真实。然而,当我每个月当经常性收入突破4000美元时,我开始感觉到“真实”了,这时候,我放弃了我的全职工作,开始专心开发CoderPad。
在Node中构建CoderPad网站的第一个原型时,我做了一个非常糟糕的决定。我通常不会做出糟糕的开发决定,但这绝对是最无法想象的。当我发现Node的网页开发速度有多慢之后,我很快就重写了Rails中的错误。幸运的是,现在做微代码执行的API服务器,我们和Node的关系更有成效了。
不过,这就是试图用最少的资源创办软件公司的根本问题。 你想尽可能加快开发速度,但你总是对你使用的程序库或框架感到不安……就是这样。
例如,我使用Devise程序库进行用户认证,因为它当时似乎是事实上的行业标准。然而,我发现它实际上是糟糕的。如果一开始我们选择一个更好的程序库,那么速度会快很多,但是我们已经选择了,如果现在更换,更快使开发过程滞后。这就是人生。
一开始,我们将代码评估外包给第三方服务机构,但这有点令人不太舒服。他们只提供了基本的代码评估,并不能提供实时REPL交互,而我希望CoderPad具备这一点。
我们还必须学习如何运行几十种不同的编程语言,并且至少以说得过去的方式解决其中的问题。
我们最初的用户来自我个人的推销,推销给我认识的人。我们在HN和Product Hunt上做了一些曝光,但帮助不大。一段时间后,我们网站的流量开始自然增长。
我们或许从所谓的病毒式传播中受益颇多。 我听过有些候选人向其他公司介绍CoderPad的故事,因为他们喜欢在我们的平台上面上,而不是谷歌文档。
我们也很早就把重点放在了销售上,所以我们很多的潜在客户最后都转化成了付费客户。我的一个高中朋友Darius开始的时候帮助我销售产品,令我意想不到的是,有一天他放弃了自己的高薪工作,全职加入CoderPad。
了解销售是一个狂野的旅程,乐趣也相当多。从很多方面讲,销售是对人类的现代图灵测试。你必须和客户清楚地沟通,使自己具有人性化,专注于客户的需求,并最终拿下订单。你所能利用的工具不多——通常是电子邮件和电话。你说你关心客户是一回事,真正关注他们在电话中所说的一切,这又是另一回事。
我们把所打的销售电话都记录了下来,并找出客户感到困惑或忘记提出重要问题的时候,这一做法非常有效。我们发现有这样一个问题:客户通常不会坦率地说“我不明白”。如果我们给对方的回答不清楚,他们通常会说:“好的”,继而寄希望于之后的谈话中,答案会变得明显。因此,你必须积极思考说什么是正确的,而且因为客户不同,说什么可能也会有很大的差异。不同客户对你的价值主张的感兴趣的方面也是不同的。
但是更广泛地说,我真的不知道我们是如何吸引用户的。与许多其他受采访的公司相比,CoderPad可能是不寻常的。我们不收集用户指标,也不做任何营销。
我们根据客户的使用情况向客户收取订阅费,而且一般只进行进线销售。据我所知,我们通过销售策略和提高价格而增加了收入。“多收费”这句老话放到今天仍然有道理。
我想在这里离题谈谈选择好客户。围绕这一话题的讨论不多,但好客户和坏客户之间是有很大差别的。我并不只是根据合同规模,虽然客户与合同规模之间是相关的;我想谈的是,大客户往往更好。
我的意思很简单:他们是负责任的吗? 一些客户已经全面了解了他们的选择,知晓各种信息,最后才认为你的产品可以依靠。这些客户通常渴望学习更多,顺应变化,因为他们真正在努力完成某件事情。
其他客户试图通过经销商购买你的产品。这些人会安排很多会议,花很长时间来决定什么所有有价值的事情。
能够在销售初期基于质量确定潜在客户将有助于保持理智,避免浪费时间。作为公司的唯一所有者,我可以选择放弃自己不喜欢的客户,我几乎像珍惜生命般珍惜这个特权。
好的顾客会和你一起成长,向他们的朋友介绍你,这样一般很棒。我宁愿有只有几位好的客户,也不愿有一堆平庸的客户。
我们之前(现在仍然如此)很难确定我们的定价模式。 最早的CoderPad版本提供了两个自助服务计划,分别是每月20美元和50美元;如果用户超过最大计划,也可以联系我们给出优惠的企业定价。我们分别把这些价格提高到了50美元和100美元,但仍然存在问题。
大公司一开始会使用100美元/月的计划,在达到他们的上限时,就想升级到企业计划。为了使我们的业务更合理,我们必须能够以每月数千美元的价格向大客户收费。然而,从之前的价格猛跳到十倍以上造成了不小的震荡。客户看着我们的自助服务价格时,在观念上仍然停留在100美元,我们不得不花很大的精力让他们跨越这个鸿沟。
Darius和我为此产生了不同意见。他主张提高自助服务计划价格,使企业价格看起来不那么吓人。但我认为,如果价值主张足够,定价不应该是多大的事。同时,我也想为小公司维持一个相对实惠的计划。
最后,我们增加了第三个自助服务级别,提高了第二个的价格,至此每个月的价格分别为50美元,250美元和750美元。这一定价既让我们从自助服务计划中获得了更多收入,也使与大公司的谈判变得更加容易,因为想要企业计划的公司都已经习惯了每月支付750美元。
这里真正需要记住的教训是:我自己不愿意解决这个问题。我害怕惹恼客户,也不愿意以更低的价格服务大客户。事实证明,这并不是什么大不了的事情,但是我的拖延症打败了我。
我想,许多创始人都会拖延他们最重要的事情,把第二重要的事情拿来当作拖延的借口。以我个人经历来说,我当时做着许多不起眼的事情,却迟迟不愿修改定价模式。我希望读者们不要重蹈我的覆辙。