一、概述
十年感觉弹指一挥间,依稀还记得第一次踏进大学的校门,军训,上计算机相关课程,一切一切好似就在眼前。大学这些年过来,诚然在学校我感觉我是一个不是算聪明的学生,但是我勇于去学习,在要毕业很多同学都去参加培训的时候,我依然选择自己根据自己的目标去学习,去找工作,相信自己的能力,相信依然能够找到一份工作。上班到现在已经有了六年了,一路过来,有得与失,也走过一些弯路,但是细细想来,是自己深刻体会到的,终究会使你的未来走得更加顺畅。
二、大学四年
明确学习能力的重要性
上大学的时候就明白学习能力的重要性,在当时我就总结了一篇文章为《学习能力比知识更重要》。时代不断在进步,知识技术也不断在迭代更新,需要有很强的学习能力才能顺应时代的发展。当时学习计算机导论的时候,知识都比较抽象,一直感觉不好用高中的知识来进行关联理解,似乎有些脱节了,因此当时的兴趣点就不是很浓厚。
从学科中找寻自己的兴趣
大二上学期,在学习J2SE的时候,可以用程序编写一些游戏,抽象的知识才慢慢形象起来,突然恍然大悟,原来之前打的手机游戏是这样做出来的,慢慢的对编程产生的了较大的兴趣。于是就初步考虑大学就朝着这个方向去深入,争取在毕业的时候找个相应的开发工作,依稀还记得当时职业规划是从程序员做到架构师(大学有职业规划课程)。
找寻自我学习的良方
其实我是有深入学习的意识,但是没用在恰当去深入学习的时机。比如在编程学习的时候,就思考程序是如何运行的,和现在学的哪门学科有关系,应该讲哪门学科学习好才能轻松驾驭编程等等的思考。其实现在想来这个不是坏事情,但是一遇到问题就去深入思考,可能会让当时学习的课程脱节,况且之前只是去思考,有时候问题思考是不非常清晰的时候,没有去找对应的良方解决,比如总结输出,所以感觉大学学习是有些遗憾的。
还有很多学习时候意识感觉不顺畅,比如书籍中密密麻麻的文字,一开始就想深入理解知识,就会遇到很多问题,导致兴趣点下降;电脑上无章可寻的文件夹;每次听课后,用自己的话总结但是坚持不久。去图书馆看书,看不到多久就会犯困,一方面心里还没沉下来,另一方面看到不懂的就有点着急,不知道如何下手去理解或者不知道如何理解。其实当你犯困的时候就自己拿着笔写一写,总结下来,要一步一步逐步深入的理解。
如果按照现在的思维方式去学习大学课程,我相信会学习的很好,毕业的时候就能找到比很多人好的工作。只可惜时光一去不复返,还是不悔过去,不畏将来,继续努力,依然可以弯道处超车。
好的方面就是当时学习游戏引擎,游戏设计等游戏相关的课程时,没有非常深刻的去研究它,因为自己明确自己的目标是做应用程序开发。时间有限,将有限的时间花费到感兴趣的目标事情上,深入耕耘,这样才是真正高效的去利用时间。此外,也十分明确学位课程的重要性(计算机导论,计算机操作系统,计算机网络,数据结构与算法,高等数学,英语,线性代数),因为学位课是计算机专业的基石,任凭未来技术如何发展,计算机的基础根本不会变,因此只要地基打得牢,房子才能稳固,只要根扎得实,才能茁壮成长,枝繁叶茂。直到现在,工作之余也会抽空看看并再次理解学位课程。
三、工作六年
“菜鸟季”顶住压力,虚心学习。
第一份工作是在2014年初,应聘上了一家从事化妆品O2O的网络科技公司,担任java软件开发工程师一职。才上岗的时候心理有一丝丝胆怯,因为从来没有从事过商业项目开发,在大学也是在实训的时候边学习边开发小型购物网站,考虑到所用的技术不适合做商业项目,如果有新的需求不知道如何分析更不知道从何下手,就这样开启了自己的职业生涯。
当时的项目还不是前后端分离的,是传统的java web项目,每次发布的时候都是打一个包放到服务器上。虽然担任java软件开发,但是前后端都要做,期初还主要编写html,JS等前端页面技术,特别是jquery框架实现的特效,心想还给它仔细研究一番(具体的实现原理),幸好当时没这么干。因为这样的开源框架只需要怎么使用就对了,你不重新前端工程师,没必要去研究它,这样其实就是没有把时间花在该研究的地方,所以为什么职业规划的目标很重要,原因就在于此。
后面在做手机适配的时候,终于有计划尝试做后端接口开发,心想终于有机会去讲学习的知识勇于实战了,紧张又激动。不过拿到了需求,不知道从何下手,从哪个地方写起?还有就是代码是如何运行到到断点的,前面有许许多多的逻辑,都想去搞清楚。当时最大的矛盾就是想一步一步搞清楚代码,但是需求又规定了多久完成。所以就显得心里有些慌张。唯一的办法就只有边做边问了。这样一步一步慢慢顶住了压力,完成了相关需求。
总结当时,我领会到几点:
1、站在巨人的肩膀上。百度上已经有的东西,善于去借用,然后根据自己的实际需求去改正。
2、凡事都要考虑优先级。细枝末节的技术等做完业务在安排时间做深入分析。
理解业务是关键,编写代码只是落脚点
上一家公司由于拓客不是很理想,后面慢慢业务开展不走了,我就换到了一家外资企业。心想上一家用的这些技术,从事其他工作就游刃有余了,事实上并非如此。那边的技术比较旧了,项目也是无数个版本,我去的时候前期就做了些用户需求,用到的技术就是java基础性的一些技术,关键是英文沟通能力和业务理解能力的提升,我深知这样对自己的未来发展不是很有利。于是乎在2017年上旬的时候,我就换到了其他项目组上,从事微服务Spring Boot,这个项目做金融反洗钱的,我非常的感兴趣,里面涉及的技术也是未来非常主流的例如说MongoDB,多数据源等,待了半年,这个项目由于是卖个银行的,由于领导层那边和银行对接的方面原因,后面我们也没持续迭代这个项目了。
总结起来,领会到如下几点:
公司在变,扎实的技术特别是扎实过硬的基础技术永不变:工作中80%的业务都可以用到20%的技术去解决,因此基础必须扎实。
技术在变,学习力永不变:技术在迭代,学习技术的能力相当重要。
还好有机会被公司派去国外从事开发,在2017年下半年的时候,去那边做的政府云计费引擎系统,有了在国内在良好基础,去那边虽然是一个人但是也有几分自信了。前期自己封装框架,研究技术,写模板代码,后期主要从事服务器上项目的环境部署搭建,整个流程都装到了脑海里。关键的问题就是有问题了需要英文交流,给了自己很大的压力,不过还好,前期能说些关键字加上自己的肢体语言,也能顺利处理事情。现在仔细想来,居然一个人在那边度过了一年多,后面走的时候领导还想让我待在那边多一段时间,我想可能是我平时的工作态度吧。在这段时间里,给我深刻印象和帮助的要属那边的项目经理和一个测试的同事,项目经理严谨的工作让我很受鼓舞,比如发邮件的时候一个英文单词,一个标点符号都会考虑清楚。测试同事是学习能力超强,理解业务的能力很是迅速,我想也是来源于他肯专研,善于讨论的务实作风。
总结起来,领会到如下几点:
严谨的工作态度:包括需求文档严谨,讨论问题思考的严谨性,提一个需求或者改一个需求的前期影响,后期的影响等等都要考虑。
善于专研主动专研的务实态度:有问题立即沟通,并提出自己的见解。
以上大概就是这些年来对于工作的一些思考,总结起来就是“厚积薄发”。如果继续往高处走,还需要系统思维,管理能力,创新能力等。
网友评论