当时选择从大厂出来加入一个创业团队,也并不算很盲目。首先,行业是当时很火爆的互联网金融,其次核心团队成员来自金融、法律、互联网等不同领域,都是国内顶尖大学毕业的高材生,而且也有不错的工作经验和人脉的积累,最后种子轮的资金大概有700多万,股东也有银行系出身的大佬,看起来是一个值得搏一把的机会。
我与其中一个创始人曾是同事,被游说出来作为技术团队的leader,他负责产品,我负责研发,先简单介绍下核心人物(化名):
刘备:公司CEO,金融领域,做业务出身,对各种金融产品比较了解,在各大银行及政府部门都有不错人脉,熟悉生意场上的各种潜规则,有些匪气但并不是那种很有领导威严的风格。
关羽:公司CTO,我的前同事,互联网产品出身,专业能力很强,既聪明又踏实肯干,待人接物也不错,属于实干型,但一样也是一直在大公司工作,内容相对专一,且没有金融领域经验。
张飞:公司法务总监,法律专业,本人也像法律法规一样严禁,无论工作上还是生活上说话做事都很严谨,被朋友形容为任何跟黄赌毒沾边的东西都跟他不沾边,工作之外并不善言辞,但是为人很nice。
在被前同事关羽游说的过程中,遇到了第一个“丰满的理想”,因为我是做大数据的,所以关羽跟我说出了他对技术和产品发展的规划,将来是一定要做金融大数据的,有很多场景可以做,技术上也会有很多挑战。但既然是“大数据”,首先就要有足够多的的数据,也就是业务要发展的足够好才会到这一步,这点我心里还是很清楚的,所以接受邀请自然也不是因为这个愿景。
既然已经决定了大干一场,也就不瞻前顾后了,出来后就开始着手组建技术团队,那时候创业公司还是一片欣欣向荣,很多大厂的程序员也都愿意考虑创业公司的机会,所以首选就是从公司前同事下手,可惜一个都未能邀请成功,有一个曾经谈的比较深入,但最后去了一家拿到A轮的做餐饮供应链的B2B电商,之后复盘考虑主要可能有几个原因:
1. 金融领域本身水就比较深,对普通的程序员来说未实际接触过的话感觉有点心里没底;
2. 种子轮公司毕竟风险更高,而且使用到的技术也更初级一些,若没有成功,对技术积累来说有一个断档;
3. 与前同事共事时是平级,但出来后可能变成向你汇报,或许会有心理落差,之前谈得比较深入的同事是被他一个师兄叫走的;
4. 公司给出的offer还不足以让人放弃稳定的大公司工作加入到小团队中。
为了控制成本又不能找猎头,所以接下来就只能通过招聘平台了,拉钩、智联什么的,虽然经历了一些波折,但最终组建了一个还算蛮有战斗力的团队,在外包+兼职+自己团队的组合之下,初版系统两个月左右就上线了,期间产品、技术、法务之间的磨合也越来越好,貌似一切都在正确的轨道上运行。
但系统上线之后才是真正考验的开始,公司面临的第一个问题就是平台上是否有足够多优质的理财产品,虽然前期已经准备了一些由股东支持的理财产品随时上线,但这并不是长久之计,所以在系统开发期间刘备也一直在洽谈合作事宜,时不时的带来一些振奋人心的消息,但结果证明没有最终签署合同的口头协议都是无效的,这就导致前期平台上产品匮乏。
产品匮乏自然也就无法吸引足够多的用户了,用户量少就更难去谈合作了,致使业务一直处于发展缓慢的状态。商务谈判并不像技术开发一样可以评估工时,安排工期,一个合作谈成之前进展都是0,签合同之后才是100%,中间进度很难评估,而过多的打鸡血也会有副作用产生,慢慢的技术团队的成员就开始对公司不停跳票的业务发展有些担忧。这仅仅只是一个导火索,接下来会引发一系列的事件和决策,每一个可能都不是决定性的,但累加到一起导致了公司最终的结局。
当业务停滞的时候,没有太多创业经验的团队开始有些发慌,尤其是账户里的资金越来越少的情况下,这时开始了两个所谓“自救”的行为,一个是寻求新一轮的融资,一个是尝试一些新的产品或接一些快速赚钱的项目。前者的目的也是很明确的要尽快的补充资金,所以很容易陷入到一个2VC的状态,就是一味地迎合投资人的偏好和想法,迷失了自己最核心的价值和初衷,最终也没有拿到投资;后者无异于饮鸩止渴,盲目的去接一些无关的项目,导致自己的核心产品和平台没有持续的迭代和优化,对用户就更没有吸引力了,而且找到的项目也很难cover技术团队的工资成本,变成了做一个赔一个。所以这两种方式只是勉强支撑团队而已。
而往往在最艰难的时候才会爆发出更多平时被隐藏下去的问题,首先,刘备和关羽、张飞都是大学同学,作为CEO他对团队并没有一个绝对的主导和控制权,而关羽负责人数最多的技术团队,他们之间的分歧导致了公司整体战略和团队方向的不统一。其次,公司的早期股东是4个自然人为主,在公司一个没有一个比较好的营收的时候,他们之间也出现了一些问题,尤其是其中某一个股东跟刘备的关系最紧密,导致其他股东质疑公司的财务问题,最终导致股东不愿意再继续注资。最后,同样是因为自然人十大股东,就导致监督机制缺失,作为法务负责人的张飞,由于业务能力比较强,经常被股东委托解决一些私人事务,让他不胜其烦,成为了第一个离职的核心人员。
最终我们的公司也算是有个归宿,被一家金融机构给收购了,但这显然不是因为我们做的足够出色,而算是无奈把公司卖掉,回收点剩余价值吧。就这样第一段的创业经历就这样草草落幕,事后复盘总结,有以下几个重要的经验吧:
1. 股东组成,早期可以接受个人股东,但不宜太多,占股要有权重等级,而且要有完善的监督机制,如果个人股东占股比例接近,没有主导性,监督机制又不健全,很容易出现股东之间的猜忌和分歧,对初创公司是致命性的伤害;
2. 创始团队,团队成员能力互补、互相信任是基础,所以经常会有同学、同事一起出来创业,之前大家可能是朋友,或者感情比较亲密,但任何团队都要有领头人,要有灵魂人物,在有重大决策时能拍板的人,不能因为顾及对方感受而让决策层出现长时间的分歧;
3. 团队组成,根据公司或业务类型来合理配置团队,很多时候在资金还充裕的情况下会盲目的扩充技术团队,导致当业务没有起色的时候技术团队的开销成为了公司沉重的负担,任何一个公司都不能只考虑技术开发,运营、市场、销售等等都要合理配置;
4. 成本控制,创业初期,为了吸引早期员工公司提供了很多福利,包括免费健身、周五团建、饭补车补等等,而且高新聘请各种大牛,一副大干一场的态势,最后发现业务还没什么起色时初期的融资就已经消耗大半,而且很多时候大牛们也没有用武之地,造成了极大的浪费;
5. 技术边界,所谓技术边界就是创业初期你的产品在技术上要做到一个什么程度,很多时候技术出身的leader容易陷入到追求技术完美的误区,觉得一个功能在技术上没达到理论上的完美就不上线,但永远都有做不完的需求,一个好的技术leader要清楚怎样的优先级最能支撑公司的快速发展,一个功能做到什么程度就能满足当时客户的需求,人力资源就那些,要最大化的发挥效用。
一、买几本经典的编程书,把书上所有例程全部重新写一遍,逐个比较和书上范例的差距,一步一步改善自己编程的风格和技巧。时间长了,自然就能写出象书上例程一样的代码,甚至可以比书上写得好。二、基础扎实后,多看看Linux 等系统级的源代码,看看高手是如何写的,就有感觉了。
三、通读一下MSDN中所有的资料,这样,“读书破万卷,下笔如有神”。
还有,一定要牢记软件工程的铁律:可能出错的地方一定会出错。每个变量都做初始化,引用每个参数都会做有效性检查,在可能出错的每个地方都会做边界条件检查,这样开发出来的程序一定会稳固很多,就是出错也会很容易修改。野路子出来的高手,一般开发速度很快,但做完后bug很多,经常需要很长时间修改。而真正的高手,追求的境界是 bugfree code(零缺陷代码)
建议三:必须写够十万行代码,不要心存侥幸
程序员象木工一样,熟能生巧。程序员必须写足够代码量的程序,才会有感觉,这是一个苦力活,没有任何捷径可走。
计算机是一门实践性的科学,没有动手能力做支撑,很难做出好的科研成果。我的一个学长是美国卡内基梅隆大学的博士,卡内基梅隆大学计算机系在全世界非常出名,他说每个博士生必须写十万行代码才能毕业,卡内基梅隆大学博士进任何一个大企业基本不用面试。而国内培养的大部分研究生、博士生,动手能力都偏弱。
没有写过足够代码量的,想成为高手是不可能的,只能纸上谈兵!
建议四:时刻保持好奇心
计算机技术更新换代非常快,每年都有各种各样的新技术出现。在我过去的职业生涯中,仅编程语言,我就用过 basic、masm、pascal、c++、vba、Delphi、java 等。需要时刻保持好奇心,不断学习各种新的东西,才能在未来的几十年职业生涯中不落伍。你要理解为什么 iPhone 出来很多高手用iPhone,现在一天到晚惦记着换部 gPhone 玩玩。
人的精力有限,高手往往工作压力也比较大,如何在有限的时间内掌握整个行业动态,的确是一个不简单的事情。我的经验是经常看业内的各种技术杂志,参加各种聚会,可以节约很多时间。最重要的是,交几个博学的技术高手,多和他们交流,一定获益匪浅!
建议五:不要局限在技术本身,多花点精力关注用户
做到前面几条,就已经是千金难求的高手了。但一个真正的高手需要知道用户需要什么,如何做出让用户满意的产品。
现在的软件研发越来越强烈团队协作,不少团队都配置了专门的需求分析的工程师、用户界面及用户体验的设计师,软件研发的分工越来越细。很多程序员以为只要把技术搞好,不用管用户需求和用户体验。实际上,需求方案及界面方案不可能写得非常细,具体的实施还是程序员自己来实现的。这个时候,好坏的差距很快就体现出来了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)