和很多人不同,我刚刚读完大三,就来到了B城开始了第一份工作。记得大二的时候,刚刚学习了C++和MFC,还有fedora的系统操作部署,每天就想着能够有真正的项目去实战一下,那时候还和几个有共同想法的同学组建了一个团队,大二暑假的时候由于偶然的机会,我们到了学校附属的一个单位开始做项目。那时候我参加了两个项目,一个是基于某GIS组建的二次开发的一个三维项目另外一个则是地理某网站。刚开始的时候对二次开发没有什么热情,其实事实证明我对于高度集成然后调用的东西确实没有热情,看着我的另外一个同伴每天对着自己实现的功能沾沾自喜,我不禁想,就跟小孩子玩积木一样,积木在我可以做个小建筑,站在巨人的肩膀上,确实比较容易出成果,可是如果哪天底层有问题呢。整个系统的性能、功能都会有毁灭的影响。于是我把大多数的精力都集中在了做网站上,那段时间我学习了很多网页相关的语言,从html,css,xml到javascript我都很用心地研究,结合asp.net的一些控件,到最后我完成了主页的编码还有一些信息发布模块的编码,后来想起来那些东西跟现在很多网站比起来都很粗糙,但是让我感受到了web开发的乐趣,也是那段时间我确定了自己对web的兴趣。以至于后来开学,我一边学习专业,一边在帮美国一家刚刚创业的小公司制作网店的界面,不敢谈什么高技术含量,至少老美的要求,让我见识到一种另外的网页设计风格。
后来得到那家单位老师的推荐,我来到了B城工作。我进入的也是一家GIS公司,公司既做平台又做应用,而且分不同行业。我被分配到某个项目组当起了项目助理,刚刚从学校出来的我,对IT行业并不太了解,对项目的流程也不了解,其实当时也有收到其它的电话面试邀请,但是心想既然出来了。那么就从这家公司先了解清楚情况再说。
刚刚进入公司的时候,每天都看很多资料,首先了解公司的业务、公司主要是干什么的,在各个行业的解决方案是怎样,应用了哪些技术。同时我也在学习代码。毕竟我来的时候不太对,那时候我是一个人背着包就来到了公司,因此也没有人安排给我培训,我能做的只是自学。后来的新同事都有安排系统培训,那时候对影像、矢量、dem还有三维的原理都不了解,看了很多公司的同事做的系统,慢慢地了解加深了。但是开发是件痛苦的事情,我感觉一直在拷贝代码,而且底层的问题很多,如果是像微软开发的API、或者什么JAVA的问题,基本上可以上网自己去寻找答案解决,可是公司的api要找熟悉的同事来解决,那时候感觉很无助,项目助理的职责只是需要熟悉,不需要深究,工作面对更多的是文字和沟通,于是撰写技术方案、项目计划书、软件设计书等其他项目相关的文档成了主业,有的时候根据客户的需求还得写一些论文类型的说明文档,阐述原理和应用模式,甚至会写一些投标报价的文档给销售们。平常经常要跟各项目干系人沟通,提醒项目成员写周报、工作日志,向领导汇报进度,跟测试、美工协调等等,经常用web acess、project管理进度计划、维护计划。不知不觉干了快一年,这一年我很少回学校,集中精力在工作中提高自己,周末的时间还参加外面的外语培训,提高外语交流能力。
那段时间学习了很多,同事们都感叹我的进步速度很快,但是我无时无刻不感觉到恐惧,在学校的时候,别的女孩子看电影的时候,我总是在研究代码或者上网找资料,微软黑屏那段时间,我感觉学习计算机的人是不能不懂linux的,我脑海里面觉得技术的更高境界就是要自由,微软你黑屏就黑屏好了,姐直接换了系统,也不影响自己的正常生活,乃至后来3Q大战很多人纠结是留QQ还是360的时候,我直接用fedora,不觉得会对自己有什么影响。我对自己职业的设想一直都是,跟很多学习计算机的人一样,先当程序员然后熟悉流程从而变成项目经理或者以后成为系统架构师、进行系统设计或者专注管理,以后成为既懂技术又懂管理的CIO。然而跳过了坚实的技术累积,我能否达到自己预先的目标呢。我想答案是否定的,我想过在一边工作的同时去研究更多的东西,如果有公司跟你说,不写代码就不用加班,你千万别相信,事实上是无论是程序员还是助理,要完成项目相关的任务都需要付出大量的时间和精力,在项目比较紧急的时候,加班根本就是家常饭,更别提去研究什么跟行业以外的东西了。
现实和理想差距很大,根据我后来的观察,很多公司,一般女生是不让做开发的,虽然也有,但是大多数抗争很痛苦。记得那段时间我也有参加web项目的代码工作,每天加班到很晚,那时候程序员其实也没太多时间去钻研内在的技术层面,做二次开发的程序员,很多都是用现成的API写代码,有的时候项目很急,加班到凌晨,甚至通宵都很普遍。其实最大的问题,是我对GIS似乎始终不感冒,在当助理的过程中,我对那些关键技术也有了解,GIS面向的很多都是政府和M行业,市场很小,很多项目都属于低水平的重复建设,我们团队甚至自己还做了一整套常用组件,以后的新晋程序员,可以直接调用。而且对底层的依赖度相当高。近几年来,IT行业对跨平台和云的变得越来越火热,虽然我们底层的软件也是由某开源软件变化而来,但是近几年出现的版本多是C++JAVA为主,甚至开源世界停止了对C#版本的维护,这些都让我觉得恐惧,一时想起,自己付出很多,即使要跳槽也没有太多资本。而且家里其实也并不太赞同女生做技术。
有的时候很矛盾,自己对计算机始终很热衷,尽管自己需要学习的地方还有很多很多,但是我很坚定,我是可以继续学习的,出来的这一年多,我对自己更加了解了。自己的长处在于学习能力很强、也很有毅力去钻研,而且对于技术了解的范围比较广泛,但是缺点也在于都很广泛,但是没有在一个方向钻研得很深入。我其实并不害怕从零开始,我想我的外语、还有对计算机、互联网的热情还有在当项目助理的时候积累的项目管理经验,我更加明确以后可以朝着做产品经理或者设计方向去发展。
对于刚刚出来的同学,我只能说用自己的亲身体验作为教训,一定要扎实基本功,在学校要学好基础知识,很多人说,大学生先就业再择业,我不否认,但是我觉得更加重要的是要选择自己感兴趣的行业,否则再怎么择业,前面的时间也属于浪费了。只有看准了方向,朝着方向努力才能取得成功。
最重要的是,不要觉得专业把你培养成什么样的人,你就是什么样的人,其实应该是你觉得自己是什么样的人,就把自己培养成什么样的人。我本身学习的并不是计算机专业。连学位也是管理学学位,但是我一直学习计算机,热爱计算机,我坚信自己未来的方向就是计算机。尤其是女孩子,要想以后幸福就一定要有自己坚定的方向,因为没有坚实的经济基础和独立能力,对于以后的家庭也不一定有利,哪天要归于家庭,发现自己一生都没有想要纪念的事情,我想都会觉得有一丝遗憾吧。现在的我又重新开始了学习,总结之前的工作情况,我端正了自己的定位,我想只要有积累,遇到合适的机遇,总有成功的机会,我并不觉得女生在计算机就一定比男生差,女生也许生理上确实比较弱,但是心理和学习接受能力上面不一定会差,更可贵的是沟通和交流能力,计算机这个行业我想需要的不是代码的重复建设,需要的更加是有创造性的思想和远大的战略目光。对于女生来说,在我看来,工作上面努力和奋进跟未来的家庭是没有必然的抵触作用的,相反,在大城市打拼,两个人的协作和项目配合更加重要。因此,如果坚定了目标,就不需要有太多的顾忌。希望以我本人的教训,能给大家一点借鉴意义。