17611538698
webmaster@21cto.com

工作6年,半路出家到CTO

资讯 0 2183 2017-08-28 12:01:56
cto_2_58d53c4c17c4d.jpg

1   前言
 
长文预警, 本文讲述了一个非科班出身的大学生,如何摆脱迷茫,怎么确定目标,努力奋斗,从挫折中不断成长, 最后成为CTO的故事。 耐心阅读,必有所得。
 
文章的主人公是石中玉,2011年毕业于二线城市的普通高校, 数学系下属的信息与计算机科学专业。
 
有六年的软件行业从业经验, 先后在二线和一线城市参加过多个大中型项目的开发工作, 目前创业中,在公司的职位是CTO, 主要负责公司的核心技术研发和管理工作。
 
六年时间,从一个门外汉成长为CTO, 石中玉的发展经历对大家有极大的借鉴作用。
 
下文以第一人称口述。

 2   大学时代的迷茫
 
刚上大学的时候, 没了高中时代的忙碌和快节奏,没课的时候可以睡到饿的不行才起床。大家可以有大把的时间玩自己想玩的游戏,去自己想去的城市,更重要的是可以没人管的谈恋爱了。
 
但是我内心深处却笼罩着“迷茫”的乌云, 这些迷茫包括:
1)我为什么要上大学?
2)我现在学的知识到底有什么用,怎么用?
3)我将来毕业后要从事什么工作?
4)我应该学点什么技能,才能不向别人那样,毕业即失业?
。。。。。
 
这团乌云一直无法消散,也没有人能够给我们拨开乌云。为此我请教了很多的学长,老师,前辈,可是结果却是发现他们跟我一样也很迷茫,也不知道如何解决我们的问题。唯一得到的比较好的建议就是:珍惜时光,多读书,多学点技术。
 
于是我没事就会泡在图书馆,看各种各样的书,不限种类,不限题材,疯狂地看了很长一段时间的书。看了很多名人大家的传记,对于我的迷茫我有了这么几点感悟。
 
1)Just do it!
2) 不要急于满口袋,先要满脑袋,满脑袋的人最终也会满口袋 《王选传》
3) 在已经建立起来的学科领域之间的空白区上,最容易取得丰硕的成果.《王选传》
4) 我要去从事充满创造性的,富有挑战性和变化的工作,而计算机软件开发正好是这样的一个工作。
 
3   半路出家跨入计算机行业
 
我所学的专业是信息与计算科学,听起来好像是计算机系的,其实这个专业是数学系下设的一个专业,我们学习了大量的数学课程,计算机课程相对很少。这样说起来我也属于半路出家从而进入计算机的世界的,相信很多人是和我一样的,并非计算机科班出身,而是靠自己的摸索和学习,正努力跨入软件开发行业的。
 
当然这个过程是非常苦逼的, 为了学习计算机相关的知识,我花费了相当多的心思,主要通过如下几个途径进行学习:
 
1)认识了学校计算机系的朋友, 使用朋友的账号登录计算机系的ftp服务器,学习上面Java相关课程。 用记事本敲了很多代码,在命令行里执行, 但是时间长了,还是不知道到Java 有什么用处。
 
2)图书馆翻阅大量的计算机相关书籍
了解到Java可以做客户端, 做GUI开发,自己就琢磨着做一些简单的带界面的程序。 但是感觉不够刺激,不像玩游戏界面酷炫,比较苦恼。
 
3)去计算机系旁听计算机相关课程, 结果被鄙视
 
4)通过网络搜索,论坛,QQ群向同行请教。不知道怎么问题,再次被鄙视。
 
(码农翻身老刘点评: 知道自己需要什么,不怕鄙视努力朝目标挺进, 有多少人能做到呢?)
 
4   第一个项目
 
经过半年时间的摸索,我终于明白编程是怎么回事,也终于意识到自己已经开始入门了,可以做一些项目了。
 
大二的时候,有了一个机会 , 帮老师的一个朋友开发一个物料管理系统, 自己花了很大的心思去做,踩了很多坑,比如数据库设计, 自己没搞过,结果表结构设计的很不合理。
 
后来在网站找到了一个叫做VB的语言和Access数据库, 拖拖拽拽就可以完成一个简单的程序。当时遇到问题的时候在论坛问, 刚开始的时候非常悲催, 连自己的问题都描述不不出来,被人鄙视。
 
后来有个好心的前辈终于理解了我的问题, 帮着做了一个原型,告诉我之前的数据库那些地方设计的不合理,应该去看哪些书学习。
 
经过种种努力,还是把这个小项目给搞定了, 客户很满意,说这个小伙子可以, 好好努力吧,以后在软件方面应该会有成就。我当时受到了很大的鼓舞,收获了巨大的信心。
 
(码农翻身老刘点评: 抓住机会,努力学习、求教,最终完成项目,获得表扬, 这是典型的正反馈。 在大学期间,如果有志于在软件行业发展的同学, 都应该争取获得这样的经历。)
 
5  第一次求职
 
第一次求职是Java工程师, 笔试做得很好,应该是前几名。复试的时候有了如下的对话。 现在回想起来觉得当时自己挺狂的。
 
面试官:说说mysql数据库和Oracle数据库的区别?
我:(面试前表示看过背的很熟),表示回答的很溜。
 
面试官:看简历你不是学计算机专业的,说说你跟计算机专业的人比有什么优势?
我:1)我本科期间学了很多的数学课,逻辑思考能力要比学计算机的强很多。
2)我跟他们都一样,大学期间学了很多理论,缺乏项目实战,这点大家都差不多。
3)数学那么难学的科目,我都能搞定,同时我的计算机基础也不比他们差,在学习能力上我比他们要强,只要你给我时间,我一定能超过他们。
 
很幸运的是,我还真的被这家公司顺利录取了,进入了这家公司实习,毕业后顺利留在这家公司,并且在这里工作也非常开心,在这个公司的工作经历,让我成为了一个职业的开发者,在行业里面叫:软件开发工程师。
 
 6   职业发展的困惑
 
随着工作时间的推进,我渐渐的了解了这个行业的现状和开发流程,慢慢的就遇到职业发展的困惑和瓶颈。
 
尤其是工作了三年以后, 当前的工作能给你带来的技术提升已经非常有限了, 每天都是增删改查, 说得难听一点, 就是搬砖。  
 
我从我的上司和领导的身上能够看到五年或者十年后的我的样子,而他们的职位和工作不是我想要的,我希望我能够有更大的成长和更高的平台,于是在思考再三之后选择了离职。
 
当时VR, 虚拟现实等技术很火热, 我也很感兴趣, 想着玩玩这些项目应该是很有意思的, 正好之前认识的前辈和我联系,说来深圳吧,我们一块儿折腾点项目。
 
我放弃了已经趋于安稳的工作,和未来可能会很顺利的职位晋升机会,选择了前往大城市,面对一个更加陌生和复杂的环境,去历练自己。
 
7 一年顶三年:疯狂的历练
 
到了深圳,见到了一直想一起工作的前辈,在前辈的指导下很快的我又开始了新的工作。
 
深圳和我原来所在的城市最大的不同之处就在于,这个城市的快节奏,高效率。人们可以为了完成一个工作,而通宵加班,甚至连续工作几天几夜,这些在此前是不可想象的。
 
我发现前辈主要用 PHP,  因为他做的项目是短期、快速的项目, Java这么重型的语言不太合适。 所以我也只好去学PHP, 后来就发现,PHP真是一门神奇的语言,很高效,一个晚上就可以搞定一个项目。
 
前辈的思路就是把我这个不会游泳的人扔到海里去游泳, 我不会PHP, 他直接扔给我一个项目,说不会的话马上自学, 自学搞不定就来问我。
 
我觉得非常苦逼, 本来想着周日去给客户部署,上线, 可是周六的时候我还没什么进展。
 
到周六晚上的时候前辈跑来问我:你这个项目搞得怎么样了。 
我说:我还是啥都不会,搞不定。 
 
他说:没事, 来,我给你说说怎么做。
 
然后他就坐下开工,啪啪啪敲键盘,开发了一个通宵。
等到第二天旭日东升的时候, 那个项目刚好完成。 
 
然后就坐着地铁到客户那里交付,给客户讲怎么使用。 
 
当时我就感慨前辈能力太强了,包容心太强了,别的领导看到你完不成就批评你,或者辞掉你。而他则是通过超强的能力展示一个程序员应该是什么样子。 
 
项目交付以后,我们在深圳的茶餐厅边吃边聊,他给我讲了很多过去的经历。我下定决心跟着他多学技术。 
 
跟了前辈一年,一起见客户,定需求,讨论技术,交付项目,讨论公司的未来,学到了非常多的东西,让我的技术得到了很大的磨练和提升。  
 
但是也非常辛苦,一年内基本上没有周六周日,除了吃饭、休息就是工作,相当地疯狂,我觉得我这一年的疯狂也许能顶上别人三年的积累。 
 
很可惜的是,我们一直没有想清楚公司的未来要做成什么样子,而他一直希望自己能够不断的经历一些项目,通过这些项目,养活公司,锻炼自己,成就别人的梦想,同时让自己生存下来。
 
而当时的我渐渐的厌倦了这种一直不断的帮别人做项目,而自己的公司却没有自己主打的核心产品,没有核心产品,就没有品牌,就无法稳定持续的盈利。
 
这段时间的磨练可以总结为下面两点:
1)快速的学习能力。
因为我可能一周就要完成一个小项目,并且交付,而这个项目没有其他人协助,全部由我一个人前端,后台,数据库设计,都由我一个人独立完成,真正的全栈工程师。
 
2)高效沟通,高效工作。
原来的工作因为是研发公司自己的产品,因此在项目计划上都会给予充分的时间,允许我们拖拉,或者开小差的完成工作。
而在深圳这些都不可以,并且有问题要非常准确及时的跟相关的人沟通清楚,确定解决方案,并且尽可能在最短的时间内完成工作,正是因为这些项目的锻炼,让我养成了时间管理和高效工作的习惯。
 
(码农翻身老刘点评:初入职场的前三年有可能会决定你的一辈子,这三年的积累和养成的习惯会深深的在你身上形成烙印。趁着身体年轻,完全可以疯狂一把) 

8  失败的第一次创业
 
在15年初的时候,我做了工作交接,和前辈告别, 加入了深圳的另一个创业团队,这个项目让我真正的明白了创业是怎么回事。
 
当时碰巧赶上了国内的创业热潮,总理在中关村的一个咖啡店里喝了一杯咖啡,里边有很多泡沫, 这其实就暗喻了当时创业的情景。
 
资本像疯了一样投入到创业的圈子之中,整个社会都在鼓励大家出来创业。如果当时你正在一家公司里老老实实的上班,你的朋友就会用一种奇怪的眼神看着你,你看XXX都出来创业了,你的梦想哪里去了?你就不出来创个业?
 
可见当时的创业者是多么的疯狂,资本又是多么的热,XX项目拿到了几百万融资;XX项目已经被XX重金收购。在创业的圈子里,不断的发酵,激励着每一个创业者,没日没夜的研发自己的项目,并快速的投入市场,并迅速迭代,获取数据,去路演,去找投资人。
 
我加入的这个初创团队,就是在这样疯狂的环境里,这个项目主要是致力于家电后市场的一个整体解决方案,我们希望通过互联网的手段,可以为每一个家庭的家电提供从维修,保养,回收,更换的整体解决方案。
 
家电后市场是一个有着万亿规模的市场,现状就是脏乱差,乱收费,没有标准化,并且没有巨头存在。而这个项目就是致力于改善这种服务的现状,希望整个行业能够在互联网和品牌的帮助下,提升服务质量,提高行业效率。看似是一个很不错的项目,有市场,有价值,也确实解决了这个社会存在已久的一个大问题。
 
模式是O2O模式,平台通过小区推广的方式,直达业主,业主通过微信下单,系统根据业主所在的小区位置,匹配附近作业的师傅,上门服务。服务完毕后,业主对师傅的服务进行评价。完成整个交易和服务的闭环。
 
不知道大家现在对这个行业或者这个项目怎么看,我相信很多人依旧会觉得这个项目不错啊,可以搞啊,然而我想告诉大家的是,这个项目我们却没有能够顺利的做下去,失败的原因这里我反思了几点:
 
1)O2O项目成败的核心在于频次,频次低,获客成本高,这种项目回本的周期就会比较长。
 
2)O2O项目在相当长一段时间内,都需要快速占领市场,占领用户心智,获取尽可能多的运营数据。因此不烧钱是不可能的,而我们团队的钱有限,经不起烧,我们也没有在关键节点上,跟投资人达成共识,导致融资一再受挫,最后不得不终止,团队解散。
 
3)团队成员不稳定。因为是初创企业,团队成员会因为公司无法开出合适的薪水而选择跳槽或者离职,严重影响公司的正常运营。
 
4)资本只会锦上添花,不会雪中送炭。情怀和梦想在资本面前一文不值,资本是逐利的,只会向着有巨大市场潜力和未来价值的方向去。
 
经过这次项目的失败,把我的积蓄也花得差不多了。 当然我对创业有了更深刻的认识,也充分的认识到一个企业尤其是一个初创企业,生存和稳定是多么的重要。这也是为什么后边我回到家乡省城以后,一直跟我的合伙人强调一定要先生存再发展,想清楚了再决策行动,要避免盲目烧钱。

9  重装上阵,再次创业
 
深圳的创业项目失败后,受朋友再三的邀请我决定放弃深圳其他项目的机会,回省城家乡开始新的创业项目,新的项目还是是一个O2O项目。
 
这次致力于户外亲子活动,主要解决孩子周末或者假期闲暇时光如何度过的问题。
 
这个项目相对于家电维修而言就高频了许多,并且这个项目已经在地市试运营了半年时间,运营数据非常漂亮,也深受家长的欢迎。并且也有投资人有投资意向,愿意投资这个项目向全国扩张。
 
我加入团队后,对项目进行了重构,重新开发了一套系统,并且在一个月内就顺利上线,进行推广。在运营了三个月后,我们决定放弃这个项目而重新调整方向,放弃的原因如下:
 
1)跟投资人的谈判决裂,投资人放弃投资。决定自己烧钱,推广。
2)O2O项目的获客成本居高不下。一直在消耗公司的钱,而成效甚微。
3)亲子活动是一个周频次的,客单价低,人力成本高的项目,利润空间有限。
4)公司人员能力和积淀有限,无法持续输出高质量的优质活动方案。
5)公司的原有启动资金,基本消耗完毕,已经面临着生存困境。
 
基于以上几点,我们决定放弃这个项目,选择能够让公司生存下去的项目,后续再考虑这个项目的运营。于是综合了创始人的资源和积累,我门定下了几个原则:
 
1)做我们能做的事,我们熟悉的领域。
2)利用互联网手段,做远离互联网的事。
3)做能挣钱的事,让我们能够生存的事。
 
根据这几个原则,我们找到了我们能做的教育培训行业,这个行业远离互联网,我们很熟悉,并且这个行业的现金流很好。痛点很明显:很多机构或学校没有信息化,不知道如何利用互联网的手段进行招生。
 
于是我们做了几个行业调研的情况,迅速调整方向,开发了适合培训机构行业的信息化管理系统,该系统主要解决如下几个问题:
 
1) 为机构提供微官网。可以让其他人在网络上了解机构的情况和如何联系机构,找到机构。
 
2)家校沟通。通过微信公众号,老师可以将孩子在学校的作业,表现情况进行发布,家长可以通过家校沟通功能进行查看,了解。并且沉淀了学校的信息,便于后续做分析研究。
 
3)营销工具。主要解决学校招生难的问题,借助移动互联网和微信的社交生态系统,快速传播,收集意向客户的联系电话。进行电话回访,试听转化。
 
经过以上的转变和调整,公司非常顺利的把产品推向了市场,并且收到了很多学校的反馈,用户量在16年的时候达到了数百家。公司也实现了盈利,解决了我们的生存的问题。
 
随着微信热度的下降,和微信营销的泛滥,我们的产品热度也开始下降,不过幸运的是,我们已经找到了新的方向,新的业务已经顺利开展。

 10  创业经验总结
 
一路走来,我踩了不少的坑, 总结下我对于创业的几点看法,希望对大家有所帮助:
 
1)创业其实是一门生意,所以一定要考虑赚钱,不赚钱的创业就是耍流氓。
 
2)选择自己熟悉和擅长的领域,而这个领域确实需要改变,并且有巨大的商业价值。
 
3)尽量避开和巨头之间的竞争,选择垂直的细分领域,做出特色,做出不同。
 
4)找到适合自己的合作伙伴,明确团队之间的分工和利益分配,确保团队的稳定。
 
5)大胆、高效的去尝试,去试错,快速的决策,高效的执行,用迭代的思路去创业。
 
6)避免大而全,而是选择某个单点,专注这个点做到极致,做出壁垒。讲好故事,再必要的时候借助资本的力量,去让自己的项目能够快速的占领市场,形成市场垄断,不给后来者争抢的机会。


 11   送给初入职场的你
 
1)请热爱你的工作,用认真的态度去做好每一件小事。
 
2)三人行必有我师,多向你身边的人请教学习,对待技术要诚实,不会就一定要有“不要脸”的精神去问清楚,搞明白。
 
3)高效工作。如果是技术不够熟练,就多投入时间练习,达到熟练,对于能够半个小时完成的的工作,就不要拖延花费更多的时间,高效率的去工作,去出色的完成任务。
 
4)高效沟通。在软件开发领域,团队沟通和协作是非常关键的,所以一定要能够清晰的表达自己的观点或者遇到的问题,这样才能够保证团队的信息能够流畅的上传下达。
 
5)积极反馈。要及时的向你的上司反馈你当前的工作进度和遇到的困难,让你的领导知道你的工作进展,便于他做决策。
 
6)关注前沿技术,不断丰富自己的技术栈。
 
7)关注开源,关注相关社区。多与人分享,交流技术。
 
8)养成写博客,做总结的好习惯。坚持下去,一定会有很大的成效。
 
(完)


来源:码农翻身
作者:石中玉


评论