现在的位置: 首页 > 传统文化 > 官场·职场 > 正文

软件之路:一个程序员的6年工作历程与感悟

2013-08-02 00:05 官场·职场 ⁄ 共 7964字 ⁄ 字号 暂无评论

写作背景:自己这两天反思自己的能力、性格和现状,迷茫,因此总结自己过去走过的路,最重要的是存在的问题和原因,因为迷茫,因为目标不够明确,造就了现在的自己,面对未来,自己要做哪些改变?因为时间关系,本文只是简单描述工作的经历过程,期间发生的一些事情、生活环境、心情变化等都未做描写,只是想通过书写文字的方式让自己有些许思考和感受

相关阅读

----新手必看:一个程序员的十年编程之路

把时钟拨回到2007年的夏天,大学毕业。那时非常迷茫,不知道自己能做什么,想做什么,对工作有一种期待和憧憬,只是觉得计算机、网络有关的职位都可以投递简历。

第一份工作

2007年5月12日(历史惊人的巧合,没想到6年后的今天写下了这篇回忆文章),南下广州,开始找工作。或许,因为运气好、加上笔试不错、人也比较老实,第一份工作敲定了,任职于一家教育培训机构公司网络部,主要工作内容为web网站开发,算是自己的入行职位。

经过大概半年的努力,自己表现出来的专业能力、勤奋、以及奉献精神,得到了部门经理的认可。自己在人才招聘方面、组员工作安排方面也能参与发表一些意见和想法。同时,经过半年左右的工作学习,对该职位所需要的专业知识和技术能力都基本掌握,自己也能比较快的解决遇到的问题。工作内容变的比较多、杂,开发web网站、公司内部管理系统、电脑网络维护、网站客服、等等,除了自学,无法接触到更专业方面的东西。

2008年上旬,自己萌生去意,主要原因是公司不是专业的公司,无法在技术上再提升,薪水也较低(1500),最终在2008年5月离职,第一份工作结束, 工作时间一年多几天。

总结第一份工作,自己的收获是从学生到工作的角色转变,入行了,了解到工作是什么样子了,技术能力上也有一些成长

第二份工作

因为对第一份工作怀着特别深的感情,自己没有在职先去投简历应聘,坚持用心上班到最后一天。离职后,开始考虑找下一份工作问题。当时自己想到三个职位,按优先级排为:软件测试、web网站开发、flash开发。其中软件测试是觉得测试是该职位未来比较靠经验、比较热门的职业,而flash开发则是因为在上一份工作中独自完成了的一个小游戏。投了不少简历和参与不少面试,软件测试和web开发职位求职并不顺利。最终,6月底面试一个flash开发职位成功

2008年,我们都知道,这是网页游戏开始爆发式成长的一年,各类网页游戏公司如雨后春笋搬的创立,游戏产品遍地开花。市场上对flash开发人员需求急剧增大,给flash开发者们带来了无限的机会。正是在这个浪潮下,自己走上了游戏开发之路,这也是之前自己未曾料想到的。

回到刚才所说面试成功了一个flash开发职位,当时是一家香港公司外设广州的开发部门,要求使用AS3负责小游戏的开发,因为之前没有使用过AS3,所以做这份工作对自己来说压力非常巨大。正是这份意外的flash开发工作,让自己成为了flash开发程序员。这份工作只做了两个月,主要原因是团队散漫,自己与同事们没有太多交流,做的不快乐。正好有了另外一家大型网络公司的机会,薪水相对第一份工作也已翻番,于是闪电离职。

第三份工作

2008年9月2日,新加入第三家公司,感觉非常大、非常专业,是个集团公司,创始人和管理层都是知名的业内人士,公司当时有3百多人,部门设立、规章制度感觉非常完善,刚入职有培训,福利、工作环境都不错,这份工作在当时自己看来,是非常不错的。进入公司后跟着总监进行开发,两人独立负责一个新网页游戏(后面基本就我一个人负责了)。项目开发采用flex,自己买了本书边学变开发,工作压力不是特别大。总监对自己的学习能力、开发进度、沟通能力、积极主动性都还是非常认可的。这个项目开发了大约5个月,时间来到2009年1月份,公司经营状况和管理层发生了大变化。公司大量裁员、项目冻结,自己由于积极的和总监其其他相关负责人沟通,正是因为这种主动的态度,自己在项目组被砍掉的情况下转入另一个、也是公司唯一一个正在开发、准备运营的项目中,而之前项目组其他同事全部裁掉了。裁员后的公司开始变的很动荡、人心浮躁、工作压力骤升,团队成员一个个离开,最终自己在6月初也离职,这份工作只做了9个月,但给自己带来了非常重要的积累,关于技术、项目管理、产品运营、开发流程、团队合作等都有了初步的认识和理解,专业方面对开发所需的基础编程知识已基本掌握,游戏模块开发方面已没有太大的问题了

因为参与过大型游戏的经历、以及游戏市场对该职位人员的巨大需求,相对来说找下一份工作就比较好找了。当时自己的想法是离开广州,年轻就要拼搏,而拼搏就要到最有机会的地方去,游戏开发,在当时(到现在也是)北京和上海(乃至深圳)是机会最多、最好的地方,于是专门往北、上、深三大城市的公司投递简历,包括新浪、搜狐、巨人、腾讯等大公司。虽然,当时自己做过游戏开发,但经验尚浅,要找大公司还是难度很大的,最终北、上、深的求职无果,后来到了一家位于广州相邻的城市---佛山的一家公司。

第四份工作

2009年6月,入职新公司。(因为我依旧在公司就职,就不透露公司名了,直接用“公司”二字表示,下文中涉及到开发的项目也会分别用代号表示)

网页游戏经过2008年的发展,市场上出现了一批挣大钱的游戏,如热血三国。大量投资者和公司开始投入网页游戏的研发当中,市面上也出现了各种不同类型的网页游戏,策略战争类、儿童社区类甚至rpg类游戏等都有成功之作。在这个大环境下,佛山公司成立了,公司老板美术出生,做个人站/专业网站近十年,之前一直在上海做公司,因为有了佛山合作的机会,独身来到佛山,组建了新公司(后面上海公司就注销了),上海公司之前主要积累在于flash动画平台资源,在游戏开发方面也没什么经验。佛山公司准备组建大概15人的研发团队,开发5-8人,美术5-8人,老板任项目经理兼策划及美术总监,研发项目为Q版儿童类社区游戏(下面称为A项目),预计研发时间为半年至一年。

入职这家公司有两个值得提的原因,一是自己想离开广州这座喧嚣的城市,想到安静的地方闭关修炼学习;而这个公司在当时从环境各方面来说都符合我的想法;二是有一个细节,就是去面试,和面试官(老板)谈完准备离开的时候,他主动给了来回车费,这个是我不曾想到的。这个细节让我觉得公司老板是一个愿意分享的人、公司也是可以信赖的。虽然说换这个工作换了城市、要搬家,但当时来说,自己没有想到会在这里一呆就是4年,并且广州离佛山也很近,自己并不需要下多大的决心去选择这个公司和这份工作。

我是在公司成立一周后开始上班的,是公司的第一批员工,算是公司的“创业元老”。当然,那时候没有什么创业的概念,只是当做一份工作,只是现在回过头去看,四年做的事情,遇到的问题、和所付出的心血我觉得与自己创业并没有太大区别。

我入职后一个月左右研发团队基本完善,工作陆续展开,一开始团队做一些简单的功能模块和基础功能点,我主要负责模块开发,时间没过多久,出现了一个偶然的机会,把自己推上了准组长的位置,担负起了主程和组长的职责,也让自己有了从另一个角度去看待问题、处理问题的机会,关注团队开发效率、关注整体

A项目

A项目在逐步往前推进,不过现在想起来,似乎没有特别明确的开发计划和产品方向,因为整个团队都没有太多做游戏的经验,于是就照着市面上的同类型的成熟产品来做,依葫芦画瓢,觉得不好的地方加入我们的想法。以Q版儿童社区游戏为主题,展开功能,一路开发、一路摸索、一路修改。期间,调出了几个同事进行花园、牧场游戏以及一些休闲小游戏的开发,想把它们整合进游戏中去。同时,公司又接了腾讯的一个休闲游戏外包项目,由我负责客户端开发,大概持续了2个多月。

自己负责腾讯外包那个项目在那时是从工作以来感到压力最大的时候,时间紧、任务重,最主要的是遇到问题得全靠自己解决,没人能帮自己。在那段时间,开创了晚上睡公司的历史记录。最终项目虽然有些bug和拖延,还是比较顺利上线了,对方也给了比较高的评价,也为后来和腾讯的一系列合作打下了基础。经过这个项目,自己在技术、做事方法、抗压能力方面都有了提高。

整个团队就这样的状态做了大概7个月,时间来到了2010年春节,此时,市面上的儿童社区游戏比09年初已经多出了很多,儿童页游市场变成一片红海,盈利状况非常不乐观,而我们的A游戏按计划还需要好几个月才能推出。春节过后,大概3月份的样子,老板决定我们需要调整方向,改为回合制rpg游戏(因为调整特别大,这里就把调整后的游戏称为B项目吧)。这个决定在当时来看是无奈的、但是是符合市场需求的调整。整个团队就按照新目标来开展工作了。

2010年初,公司又有一个机会和某个事业单位合作,把A项目改造成一个和世博会相关的、适合青少年玩的项目(暂成为A+项目),公司又把大部分精力和人力转入到这个项目的研发中去了,我负责了这个项目的对外、对内沟通的职责。4月底,A+项目上线,但经历了极其悲催的事情----在在线人数很少的情况下出现了服务器宕机,这件事在未来几年在团队中都留下了“阴影”。A+项目需要我写很多技术说明性的文档和PPT演示文档,那时似乎自己花在写代码上的时间不是很多,每天的事情很杂,写文档、沟通策划、沟通工作安排等等,这个经历也一定程度上锻炼了自己的文档能力和处理问题的能力。

A+项目

A+项目是一个合作性的非营利性、阶段性的项目,到6月份后基本就不需要怎么管了,公司全部精力重新回到B项目。B项目做的并不太顺利,2010年的6月份距离09年初创公司时已经过去1年,公司启动资金已经用完,老板只能靠借钱发工资了,各方面压力开始增大,加班也比较频繁了。9月份,B项目基本可以测试体验,10月份实现技术封测(不太记得是10月份还是11月份了)。那一年国庆,假期自己也没有回老家,和老板及技术总监一起呆在公司弄着游戏的事。产品一直在调整、修改,修Bug,与此同时,公司也在寻求新一轮的融资,和很多机构、个人、公司有接触谈判,当然,这主要是老板做的事,只是作为同事,能感受到这种环境和压力。

时间很快,又来到了2011年春节,又一个转折点快发生了

2011年初,之前那个A+项目合作方提出新的需求,希望和我们合作继续开发一款关于宣扬低碳意识的游戏,(暂定为C游戏),于是我们继续分出几个同事对这个项目进行开发,我依旧担任项目对内外沟通的负责人。在这里值得说一下,合作方是一个政府较小的事业单位,和公司及老板有很多年合作的历史。这类游戏项目主题受限制、没有太多开发经费和盈利要求,我们也只是作为外包的态度去看待。

B项目

2011年春节放假前,团队拼全力在B游戏的完善上,希望发布一个比较稳定、完善的版本。而此时,市场上已经发生悄然变化,回合制战斗类产品已经多的让人眼花缭乱,其中还不乏高品质、大推广的游戏,甚至还出现了不少arpg。这样的环境给我们带来了严峻的考验,一是我们觉得的我们自己的产品似乎没有特别突出的卖点、二是我们在用户、渠道推广方面没有太多的资源和经验,更重要的是:老板层面寻求的游戏联合运营和融资方面一直没有有效的进展,公司账户一直是负数状态。春节放假期间,老板做了一个艰难的决定:决定假期后只少数几个员工按计划上班(我是其中一个),大部分员工延长假期,待公司确定上班时间后再通知。而上班的几个同事先重点研究、分析B项目的情况,针对项目存在的问题,有的放矢,确定未来半年这个项目的计划。

D项目

计划赶不上变化快,就在我们在对项目进行整理的那段时间里,我们又有了一个合作的机会,和国内一互联网巨头(暂就称为T公司)的游戏部门合作开发一款关于汽车的游戏,我们临时做了比较详细的准备,产品方案、开发计划,召开电话会议等,但由于一些原因最终没有合作成功。不久,T公司之前和我们有过沟通的人为我们引荐了T公司的另外一个部门,准备合作另外一个关于时尚购物的项目(暂定为D项目)。对这个新项目我们非常期待,因为T公司有着特别巨大的用户资源和平台,如果能合作成功,对我们来说,风险可以降到很低。我们积极的准备产品方案和材料,希望能得到他们的认可。和T公司的沟通大概持续了1个月时间,这段时间我们B项目和C项目的工作没有停止,公司员工陆续回来上班。一方面我们继续老项目的完善,另一方面我们在和T公司进行D项目的沟通和准备。3月底,D项目基本确定,和T公司合作开发。刚得知合作成功的消息时,公司同事还是比较兴奋的(特别是老板),大家都对这个项目充满期待,当然,也有担忧、迷茫和疑问。(和T公司的合作,后面回过头看来,其实主要还是以我们公司为主,对方只是在初期发表一些意见和看法,他们所承诺的帮助最终由于各种原因也没有达到预定的目标)

D项目确定后,我们就把B项目彻底放弃了!从09年创立公司打算的A项目,再到把A改造成B项目,时间已经过去近2年!而如今,因为各种原因,要把B项目放弃,这是何等的无奈和遗憾。过去近两年的努力基本白费,大家心里都有些不甘。时至今日,每每说起这个项目,心里多少都还会惋惜。

我们对D项目做了了详细的开发计划,采用快速迭代开发、小步快跑的方式。开发时间准备1个半月,然后上线。当时,在facebook上有一款同类的游戏,我们以它为原型,进行修改调整符合我们本土的风格和玩法(后来,我们又做了很大的玩法上的创新和完善)。我们加班加点的赶工,晚上也在公司,假期也基本都在公司,遇到事情处理事情、遇到问题解决问题,最终通过团队的努力,6月份完成了上线内测,8月份登录空间、9月初开始收费,游戏各方面的数据都表现不错

那时,团队也迎来了一次较大调整,陆续有同事离开,一方面工作压力巨大,另一方面公司财务长期得不到改善,用“苦”和“累”这些词语已经很难表达完自己的感受了。很多人对公司的未来、项目的未来、自己的未来充满了疑惑、迷茫,对是否坚持产生了动摇。值得一说的是,在那次团队变化过后,之后的两年里,团队就基本没有大变化了,所以我们现在的核心团队都是一起打拼了4年的同事,人数少、效率高,沟通简单、直接、高效。

D项目上线后,有了收入,相对就平稳了公司主要工作就是收集玩家需求,开发新功能上线。差不多一年多的时间(大概持续到2012年的12月份),我们一直在通过各种方式增加用户、增加留存,提高付费渗透率。2011年4月到2012年12月期间,我们还上线了C项目,以及为T公司的其他部门开发了外包项目及其他合作的小项目。因为时间不是很长,也不是公司主要方向,在这里就不详细介绍了。

D项目的开发过程非常艰苦,最明显缺的就是开发人员,这么大的一个游戏项目,包我就只有2个客户端开发人员、一个半服务端开发人员(为什么算半个是因为前期有2个,后期只有1个了),没有专职测试,老板任项目经理兼美术总监兼策划兼商务。所有人都是在高压力、同时又是疲惫的状态下工作。自己更是不仅要写程序,关注团队,很多时候还需要兼任客服、以及一些过往项目的对外沟通。自己不知有多少个日夜,凌晨、甚至通宵还在写代码、修Bug,新功能刚刚开发完就要赶着上线,然后无穷的Bug和错误、甚至低级的错误。很多问题是由于时间匆忙、工作流程、人手有限等各方面的原因导致的。自己那时也承受着巨大的压力和遭受了很多委屈。

值得欣喜的是D项目可以算作一个成功的项目。项目维持在20-50万左右的日活跃,每个月有几十万的流水(有几个月快接近百万),在如此激烈的竞争环境中起得这样的成绩也算是对我们辛苦付出的一个汇报,值得我们这种小团队值得高兴的事情了。因此在2012年春节,公司首次派发奖品:每人一台Ipad,这也是自己工作以来首次获得的大价值奖品/奖金。但从公司层面来说,从2009年6月到2012年12月,三年半时间,依旧还在贫困线上徘徊,依旧还有很长的路要走,依旧任重而道远

2012年11月份后,D项目活跃人数开始缓慢下降,收入基本稳定但呈下降趋势。做了一些调整和活动但效果不明显,我们开始把人力资源转向新项目的开发了。关于新项目,本文不做详细介绍(留着下一个6年的回忆录里写),开发了大半年,时不时被暂停转去做其他事情,项目进展基本顺利,预计今年6月份内测。

总结

回望过去6年的经历,自己有了很多变化:从表面上来说,工作能力、经验的提高,收入水平有了提升;更深入的是你有了对工作、对生活更多的感受和看法。原来在大学里面不会去想、也不需要去想的一些问题都逐渐会面临和需要去解决。从一个学生转变成一个职场人士,不仅是角色的转变,更重要的是心态、状态的转变以及更丰富的感受

经历过几家公司,因为做技术,接触的人不算多,但即使如此,过往的同事也带给了我很多不一样的观念、想法、甚至习惯,让我意识到原来工作可以是“这样”、生活可以是“那样”、让我见识到世界是如此的丰富多彩。每一个公司,都有各种各样的人,有的人勤奋、有的人懒散、有的人活泼、有的人内向,有的人性格坚毅,有的人“什么都无所谓”……每个人都有每个人各自不同的成长环境和生活习惯。有时候我在想,如果说要必须成为某一种类型的人,自己应该成为哪样的人。其实,无论哪一类人,都可以生活的很好,也许,不要刻意的去改变什么,保持自己的个性,做好自己就是最好的。

工作以后,会有很多感受,比如,你会感觉到工作有时和生活是分不开的,到底什么是工作、什么又是生活,有时候你无法分清。你会认识到工作是没有寒暑假的,不像学生时代一样可以说放假了、作业上学后再做吧。你会感觉到在学校老师教授的知识“用不上”,你会发现你遇到的很多问题不是判断题、甚至不是选择题和填空题。你会遗憾之前在学校没有读足够的书、抱怨现在时间不够用,你会感叹现在一年在家的时间没几天,一年绝大部分和你在一起的是你的工作伙伴、甚至是你讨厌的人。你还会认识到“身体是革命的本钱”这句话的真正含义,你开始慢慢的注意自己的身体,并且常常嘱咐别人注意身体。你会感受到理想和现实的差距、社会的不公平以及身上的压力……

有人说80后是很不幸的一代,没有工作分配、没有铁饭碗、就业难、房价高;也有人说80后是非常幸运的一代,前所未有的学习机会、发展机会、和开放的制度和自由。套用狄更斯的一句话“这是最好的时代、这是最坏的时代”,每个人所处角度不同、每个人所在状态和环境不同感受是不一样的。我们无法选择生活的年代,就像无法选择出生的地点、时间一样,我们唯一可以选择的就是稍微努力一点点,勤奋一点点,努力去做、做好自己想做的和不想做的事情,让自己的人生丰富一些。人的成长过程中,你会面对很多迷茫的问题,这些问题可能没有标准答案,甚至连答案都不会有,但仍要我们自己去处理和解决,这是每一代人的成长的代价。

什么样的人生才是理想的人生?有人说人生就要平平稳稳、顺顺当当,有的人说没有遗憾的人生就是完美的人生,有的人说经历丰富,经历大起大落、跌宕起伏的人生才有意义,有的人说家庭幸福的人生就是完整的人生,有的人喜欢到处旅游,有的人喜欢呆在一个安静的地方度过一辈子。这个话题仁者见仁、智者见智,问一千个人有一千种答案,问一万个人有一万种答案。在如今物质需求逐渐得到满足,精神需求逐步成为我们追求的对象,我想,有意义的人生一定是在精神层面可以得到足够满足。在我看来,拥有普世价值观、努力奋斗、在力所能及的事情上帮助别人,不后悔的做每一件事情就是值得鼓励的人生

这篇文章写的有那么一点点沉重的感觉,我想,这是正常的,每一次感悟都是历史的总结、人生的积累、心里的沉淀。如果说如今最想和当今大学生分享的一句话,那就是多读书、努力积累知识,多尝试去寻找自己人生未来的答案。

6年,只是一个逗号,下一个6年,与大家同行,在路上。

作者:it学思想

给我留言

留言无头像?