分类目录归档:闲碎之言

你想做什么样的老板

这两天各种媒体上都是关于陌陌IPO的新闻,以及陌陌CEO唐岩前雇主网易在陌陌IPO前夕发布一些关于唐岩个人的负面新闻,大家众说纷纭,被大家戏称为又一次『撕逼』,甚至有人臆想为陌陌上市之后会对易信造成更大的市场阻力等等。

作为一个局外人,其实我永远都只是一个不明真相,多少又有点愤慨的群众。莫说易信实际的竞争力远不如陌陌来得猛烈,就说陌陌平台通过游戏给陌陌带来的变现能力也远不是如今的易信可以望其项背的。作为一个观众,其实我们只看到了舞台的一角,也可能幕布还没有打开,我们就已经对着幕布在不断地YY,想象着幕布打开之后会是啥景象,也许幕布还没有打开,观众们凭着自己丰富的想象力以及各种阴谋论,足以让自己达到高潮,然后匆匆散场,而实际的演出都木有开始,也许这番乱象才是真相。

回到文题,实际上对于这个热点新闻,我完全木有任何想法也木有观点,跟我半毛钱关系都木有,去他大爷的。不过关于前东家在自己前雇员上市的前夕做出如此举动,自己心里头有点莫名的想说点啥的冲动。

什么样的老板会这么干呢?这么干的目的是啥呢?干了这个事情之后,能给自己带来什么呢?

问出这三个问题之后,其实也很难回答,因为我自己不会这么干,其实很难去分析别人这么干的个中缘由,也因为我们不知道当事人之间的各种利益纠葛和陈年旧事,所以我们回到自己想做什么样的老板这个话题上吧。其实谈自己想做什么样的老板,也意味着自己想跟着什么样的老板。

在我看来,老板需要具备以下一些比较优良的品质,方可让自己的雇员感觉到比较的舒服。

  • 能带领大家赚到钱,赚到钱之后愿意与大家分享;
  • 自己犯的错误要自己承担,不能把自己的屎盆子扣到别人头上;
  • 栽培员工是自己的职责,不能因此站在道德的高地;
  • 能坦然面对团队中能力突出者,并及时做出肯定和认可,不吝啬赞美之词;
  • 疑人不用,用人不疑,适当放权,相信别人会比自己做得好;
  • 面对团队成员离开,保持平静的态度,宽容地对待这些与自己想法不再相同的前伙伴;
  • 珍惜所有一起做事情的人们,有缘才聚到一起,别弄得像掉进钱眼里头去了一般。

说得不够抽象也不够简洁,也没有谈到类似于『克己,以身作则,思路开阔』等等优秀品质,这倒不是因为我认为这些特质不够重要,这些也非常重要。其实我们可以回头看看自己的老板,他们身上都有着很多不错的品质,通常都很能拼,能打硬仗,业务能力即便不算超一流肯定也是行业里头顶尖的家伙。可是真的只需要这些就可以算是一个好老板吗?

我一个人能写别人10个人都写不来的好程序,我一个人1年能卖出别人10年都卖不出的业绩,我一个人能每天工作18个小时,我可以一个月都不陪老婆逛街,天天就说工作。这些是不是很牛逼?是,确实很牛逼,很多人都做不到这些牛逼的事情,这些人也确实有很大部分就是现在的某些老板,他们都很优秀。

不过作为一个员工,其实每个人对于老板也是有要求的,员工都希望老板能给自己涨工资,希望老板能比较友善,希望老板给自己发展机会和空间。可能是因为自己之前碰到过一些不太如意的事情,也跟很多朋友聊到过类似的事情,心中有些郁积之气,如此这般道出来之后,心中也稍微畅快一些。

写下这些字,目的是提醒自己,如果有一天自己选择老板,或者自己也成为了老板,要记住除了自身要牛逼之外,还要记住这些自己曾经作为员工的时候,期待自己的老板会有的一些优良品质,不要自己最终成为了自己最初讨厌的人。那样的话,幸甚!

什么叫创业心态?

从坚持了整整4年的喜讯离开了,肩上的担子一下轻了下去,自己角色转变还蛮快的,倒也没有觉得有什么不适,感谢我们武雪同学在离职的当天晚上还给我做思想工作,让我别想太多不要太难过,要快乐地度过这段离职缓冲期。

在喜讯四年多,从一个什么都不懂的愣头青小子到如今依然懵懵懂懂的一个程序员,四年里头自己坚持得最多的可能概括起来就是『用创业的心态去做事情』这么几个字吧。

现在有很多的企业都在宣称要去中心化,要精英团队,在大公司内部提倡小团队在公司内部创业,例如『金山软件』将所有的大部分拆分成各个小的子公司,让各个自己公司『重新创业』,也确实看到了『猎豹移动』这样快速成长的上市子公司,成绩非常斐然。同时我们也看到了『腾讯广研』团队创造出来的『微信』神话,这些都是非常好的大公司小团队创业成功的例子。包括百度也在提倡要狼性,无非也就是要求大家要忘却自己是大公司的身份,要重新给自己定位,要有创业的心态。

这些公司和团队都提倡一个『创业心态』,那么『创业心态』是啥?我自己的理解就是『把公司分配给你的任务当成自己的事情来做』。这句话读起来非常简单,感觉也挺好做到的,但是在自己跟着公司创业的这4年多时间里,委实觉得要做到实在不易。

『把公司分配给你的任务当成自己的事情来做』要求自己做到两点:

1. 要有责任感,只有拥有强烈的责任感,才可能把事情做到位,未来才有可能会有更多的任务和责任分配到自己的头上。例如公司让你完成某个项目中的A功能模块,那么怎么才能顺利把A功能完成呢?这个时候可能会碰到以下问题:

  • A功能是自己之前从未遇到过的一个技术难题,需要自己苦心钻研几天才有可能找到解决问题的方法,但是项目进度要求非常紧张,如果花费几天搞定这个问题,成本太高;
  • A功能跟某个B功能是有非常强关联的,如果需要做A的话,需要调整B功能,B功能一直是其他的某个同事在负责,但是目前该同事也有较重的任务在身上,无法脱身来协助调整B功能;
  • 等等类似的问题都可能会出现,举例只是想说明在我们处理任何问题的时候都可能不只是一个简单的花费多长时间,通过工作量就可以搞定的。

那么在这些情况下我们要怎么才能按时按质按量完成A功能呢?好吧,其实我也不知道具体的解决方法是啥啦,因为大家碰到的问题可能千奇百怪的,所谓『家家有本难念的经』,谁知道尼玛你会碰到什么狗逼问题啊。但是,在我们碰到类似的困难的时候,只要认定这个事情交到自己手上,自己一定要想办法搞定他,遇到技术难题迎难而上,加班加点肯定不是什么稀奇的事情,遇到需要其他同事协同处理,努力跟对方沟通协调时间,对方实在没空可以考虑跟对方沟通确实调整方案自行修改,如果实在自己能力有限,确实无法在指定时间内搞定该问题,或者自己根本就完全没有办法搞定这个问题,那么及时反馈到团队负责人那儿,大家一起来想办法。

公司给大家发薪水,大家需要体现自己的价值,解决公司的问题是每个团队成员必须具备的基本素质。在创业团队中更是如此,因为团队建制较小,每个人都需要独当一面,甚至独当多面,那么公司交给你的事情,一定要尽最大的努力完成,因为团队中其他的成员默认这个事情交给你就是需要你来搞定,团队中其他环节的安排都会以你默认可以搞定这个事情为前提去开展,如果出现自己无法搞定而又未能及时反馈到团队,最终造成团队内部消耗,有个几次团队其他人便会认为你完全没有责任心,或者也可以说没有能力,交给你的事情完全搞不定,还不及时跟团队沟通。一来二往,你在团队中会失去队友对你的信任,那么未来不太可能再有什么责任交给你,只会给你一些鸡毛蒜皮的事情。只有你给团队其他人一种踏实可靠的感觉,大家在分配重要任务的时候,才会想到你,就这样,做一个『靠谱』的人很重要。

2. 要有主人翁精神,说白了就是在有责任心之外,还要多管闲事。为什么要多管闲事呢?其实创业团队最主要的一个资源限制就是人员不够,很多配备上是不完善的,那么你作为一个客户端程序员是否就只关注客户端程序的实现呢?当然关注客户端程序的实现是本职工作,一定要踏踏实实做好,做一个『靠谱』的客户端程序员,除此之外,其实还有很多的事情需要你来参与,正所谓『众人拾柴火焰高』啊,你不负责生火,但是你可以捡柴火啊。

  • 产品设计,虽然客户端程序员不需要承担产品设计的工作,但是作为一个用户,你也可以提出自己的看法啊,认为有可以改进的地方,当然需要主动提出来,供大家参考了,不要觉得不好意思,尼玛产品做砸了,你一样也被用户骂,你一样也没有奖金;
  • 服务端架构,虽然你只是个客户端程序,服务器神马的完全看不懂啦,不要给这么多鸭梨好不好啊?好吧,是有点强人所难,可是难道你真的没有想法吗?如果服务器的架构设计完全不考虑与客户端如何通信交互,这难道也可以?好吧,显然不行,那么就把自己能想到的可能出现问题的地方,尽早说出来吧,这样大家才能一起想办法来搞定这些事儿;
  • 团队文化,感觉好高深的样子,其实尼玛你就是团队成员,你也是这个文化的缔造者啊。所谓团队文化,无非就是团队所有成员在做事情的时候形成的一些共识的做事的方式和方法,那么你自己做事情的方式和方法无疑会给整个团队的文化刻上你的印记。那么自己写代码的时候是不是要考虑把方法名起得简单易懂有意义呢,是否每次提交代码的时候需要写清楚此次提交的注释呢,是否在下班的时候要让自己的电脑关机呢,都是些鸡毛蒜皮的小事情,可就是这些小事情会逐渐形成为整个团队独有的风格,随后加入的成员会慢慢融入到这些风格中来的。

公司有很多岗位,每个人负责的事情可能也不一样,这里也只是简单的举了几个例子,其实每个人在做完自己的本职工作之外,有很多的事情都是可以参与进来的,充分发挥自己主人翁的精神,把公司当成自己的公司,珍惜身边的每个人,认真对待每件事情,其实也可以侧面地让自己更有责任感,既然自己已经是公司的主人了,那么还有什么责任承担不了呢,是吧。

如果自己认为自己只需要把自己的事情做好,其他的事情就应该由别人来搞定,这当然没有什么错,但是这个并不适合在创业团队还没有足够的资源配备的情况,确实就是有很多的事情需要你来参与,一起努力。自己搞定自己的一亩三分地之后,事不关己高高挂起,如此这般,团队中其他人慢慢地就会认为你根本没有把这个团队当成自己的团队,慢慢地你就边缘了,慢慢地你就离团队中心越来越远了,最后你就会觉得自己就像是个外人,说话都插不上嘴,自己也不被团队认同了,你说这能是啥好事吗?

 

要开始想些事情了

很多的时候,我们总以为还可以继续天真下去,可是现实会无情而直接地告诉你这不是你想要就能要,尼玛天真就留在那些可以天真的岁月吧。

是时候开始想些事情了,生活不会因为你天真而变得美好。

如何学习编程语言

标题比较大,我自己能写的东西比较少,毕竟自己从学习编程到现在总共也就6~7年的时间,写代码的时间也就4年时间,谈不上有什么非常好的经验,不过这些年来也有一些想法和感触,自己记录一下。

大学期间,学校安排的计算机相关课程中有《计算机基础》《C编程语言》《C++编程语言》《数据结构与算法》《数据库原理与技术》《空间数据库》以及一些计算机编程周边的课程,例如《复变函数》《数值分析》《空间分析》《运筹学》等等。回过头来看看,这些所有课程我的考试成绩貌似都不错,但实际上神马都木有深入学习过,只是为了应付考试,尼玛杯具啊。

在某一次《数据结构与算法》的课上,我们可爱又严厉的王盼成老师(昵称盼盼)在课间跟我们闲聊,语重心长地跟我们讲“做地信的最好能会写程序,这样未来空间会更大一些”,我当时也不知道哪根筋搭错了,然后在下面搭了一句“老师,每个人有每个人的活法,也不是所有人都希望自己成为一个程序猿”,老师听到我说完这句话之后回了一句“我相信每个人有每个人的死法”。在老师说完这句话之后,几秒中之内整个教室都安静了一会儿,然后又该开始上课了,之后的整堂课我都在想这个事情。然后我就开始学习编程了,之前我们学过的《C编程语言》和《C++编程语言》我已经完全交回给老师了,而宿舍中其他的同学在C/C++方面已经有了一些成绩了,出于当时的虚荣也罢不服输也好,我选择了跟宿舍其他同学不同的一条路来学习编程。

我开始学习Java编程语言,没有同学和老师可以请教,但是我有整个图书馆和网络做老师。从那个时候开始,每天都泡在图书馆的阅览室中读各种Java相关的编程书籍,读得很粗糙,但是确实读了不少,每天回到宿舍就开始看一些视频,上JavaEye(先已更名位ITEye)去看各种博客和帖子。那时候看得多,写得少,记得当时毕业找工作的简历上,我写的编程经验中有一句话是“有丰富的Demo经验”。在那个阶段,我接触了Java编程的各个方面,但是每个方面接触得都比较浅显,刚刚踏入编程世界的我,觉得Java编程语言中有太多太多的精彩了。这个阶段,应该算作我开始在编程上入门了。

加入超图之后,一直在做JNI相关的事情,这应该是Java编程世界中的一个非常冷门的方向,当时只有某些做中间件封装的企业会使用该技术来重用之前已有的C/C++类库。我在超图待了一年的时间,写了一些JNI的代码,看了很多JNI封装C/C++ SDK的代码,对JNI也有了一个更全面的认识,但是对于Java编程语言本身并没有更深入的理解。

加入喜讯之后,开始做Android方面的开发,这在当时可真是个热门的方向,在移动互联网被鼓吹到风口浪尖时,Android程序猿也算是非常抢手的资源啊。Android的开发跟普通的J2SE开发没有任何不同的地方,在对Android Framework有了一个完整的认知之后,所有的代码无非也就是逻辑和UI的实现,客户端程序大抵如此。但是在喜讯我已经不再只是一个纯粹写程序实现的了,我需要自己来设计整个程序的结构,如何保证程序能快速响应未来的设计和需求变得更为重要。在喜讯天天、画说和MARK这三个项目中,我开始尝试着做不同的设计尝试,并且尝试着形成自己的编码风格,并在团队内推广。

如今开始做游戏,主要是在Unity3D环境下完成,Unity3D下几乎所有的逻辑和功能代码都是通过C#来完成(当然你也可以通过JavaScript和Boo来实现),在学习C#上障碍相对较小,毕竟大部分的工作并不是跟语言的细节纠结而是完成具体的逻辑和功能,天下万般程序逻辑皆相通,所以也还算较为顺利的开始了Unity3D游戏开发。术业有专攻,每个人擅长的模块都不太一样,在游戏项目中,我主要负责的是网络通信模块,包括HTTP通信和TCP通信模块代码的实现。非常感谢已经有众多程序猿在这些方向上作出了很多的努力并且将其劳动成果分享出来。在这些可爱的人无私分享的前提下,我们可以减少很多的代码工作量,只需要阅读这些优美的代码,理解他们思考和实现的逻辑,在此基础上加入自己的思考,融合自己的逻辑实现即可完成我们需要的功能模块。

从自己开始真正地学习编程到现在,应该有五年有余,在这段时间中我不能说自己编程能力提高得有多么的快多么的高,我只能说通过自己偶尔的横向和纵向跟他人做一个简单的对比,发现自己的不足和找到自己的优势,整体来讲,我肯定不算低效和低能的程序猿,起码能算是一个合格的程序猿,那么我是如何学习的呢?

阅读,在刚刚开始接触编程的时候,阅读了大量的书籍,关于Java编程语言的,关于Java社区流行的各种框架的书籍,网络上很多程序猿们分享的博客文章和编程教程。初期大量的阅读,让我的视野在很早就打开了,不会只局限于某个细小的方向,并且通篇完整地阅读过一本关于Java编程语言的书籍对于我的影响非常大,我当时读的是《Thinking in Java》,通过这本书接触Java也算是一种幸运。通过阅读《Thinking in Java》,我了解了Java语言基础的使用方法,养成了还算不错的编码风格,同时接触到了Java API设计的原则和方法,明白了面向对象编程的概念。之后继续阅读了很多Java社区流行框架的书籍,例如Struts, Spring, Hibernate, Lucene, Tomcat, Heritrix 等等,虽然我对这些我曾经都尝试过编写不少的Demo的框架如今了解很少,也无法使用他们来完成我想做的事情。但是这些阅读让我见识到了编程的美好,让我看到了世界上众多优秀的程序猿他们是如何通过自己的努力改变了众多程序猿的工作方式。与其说我在学习这些框架,不如说我在认识这些框架在Java社区中的生存方式,正是因为这种开放的社区驱动让我对Java编程热情猛增,直至最后毕业选择了做一个程序猿而不是在我上大学之前就一直向往的管理培训生。

社区,阅读Java编程相关的书籍,总会不经意的发现Java社区中众多开源的框架和这些开源框架的开发者都在网络上积极地做一些事情,出于简单的崇拜也好,和更深层次地学习也罢。在学习Java语言前期,我开始尝试泡在各种不同的Java社区中,虽然很多时候我完全不懂别人在聊什么在讨论什么,但是看到别人在讨论某些问题,能让我先有一个认知,然后做很多的扩展阅读,然后时间长了就会发现自己的认识逐渐在提高,慢慢地能看懂别人讨论的问题了,然后偶尔还能发个言,帮助甚大,提升明显。Java社区中,我在JavaEye(现已更名为ITEye),在这个社区回过帖,潜过水,开过博客,写过文章,发过简历。还因为在JavaEye发布简历,途牛网的陈福炜给过我一个电话面试的机会,但是被我很傻逼的给浪费和错过了。社区能让你了解到很多方向的东西,能看到其他的人在关注什么在做什么,以及很多事情别人已有的解决方案,还能认识很多可爱的人。

搜索引擎,程序猿可以不会写Hello World,但是一定要能熟练使用Google,熟练使用Google并不难,但是也不是很简单。简单的输入一段自己的需求文字,奢求Google给你找到一个满意的答案,这个可能性比较小。Good Question 才能有 Good Answer。学会抽象出来自己碰到的问题和需求的关键字,尽量去除修饰词语,然后交给Google就好了,通常Google都能找到你想要的答案。很多时候我们搜索的问题在中文世界中是没有相关内容的,这个时候你就要能将你自己的问题和需求翻译成英文,然后再交给Google了,然后自己通过阅读英文内容来找到答案了,程序猿英文是一定要好的,不论你写什么程序,否则都是扯淡。

文档,不论我们是学习一门新的编程语言还是尝试使用一个新的框架,官方的文档总是最重要的工具和参考。学习Java的时候就需要熟练掌握如何从JDK Help Documention中找到自己需要的东西,学习Android就应该能从Android Developers官方站点上找到想要的知识点内容。这些文档中,不但明确地告诉我们如何去使用API,更会让我们对整体语言和框架形成一个完整的认知,在后续的学习和编码过程中,我们会形成一个非常好的习惯,碰到不确定的问题直接找官方文档,看个究竟之后就能继续了。另外,熟悉API文档的同时也会让我们对整个API的结构有一个非常全面的认知,并且会形成使用API的习惯,当你需要使用一个之前未曾使用过的方法,我们会习惯性的认为某个类有某个方法,直接一试或者直接一查,往往屡试不爽,这能很大程度上节约时间提高效率。关键是熟练掌握API内容能带来的好处在前期做设计和技术预言的时候将会更加显著,很多时候我们在设计一个新功能,该功能需要某些接口来帮助我们完成一些事情,如果这时我们清楚地知道某些API是可用的,某些API是框架或者语言不提供,需要我们自行实现的,马上能辅助我们作出一个合适的判断,包括我们在做整体系统架构和技术选型时,这些都是非常有帮助的。

开源代码,站在巨人的肩膀上,你能看到更多更美的风景。开源的代码,通常都不会难看,通常都是非常优雅的实现,而且有着某个团队或者某人在持续改进的,阅读这些优雅的代码,能让我们学习别人的编码方式,看看别人的思考角度和实现风格。开源代码已经改变了整个世界,Linux系统和基于Linux的Android系统已经是每时每刻在互联网和移动互联网上扮演着台前幕后的重要角色,我们每天都在用的各种应用和网络服务,几乎都不可能离开开源软件和代码的支持。阅读Java API实现的代码,阅读Android Framework和Android Packages的源码,真的学习到了很多的东西,包括形成良好的编程风格。

关注变化,编程技术每天都在进步,每一年都会有一些新鲜的技术和框架出来,保持对新鲜技术的关注和好奇,尝试着去使用他们,如果能接触到源码那就更好,尝试去阅读和改进。不一定要追随所有新的技术潮流,不是说每个新的技术都需要放到项目中来,也不是每个新的技术或框架都能解决你现有的问题。关注新的技术,其实就是关注它究竟解决了什么问题,这个问题是否就是你目前碰到的,如果是的话,那么就可以很好地解决你的问题。关注新的技术,也是关注它究竟是如何解决了这个问题,和我们自己的解决方法相对比一下,两个解决方法的优势和劣势分别在哪儿,尝试着将别人的优点借鉴一下,将自己的解决方案完善了,如果能将我们自己的优势反馈到社区中帮助到更多的人,显然是一件美妙的事情。

分享,与别人分享你的技术成果,总是能让我们收到更大的收获。开源社区就是分享精神和开放精神的最佳形式,每个人都可以将自己好的东西分享出来,不断地来改进已有的东西,然后每个能接触到的人都可以再从中获取到更好的东西。分享能将个人的能量放大,如果社区或团体足够大,那么分享出来的能量将被放大的倍数也会更大,分享的人收到的反馈也会更大。程序猿都是好面子滴,谁尼玛不希望那个被称为牛人的人是自己呢?尝试着跟身边的人分享自己的技术成果吧,尝试着跟更多的人分享自己的技术成果吧,GitHub无疑是一个非常合适的去处,大胆地分享自己的代码吧,不要怕被人嘲笑,每个人提交的patch都是在给我们自己能力打补丁呢,拥抱那些人吧,那些人在你成为牛人的道路上扮演的可是推进式发动机的角色啊。

关注那些先进的生产力和代表先进生产力的人,例如Markdown代表着文档的先进生产力,使用Git管理代码的人代表了先进生产力,使用终端和脚本代替重复性鼠标操作的人代表了先进生产力,那些通过技术改变人们生活的人,他们代表了先进生产力。尝试着去关注这些事物和这些人,看看他们是如何做到的,他们做到这个程度付出了多少,以及他们是如何努力的。争取哪天我们也成为先进生产力的代表,那样岂非很爽,先进生产力(尼玛高中政治就学到了这个词)永远都不会被淘汰的。

聊聊创业

如今来到喜讯已经整整三年了,这三年中经历了很多,也有很多的感想,期间也跟很多的朋友一起沟通过这个事情,有现在依然在喜讯共事的,有离开喜讯的,还有喜讯之外的一些朋友。

创业这个事情,在被各种媒体包装渲染之后,会让人觉得创业才是一个对事业有所想法的人的终极追求,如果能做到连环创业似乎会更被追捧。我并不知道这样的现象是好还是坏,因为在我没有加入创业团队之前,我也是每天看着这些报道,自己也会做创业相关的梦,也正是有这样的梦,我才来到了喜讯。

==== 分割线 ====

2010年5.1劳动节后,刘琪加入了喜讯无限(北京)科技有限责任公司,这里使用公司全称,我想说明的是从我加入公司之前,公司在法律和实质上都已经存在了。刘琪是我的大学室友,毕业之后我们依然是室友,在喜讯之前他在金山软件北京烈火工作室写代码。在他加入到喜讯之后,我那会儿正好在学习Android方面的东西,然后喜讯创业的方向是移动互联网,刚好公司需要有做Android的人,建议我去看看,在我一番矫情之后,请了半天的假去做了一个简单的面试,面试过程中老大和阿甘分别跟我聊了不久,老大就跟我聊了一些关于自己职业的想法(我记得当时说我三年到五年的目标是成为一个产品经理,那个时候产品经理还不是一个每个用微博和微信的用户嘴里的名词),老大追问了几句关于我关于产品经理所需要的素质和所需要做的事情,然后就聊开始聊了一些人生和编程的事情,因为老大曾经也是程序猿,所以就编程这个事情展开聊了不少,不过并不涉及实际的技术问题。之后是阿甘跟我聊,聊得最多的就是关于Android如何基于Linux通过Java将各种接口暴露给上层应用开发者,恰好这是我在超图一直做的方向JNI,所以聊得也还算顺畅。不过直到今天,我依然不知道我在阿甘那儿有木有过技术关。聊完之后,老大到电梯间我们聊天的地方,拍着我的肩膀说了句“兄弟,以后就看你的了。”。我就算是通过面试了,随时可以过来上班。

回到超图,花了半个月的时间办离职交接,期间也跟很多同事领导都沟通过关于离职这个事情,由于自己性格上的一些特点,在公司待的一年时间里,我除了自己本职工作之外,还做了几件可能让别人认识我的事情,就是参加公司每年的技术大会作为后勤保障组人员协助处理了很多琐碎的事情,包括布置会场,整理礼品,准备午餐等等;参加公司元旦晚会演出,并出演了一个哑剧的主角,获得第三名;参加研发中心组织的运动会并担任了总裁判。为什么要在谈创业的文章中描述这么多在之前公司的一些事情,貌似还故意搞得自己蛮牛逼的,为何捏?其实我只是想表达我之前在超图过得还算不错,有人缘,能干活,分内分外的都做得不错,有人愿意留下我。那么为什么我选择了离职呢?

这真的是一个非常非常好的问题,因为在我到喜讯之后的三年里,我也会不时地问自己,为何在那个时候选择里离职,而且选择了继续留在北京加入喜讯创业。回答这个问题还需要另一个背景,那就是在我打算离开超图之前我并没有打算留在北京继续工作,我非常希望能回到南方的某个城市,特别是能去杭州加入一个创业团队,特别是想加入虾米网这个团队,我在打算离开超图之时也确实向虾米网投递了一份比较煽情和二逼的简历,他们木有人屌我。

现在可以开始回到我选择离职加入喜讯的问题了,这个问题分两部分,第一部分,我为何离职,第二部分,我为何加入喜讯。

第一,在超图待了一年的时间,在这一年里我掌握了如何使用JNI技术来包装由底层类库组的同事们写的各种C/C++接口,通过Java层再将接口暴露给最终的SuperMap Objects for Java SDK用户。在这一年中,我学会了如何做事情,学会了如何与其他同事沟通,学会了如何写各种报告,开始学会了如何做一些简单的模块设计,这里需要感谢我之前的同事和组长。但是,我从他们身上,看到了不久之后的我,我想如果我继续在这里待下去,三年之后,五年之后我就是他们现在的这个样子,即便我比他们更努力,比他们更有智慧也罢更有运气也罢,情况应该相差不大。我无法接受在三年之后或者五年之后跟我之前的组长和同事是同样的状态,这个话我记得我在离职的时候跟我的组长沟通过,这并不是说我非常看不起他现在的状态或者鄙视对方的能力和成绩,我只是不希望成为那样。每个人都可以有每个人的选择,尊重他人的选择,做好自己的选择就好。那么如何改变我当时的状态呢,尽量让自己不要成为我不希望成为的那种状态呢?当然最直接的方式是离开,可是离开不能解决问题,离开只能帮助我不在超图变成那种状态,我也许会在另一个地方变成那种状态。因为我一直有阅读各种科技博客和技术博客的习惯,所以我会接触了一些关于创业公司文化的话题和文章,在我刚刚毕业一年的时间点上,对于各种创业的新闻报道足以对我的判断造成影响,我会直接地认为创业团队必然文化会宽松自由,每个人都可以畅所欲言,而且创业团队里头必然个个都是精英,如果我加入创业团队,假以时日我也会成为精英中的一员,因为我并不比别人笨,我也不比别人懒。抱着这个念头,我希望离开超图,加入一个创业团队,首先我选择向虾米投出了我唯一一份简历,结果是没有任何结果。

第二,在我有离职的想法之时,刘琪同学,我多年的好基友从金山烈火工作室离开了,加入了喜讯,开始创业。刘思家,我多年的好基友,在从超图离职后(他在超图时与我同组,我们背靠背坐着)加入金山烈火工作室后,在金山烈火工作室解散后,随部分人加入珠海西山居工作室,离开北京了。在刘琪入职喜讯之后,我们有过多次的沟通,多次沟通的过程中,刘琪对我传达了关于我们老大的很多信息,我觉得这个老大人相当靠谱,属于实干型和理想主义者,跟我个人风格非常像。我甚至自己有的时候都萌生过,妈的要是我也能加入该多好。可是那个时候,喜讯刚刚组建,所有人的研发重心还在Symbian智能手机上,我个人的技术背景中没有可匹配的地方。那个时候,刚刚好我开始真正接触Android开发,其实最早接触Android SDK时,我们还在中南大学南校区13-225住着,那个时候泡JavaEye(如今已经更名为ItEye)时关注过一段时间LordHong这个哥们的兴趣点,在那个时候接触过一些Android SDK的东西,但是没有真正做过一行代码的开发。说起这个事情,我觉得很有意思,直到我在2010年再次接触Android开发时,我才明白为何08年我折腾Android SDK时,那个模拟器一直在那儿启动,启动了5分钟以上都没有进入系统,那是因为我的机器真的是很烂,那个时候的模拟器效率也真的是很低,如果我尝试等了半个小时,也许我做研发的路线还真会有些不一样了。回到正题,在我投递简历给虾米之后,我已经打算提出离职了,但是还没有正式提出离职时,刘琪跟我聊到喜讯也正打算在Android上面做些事情了,然后他跟老大聊起过我,说让我过去聊聊。那个时候我不知是出于神马原因,竟然非常作地跟刘琪打起了官腔,说我都没有打算和考虑过这个事情,还不知道怎么跟公司这边请假,记得当时刘琪很气愤地说了一些话,大体的意思是“人家一个大Boss都愿意腾出时间来见你,你就请个假那么难吗?我都跟我们老大说好了。”其实,我当时一是没有底气,二是有点埋怨刘琪在跟老大沟通之前没有跟我说明事情,认定我非常想加入喜讯,其实那个时候我是有一点这个想法,但是并没有那么强烈。在被刘琪数落了一番之后,我也就想管他呢,去就去吧。第二天请假就去了,然后就发生了上面聊的关于面试的一些事情。但是这个还没有谈到,我为什么会加入喜讯,那么为什么呢?

首先,我认为创业会给我带来巨大的财富,这是我加入创业团队之前在各种新闻报道中所获得的一些认知,那时候我认为我只能加入一个创业团队,期待创业大成之后,获得巨大的物质财富。

其次,我认为老大是个靠谱的头,有可能带着我们这帮人取得不错的成绩。

第三,能加入一个新兴的行业做一些更有挑战的事情,让我有一些兴奋,而且团队的感觉还算比较好。

最后,在我想离职加入创业团队时,喜讯刚好出现了,我想这样算是缘分。

那么对于我加入喜讯是否就顺理成章了呢?其实并不是这样的,我在大学毕业找工作时做过一次决定,没有跟任何人沟通过,那么就是加入超图。工作后,加入喜讯又是在没有跟任何人沟通过的情况下作出的决定。这两个决定都是在我没有跟父母、朋友以及我的女友沟通的情况下作出的。我的父母在我上高中之后从未干扰过我做任何决定,至于我来北京工作,二老并没有任何的不愿意,只是会觉得孩子离家太远了,我女友只是觉得我并没有再去争取其他可能更好的工作机会,而只是得过且过见好就收,并没有在求职这个事情上做很大的努力。关于我来到北京工作之后,其实跟父母以及女友都有过多次沟通,都明确地表示过自己会离开北京,不会在北京待太久,很有可能会去杭州就业,女友和父母也都蛮支持这个想法,女友都想好了毕业之后如何去杭州就业的事情(那时她还在学校读研究生)。在我不告知他们的情况下,我又作出了人生中很重要的一个决定,就是留在北京加入一个创业团队,在当时还是蛮纠结的,包括跟我的父母和女后沟通都费了很长的时间和很多的精力,甚至都发生过一些冲突。但是最终大家都接受了,我的女友现在也来北京就业了。

就这样,我正式加入喜讯开始了创业。但是实际上,那个时候的我,并不知道什么是创业,只是跟着别人在做一些事情。三年的时间里,我能明显感受到自己身上的变化。

刚刚进入喜讯,开始做小游戏,身上有着很多奇怪的小毛病,自己碰到的问题放在那儿,期望着有别人来解决。WTF,这尼玛是神马情况啊?我也不知道,我害得我们老大跟我一起在那儿调试Bug,直到凌晨4点,我们老大的心脏不太好,那天旁边陪着我们一起加班的同事发现老大脸色不对才建议说今天先回去吧。

喜讯的初创团队大部分都是之前从烈火工作室出来的,我是第一个从外面招聘进来的人,我是第一个有试用期的员工,对于这一点,在那个时间点,我很不爽,我非常想向老大证明,我并不比别人差,我能做得比其他人更好。在我成功克服了,上面我说到的将自己置身事外的毛病之后,我开始喜欢去搞定各种问题了,而且通过产品(喜讯天天)在不断地向喜讯所有的同事们证明我是可以的,我想我做到了,我也得到了大家的认可,这让我开始有了一些主人翁的快感。

当我接触更大的项目(画说和MARK)之时,我已经开始可以参与一些系统和产品的设计了,这个时候我开始觉得我在主宰和推动一些事情了,我的责任更大了。当产品推出之后,接触到最终的用户之时,跟用户之间的沟通,会让我清楚地明白,这是我在做的产品,用户会将情绪直接表达出来,其中会有一些赞美和肯定,不过吐槽和谩骂也不会少。因为你知道的,当一个人被惹恼的时候,他更愿意告诉你他的感受。在跟用户通过Email,站内信和电话沟通的过程中,我需要直接代表公司,代表我们的开发团队。这个时候,我明白了这个世界上没有什么问题是用户的问题,尼玛用户碰到的所有问题都是我的问题,如果我们没有能力解决用户碰到的问题,那么我们就会被淘汰,因为会有其他的人和团队愿意来解决用户的问题。所以不要说“在我这里是好的啊”“没有问题啊”类似的话,根本毫无意义,我们要跟我们的用户去解释“这是您机器显卡型号不支持的原因”吗?靠,如果你知道是这个问题,为何不在产品中做一个特殊处理,这个版本没有解决,那么下个更新尽快解决。跟直接用户直接地沟通,让我体会到了我对于用户的价值,我能解决他们的什么问题,更让我明白了我在公司中的角色,我需要在公司中解决哪个环节的问题,这样我们的公司我们的团队才能走得更远走得更好。

当项目开始需要加入新的人手之时,我开始需要学会面试,招聘和培养新的伙伴了。首先我需要承认的是,我在喜讯三年,带过三个伙伴一起做事情,但是目前三个伙伴均已离开喜讯,其中不乏我的影响。所以,我可以说在这个事情上,我让公司损失很大,我们花费了不少的精力和财力来培养这些伙伴,但是他们未能跟我们一起走下去,我很惭愧,我可以认为我首先对不起公司,对不起现在还在公司的所有伙伴们,同样我也对不起那些已经离开的伙伴们。在创业团队中,选择伙伴非常重要,不只是需要选择能跟自己共事的伙伴,跟需要能跟公司一起走下去的伙伴。在做出选择之后,更是要做恰当的引导,否则对于每个人都是伤害。

当公司战略方向发生改变时,并且与我个人兴趣出现不匹配时,我要如何做判断和选择就更加重要了。喜讯之前定位的是要做社区,要做移动互联网上的社区。对于做应用和社区,我个人一直都有非常浓厚的兴趣,这也是我在之前的喜讯天天、画说和MARK中能找到自己位置的重要原因。而对于游戏,我个人一直都不是很感冒,甚至都会有排斥。前几天跟刘琪一起吃饭,刘琪还说我曾经说过“如果喜讯最终要做游戏,我就会选择离开”,如今喜讯开始做游戏了,我没有离开,而他已经离开一年多了。为什么我没有离开?我之前说过的话是否就跟放屁一样?当然可以这么认为,不过显然我自己不是这么想的。当我在喜讯已经待了三年之多,跟所有的同事合作得相当顺畅之时,我显然不会轻易选择离开,这是关于一个舒适领域的问题,也就是说我目前在喜讯整体的环境中,我生活得非常自在我不会轻易作出离开这样的决定。另外一个,从技术和兴趣角度上来讲,游戏一直离我很远,但是公司整体团队的基因其实是做游戏的(烈火是金山的一个游戏工作室),那么公司整体转向做游戏其实也是一件蛮靠谱的事情,另外从自己待惯了的技术领域跳出来进入到一个并不熟知的领域,虽然会有不舒适的感觉,但是对于我个人的成长来讲其实是非常有帮助的。很多人说三年是一个坎,五年是一个坎,我已经过到第四年了,目前看来还算正常,但是还需要更大的挑战更多的磨练,恰好进入到一个自己不熟悉的领域中是一个很大的挑战,同时成为游戏项目的经理更是对于我个人在管理项目和团队上是一个前所未有的挑战。以前,我一个人冲锋陷阵,最多就带上一两个伙伴一起,而且是在自己熟悉的阵地,打得还算从容,虽然没有大成绩,但是起码自己不发慌,现在不一样了,情况更复杂,团队人员数目也更多,需要跟更多的人沟通,关键是自己对于核心的技术和模块没有任何认知,心里首先就会有个疙瘩在那儿。不过这恰恰是我现在需要去解决的问题,公司未来能否成长得更快更好,就是取决于我们这些在做具体事情的人,每个人都能成为精英,公司才能顺利地走下去。

所以公司战略发生改变并不会对我个人的判断产生影响,而且因为我需要承担得更多,我也希望自己承担得更多,我选择必须迎头赶上。在公司战略方向改变的过程中,如果我们过多地顾及个人情绪和兴趣,那么留给我们的只能是失望,因为大船已经掉头往其他方向航行,我们如果继续坚持不跟随作出改变,带来的只能是负作用,对个人对团队都是如此。

加入喜讯创业已经有三年时间了,三年时间里经历了不少,成绩不多。明白了一些事情,也错过了一些事情。

有一个靠谱的团队,执行力过硬,具体做什么事情和什么方向相对而言已经不是那么重要了。

一个靠谱的点子(不论是否新颖独创),其实对于创业团队来讲只是最基本条件,决定性作用根本不在点子的好坏,在于能否执行下去。

创业团队的文化,会有前期创业团队成员深刻的烙印,当然这些前期团队成员必须承担得足够多,否则影响力和其加入团队时长没有任何正相关的关系。

初创企业的人胜过一切,不要试图通过理想或者物质来煽动你的伙伴,摆事实讲规划做执行,让伙伴看到过程和结果。

创业过程中,我们肯定会错过很多的好机会和好点子,不要后悔自己当初的判断,如果想不后悔,那么从下一个机会或点子开始,一定要努力抓住,通过你的双手去抓住,而不是通过你的嘴去抓住。

 

==== 分割线 ====

当我跟我的伙伴们早上跟同在一栋大楼里上班的人一起乘坐电梯的时候,我们多次听到类似“还有三分钟,今天肯定不会迟到”“8点31分不算迟到”类似的话,当我们从电梯出来之后会心一笑时,我觉得在喜讯我们已经做好了一些事情,我们正在往正确的路上走,我喜欢这种感觉,我的伙伴同样喜欢这种感觉,我想这就足够我兴奋一段时间了。