记一个转行程序员的工作经历与感想(后期更新)

前言

随着科技的发展,现代人生活的节奏是越来越快,个人觉得程序员的生活节奏更快(个人观点),在忙碌的生活中总是很难找到一点点的空闲时间(就算有,估计也是用来睡眠,不知道为什么总是感觉程序员是一种睡眠不足的生物),但是一旦有时间就想通过文字记录下来,作为以后生活的回忆吧,如果在此过程中还能够帮助到您的话,那将是我的荣幸。

个人背景

2015年毕业于一所最最普通的一本大学,专业是管理学类专业(说来都是泪,被调剂的,其实高中学的是理科,简直无语了),但是又不想回炉重造,只能是硬着头皮学了,很显然一开始这就不是我的出路,那怎么办呢?总不能毕业之后出来就失业吧,况且当时楼主家里真的太穷了(大学的学费都是助学贷款的,是真穷),只想着出来就能挣钱,也不想考什么研究生了(现在想想那可能是一个错误的认识,也许研究生会更好一点,楼主一个同学现在就比楼主强多了,手动抹泪),记得当时Java真的很火(其实楼主当年的志愿中是有报这个计算机专业的,都是命呀),所以大学的时候也会自学,自己在网上看看,课程里也有本专业的计算机课程,是VB,考了省二和国二,感觉这东西不是自己喜欢的(不代表这门语言不好),随着时间的推移,突然大四了,一脸懵逼啥都不会,最后还是选择培训一下(非广告),因为学习是需要一个好的环境的(楼主承认自己的学习能力真的不强),然后就这样顺利的毕业了。

工作经历

前面说到楼主终于怀着一颗梦想毕业了,但是楼主没有失业(哈哈),可是似乎并不是我想要的技术性公司(别提什么IT公司了),说实话想进IT,可能非专业又没有实力很难呀,因为这是文科性质专业,所以找一份行政相关的工作还行,于是三方就签了一家省企的建筑行业的国企单位(没有办法党员+能说会到,对实力考察很少,楼主就是一个水货),其实当时就是一边走一边看,先签一家保证不失业,最终很稳定这就成了我的第一家公司,说来也巧,本来是过去做行政的,结果公司正在申请特级资质,需要建立一套信息化管理系统(以前公司是纸质办公),就自荐到公司新成立的技术部(充分发挥楼主的技术自吹),说是什么技术部其实就是三个人(尴尬),因为这个系统肯定是对外招标的,中标的是北京的一家公司,然后我们的任务就是与这家公司对接谈需求,考虑到以后的维护,我们也会参与到其中的开发(我的天,这就开始了我的开发生涯,想想都有点小激动),其实工作之后你才会发现理论知识与实际开发还是有蛮大的差距的,所以刚开始的时候真的是一头雾水,两眼懵逼(幸好我是甲方的人员,不然我都怕被开除,但是对于我那是不可能滴,咱工作没什么优点,就是稳定),就在这样不紧不慢的环境中度过了一年(一年呀,感觉屁都没有学会),然项项目就在我们公司上线了,然后楼主就很理所当然的加入了后期的维护工作(度日如年的维护工作),突然有一天幡然醒悟,醍醐灌顶,苦海无边,回头是岸,感觉这么下去就废了自己(国企的环境你懂的),你的胸怀和报复呢?辞职了,很坚决,直接就裸辞(想想当时是不是脑子有炮),走的时候跟书记说:谢谢领导的栽培,但是感觉自己辜负了领导的信任,没有学到东西。书记只说了一句:其实你已经学到了东西,出去你就知道了。终于我带着这句话到了毕业后的第二家公司(私企,似乎层次降了,混的越来越差了),找了一份Java开发工作(得承认自己的技术真的很菜),一起还有几个刚毕业的,几个月下来你才发现原来之前真的学到了一点东西(不管是为人处世,还是技术方面,相对于他们来说还是有优势的),才渐渐的理解当初书记跟我说的那就话,就像那句诗说的“只缘身在此山中”,一旦你跳出,你就会发现不一样的自己。终于在这里才真正的学到了一点东西,不管是通过自己的自学和大牛的帮助,这里就不说什么具体的技术了(因为相对于大牛,简直太菜,怕暴露自己),然后现在又跳槽到另外一家公司(对于跳槽下面的经验里面会说),大概这就是我这三年简单的工作经历,后面的五年、十年会再更新。

转行思考

前面也说了自己是转行过来的(可能跨度还有点大),这个东西真的不好说,每个人的条件不一样,所以转行的风险也不一样吧(这里对大神自动屏蔽,只对跟我一样是凡夫俗子可见),就拿我自己来说吧,第一自己专业不是自己想要的(我都没有填这个专业呀,大坑),虽然说计算机这个大行业也不一定就是最适合我的,但是相对我目前的专业来说,我肯定是更喜欢计算机这个行业的(这个没有对所学专业的歧视呀,可能只是不适合);第二能力方面能不能胜任,这个其实可以通过学习来补充的,楼主当初学的理科,所以对于计算机的学习还是比较容易上手的(没有夸自己的数学啊,要是特别好为啥不上一个更好点的学校和专业,笑哭),需要辩证的考量自己的能力很重要;第三就是你能吃苦吗?这一问就尴尬了,能能能(我呸!),楼主其实真的不是一直能吃苦的人的,但是在一段时间内还是能够吃苦的(也就是在我疯狂学习知识的时候,哇塞,感觉自己差点都信了),说回来,其实真的如果不能吃苦,那还是放弃走自己的老路吧,因为我是过来人真的很辛苦,你不付出百分百的汗水,回报的时候真的会给你一巴掌,就问你疼不疼?第四就是经济实力,这个很现实的问题,楼主家里特别穷,上面说了大学学费都是用的助学贷款,所以急着出来工作挣钱还债,楼主比较幸运出来还能挣个三毛五毛的,你要是中途转行,你就得损失一大笔钱,具体多少(天机不可泄露),自己算。以上就是楼主的个人观点,纯属个人,不喜欢你可以过来打我呀。

JAVA认识

前面说了这么多,不会都是吹的吧!可能本人就是一个锤子呢!对,你说对了,就是一个锤子,别跑!我锤死你!记得以前我师父跟我说过一句话是:你不是这个专业,学校也不好,为人处世也一般,如果在技术也不好,别人凭什么要你?我觉得说的很对,所以在工作中还是需要不断的学习,可以笨一点,但是一定要努力,要有态度,对不起,我又开始胡吹海吹啦!说好的Java知识呢,客官,这就来,由于不是纯技术文章,所以就随便说说面试中或者工作中的问题吧:
  • Java基础知识:这个在三年内基本都是会谈论的(好像说的就是楼主自己),比如说八大基本类型?默认值是?取值范围是?之间的转换是怎样?String是基本类型吗?创建String对象的过程?为什么String对象是不能改变的?等等不一一细说了。
  • Java中级知识:这个能可能不是考察你实现功能,更多是代码优化、框架理解、模块设计以及解决问题的能力,比如:简单说说常用的设计模式?对Spring、SpringMVC以及持久层框架的理解?MyBatis框架内部的具体实现?如何优化对千万级甚至亿级的数据操作?Linux或者Unix系统部署?对于多线程和并发的理解?解决问题的思路?等等,主要考察还是你对代码理解的深度以及解决问题的能力,一般针对的是有个两三年工作经验的(大神除外),不光仅仅是为了实现功能。
  • Java高级知识:说实话这个楼主能力有限,目前还有到这个层次,要说的话就有点水了,大概几个方向吧:对虚拟机的理解?对设计模式的灵活运用?重要源码的分析?对大框架设计的理解?如何管理团队?等等,管理团队方面,可能中级也是能够涉及到的,毕竟有很多的新人会涌向市场,总之高级或者之后应该不会再单纯的写代码了(我得努力了)
以上三点纯属自己遇到的或者想到的,由于篇幅问题只能是冰山一角,大家有兴趣可以找大牛的专题看看,这里就不丢人现眼了。

经验之谈

说到这个其实真的有点吹了(毕竟自己还是一个菜鸡),但是工作有经验还是有得,这里简单谈谈自己的理解,前面也说道了,楼主是一个比较笨的人,可能别人一个小时理解的东西,楼主需要花上一天的时间来理解(想跳河),没有办法天生我才有的笨,认了,辛亏楼主有自知之明肯花时间,硬啃,所以楼主一直没有落下别人太多,怎么又胡扯到这里来了,收!还是说说学习吧:
  • 勤奋。不管是做什么行业应该都是一样,都需要勤奋,古话说的好勤能补拙,楼主对自己的要求就是可以笨但是不能不努力。
  • 不耻去问。有的时候别人给你点拨一下比你自己闷在哪里搞好几天效果好多了,而且别人愿意跟你说的东西都是自己比较擅长的,你就能够快速的学到更多的知识,特别是请教比你厉害的同事,千万不要不懂装懂,记得我当时出来的时候就是这样,不好意思去问,怕别人知道自己的水平很菜,其实你问不问,别人都知道你菜(扎心了),后来就脸皮厚了,不断的问,有的时候被说的面红耳赤的,恨不得找人打一架就好,但是结果是你变的越来越强了,我现在带的人里面也有这样的,自己不会也不问,问了都说会,但是让他说,说不出一个屁来,哎。
  • 资料。不管是电子资料还是书籍还是网上的资源,都是能够很好的帮助你成长,该花钱的的时候千万不要吝啬,用的好,价值能翻很多倍。
  • 职业规划。相信所有大学所有专业都有这门课程吧,叫做职业规划,如果你想要一个长远的发展,职业规划那是必须的吧,下面有楼主自己的规划。
说职业规划之前稍微把上面关于跳槽问题简单说一下:首先这个因人而异,记得马云还是谁说过的跳槽无非两种原因:要么钱没有给够,要么干的不开心(暂时不考家庭因素),当然对于一般没有技术含量的公司可能还需要考虑能不能学到东西,我所能想到估计就是以上几种,我的观点如下:
  • 公司和员工是互相依赖的关系,所以跳槽并不是你对不起公司或者公司对不起你,如果因为钱没有到位或者不开心,那就果断跳吧。
  • 衡量自己的能力后再跳。如果不知道自己的能力有多少,那就到市场上试试水,马上就能出来。
  • 建议不要裸辞。楼主虽然裸辞过,但是风险也是很大的,所以慎重,等确定好了再提交辞呈,不着急这一会儿(大牛有人挖,不需要考虑)


职业规划

1年之内:学习Java基本知识,适应社会,书籍《Java编程思想》(这书很生硬),网站有牛客网、CSDN(可以总结知识)、菜鸟网等,初级Java开发
2-3年:学习Java中级知识,如框架学习,设计模式学习等,有点为人处世技能,书籍《大话设计模式》、《重构-改善既有代码的设计》、《Effective Java》、《Java并发实战》等,网站有gitHub、stackoverflow等,中级Java开发(组长、副组长,管理团队)
3-5年:学习Java高级知识,如虚拟机学习,数据《深入理解Java虚拟机》、《深入理解计算机系统》等 高级Java开发,独立管理小团队
5-10年:还在思考中...

总结

以上都是楼主的拙见和想法,如果不同意,也可以交流,但是不要恶语相向,当然如果觉得对你有帮助那将是我莫大的荣幸,预计以后5年、10年会进行更新,就当做给自己的一份总结吧。

猜你喜欢

转载自blog.csdn.net/hy_coming/article/details/80713983