2019年程序员职业生涯大事记

工作失去乐趣

        2019年3月份,我已经在老东家转正近半年,对于初级程序员应该做的编码工作已经比较熟悉。我观察我所写的Java代码,居然重复了一次又一次的增删改查,最令我难受的是我的办公电脑十分的卡,这无疑又会影响积极性,编码过程痛苦又煎熬。迫于无奈,我开发出了第一版生成代码的软件,足以把以前两天的编码量缩减至十五分钟之内,我指的是用卡到爆炸的电脑要做两天的工作。

       当然了,没有十全十美的事情。这个时候出现了前后端分离,有时很不幸,我被分到了前端。本身就是Java出身的我很难理解前端方面的Css、Js,还有各种各样需要查询API文档的组件,比如ExtJs、BootStrap,这令我十分头疼,以至于后来深恶痛绝。后台的Java代码已经是自动生成的了,几乎已经失去了编码乐趣。当我被分到后端的时候,每天的任务就是等下班,可想而知一天8个小时是多么的漫长,周二周四有时还固定加班,真是令人心态爆炸。分到前端的我,又被各种各样恶心的组件样式折磨。这就是我当时的工作情况。

分享技术受阻

        我向同事分享我的生成代码技术,我向他们提供了安装包,在他们的电脑上演示如何帮助他们生成代码。原本我以为我能够帮助其它同事减少开发量,帮助他们从繁重的增删改查解脱出来,我也不否认有炫耀虚荣的成本,但是本意是好的。实际情况却令我大失所望。现在我知道,如果一个人以为通过显示自己的聪明就能博取其它人的欢迎,那么他就是不谙世故的毛头小伙子。事实上,只有极少数人欣赏此技术,对绝大多数人来说,这激起了他们的憎恶与反感。因为我的技术仿佛在批评他们的劳动毫无意义。项目经理知道后,质问我谁让我开发了这个安装包,还好心的告诉我,这会让团队产生惰性。我什么话都没说,默默的收起了自己的生成代码的安装包,不再向外界提供。我很生气,但更多的是失望。

丧失斗志

         虽然工作方面给的乐趣不多,但是我也在积极寻找乐趣。唯一值得庆幸的是,老东家的工作节奏不快,每个项目从开头至最后上线都有十分充足的时间。在这段时间内,我努力学习,掌握了我个人认为比较多的知识。衡量标准是什么呢?我认为,如果我的做了一天重复的增删改查工作,那么对于我个人来说,相当于浪费了一天时间。如果我今天学习了更多的知识,那么今天的我就比昨天的我有所长进,今天是很有意义的。幸运的是,我几乎每天都过的很有意义。这期间,我掌握了例如设计模式、重构代码、多线程、安全框架等知识。这当然对我有好处,但是对于公司来说没有什么价值,因为他还是那老一套。即使要面临着可能被喷的风险,当时的事实是,许多人对于我学习的东西妄加批评,说学了有吊用,又用不到。虽然有时我也很生气,但是抬头不见低头见,暂且一笑了之。就这样,随着我掌握的东西变多,公司那一套增删改查就越显得枯燥无味,以致最终丧失斗志,终日浑浑噩噩。

导火索

         人是一种害怕变化的动物,喜欢维持现状,拒绝改变。因为恐惧,很多人抗拒改变,哪怕现状多么令人不满。很不幸,我也沦为了害怕改变的受害者。虽然我已经储备了足够多的知识,但在最终跳槽前的一个月,我几乎每天都睡不着,心中万分焦虑。一方面我焦虑我的技术真的无用武之地毫无价值,另一方面又害怕如果我裸辞了又找不到工作怎么办、如果我找到了工作,老东家又不放我走怎么办、找工作过程中我身上的资金不够了怎么办......种种原因,每天都在困扰我。

          终于有一天,老大找到了我。让我出差,居然让我一个人去北京!我极力推辞,老大无奈,安排让另外一个人去,但是出差时间从告诉我的两天变成了一个星期。之前其它同事的先例告诉我,说是出差一个月,实际上从短膀子去,得穿棉袄回来。人的虚伪在此展露无疑。我不是有意批评,或许老大也是迫于无奈才安排人出差。

        上述理由其实还不能让我完全说服我自己跳槽。真正打败我的是对未知的恐惧!我从未出过远门,我也不是那种喜欢旅游的人,对于出差的未知恐惧彻底让我下定决心!我一定要离开这里!离开,别无选择!无论说什么,我已不再对老东家有任何留念!到此刻为止,我才真正下定决心。我整理了手头上的资源,主要包括我的生成代码技术、对安全框架的理解、编写的博客文章,开始了我的找工作之路。

重获信心

        从开始整理资源,到着手开始投递简历,去异地面试。中间只用了不到一星期。我投递的公司全部都是XX城市的公司,因为XX城市离老家很近,不到两个小时就到。如果我跳槽失败了,我也可以回老家再住一段时间。反正老东家的待遇、环境、技术也不是那么吸引我,转正后工作半年,也没余下可观的本金。没必要再为老东家继续卖命,我告诉自己。

        首先去了一家小公司面试,只有几个人,面试官就是这家公司的老板,算是创业公司吧。首先是笔试,共三道编程题。第一道是对于Java的集合框架与数组的互转与排序,好像是把一个杂乱无章的数组按照先奇数从小到大排序,然后在奇数后面追加偶数从小到大的序列。这个难不倒我。第二道题目考察了数据结构的二叉树,需要用到递归才能编出来,这个只弄出来90%,程序实际运行可能还是有点BUG,但是毕竟是纯手写Java代码,面试官还是比较满意的。第三道是设计一套权限系统,包括设计数据库并手写建表语句等。所有实际场景中,我对安全系统的理解最熟悉不过了,真是天助我也,毫无压力。笔试通过后开始聊技术,聊到我的生成代码技术的时候,面试官十分感兴趣,因为面试官自己也写了一整套生成代码的技术!他非常得意的让手下向我展示了他的整个生成代码的过程。即是同道中人,所以他很欣赏我,当即给了offer,一年发十五个月工资。虽然整个过程十分的愉快,但是考虑到公司的规模与破产风险,我还是说我回去考虑一下。

        经接着第二家面试。HR面试就不说了,技术面的面试官有点年纪,一直问我安全系统的东西。我能感觉到,这个人徒有其表。此话怎讲?因为我就我对安全系统的深入研究与理解,面试官提出此技术的许多相关问题,前后矛盾。我能判断出这个人在问我这个技术的时候,自己都没弄清楚。考虑到留个好印象,我就不便反驳了。公司规模中等,约100人。这家公司我从未考虑。让我回去等消息,一个星期后给了offer,我没去。

       第三家公司就是我现在的公司,上市公司,大牛云集。在我看来,仅次于BAT。各方面都非常好。

       第四家公司是亚信科技,是一家规模很大的公司,港股上市。当时去的时候,给我的影响不太好。公司居然停电了!员工从大楼里出来,场面乱成一锅粥。面试官把我带到另外一栋有电的大楼里,开始面试。面试的侧重点在于微服务,主要是SpringCloud技术。面试官所在项目组在做的项目是 "咕咪视频"。他是一个大牛,问的问题非常的多,除了微服务外,还问了数据库原理,三范式和事务等,还有中间件的RabbitMQ。他是一个非常注意技术细节的人,居然让我手写git原生命令,还好我平时github用的多,手写的次数相当多,哈哈。二面的面试官居然还是侧重问SpringCloud,可见这家公司对SpringCloud依赖性多么强,当然其它的比如设计模式什么的都有涉及。值得庆幸的是,SpringCloud技术也算是新技术,掌握的人并不是很多,因此鉴于我掌握的情况,他们还是很满意的,所以也给了offer。出手很阔绰!

        至此,面试了四家公司,至此全部面试通过。待遇什么的远远超过老东家。就这样,我重获信心。当然也免不了骄傲,不过也无可厚非。

分享是一种乐趣

        与优秀的人为伍,自然也会变的优秀。新公司里面的业务算是比较复杂的,但最重要的是有机会接触到更多的技术。在这里,分享是整个团队的共识。我参加了elasticsearch的分享、oauth2分享,在此之前我从未听说过这些技术。周围的每个人都身怀绝技,不夸张的说,三人行,二人均可为师。当然了,技术做到底,还是越精越好。公司鼓励分享,再也不用受到"学这个没用"的困扰。最好的例子就是,如何掌握Linux,这个问题可能困扰了我至少一年。因为已经脱离了Java,也脱离了Windows,真的是学起来毫无头绪。同事非常和蔼的把他的学习Linux所写的文件给我,大大缩短了我的学习成本。每每一想到此事,就对同事非常感激。我也毫不吝啬的分享了我的微服务技术。原来,技术分享从来就不是分享了就没了,而是互相提升的过程。

新挑战

         同事请假时间比较长。他的工作暂由我代理。这四五天披星戴月,做梦都在想项目上线的事情。不仅如此,项目上线的时候过程中,还要协调测试部门,保证测试正常进行。现场过来的大量数据,还要仔细核对,不能出错。为了这些事情,需要与各个部门对接工作。具体涉及到测试人员、现场实施人员、产品人员,对自生还要求得会打包整个项目,并在Linux上部署与启动。这几天感受到了前所未有的工作压力。功夫不负有心人,在19年12月31日,终于把负责的两个子系统成功上线。很高兴,现在的工作很有成就感。在程序员生涯里,我把自己升高了一级。

2019年深入骨髓的体会

  一个人如果不逼自己一把,永远不知道自己有多优秀!

       事实上,能够立刻在我脑子里浮现出来的那些事情,都是明确有益于我的职业生涯的,还有帮助我认识我自己的!

          

posted @ 2020-01-01 15:59  小大宇  阅读(153)  评论(0编辑  收藏  举报