04月30, 2018

[2018-04] Four Seasons In One Month

May The 4th Be With You.

第一周

这段时间在恶补数据结构与算法,基于切面的统一日志Rest处理也开发完毕,参数支持纯注解化,下一步就可以小范围推广使用了!嗯,一切看起来都很美好。

"His judgement cometh and that right soon."

从10日开始公司因合规问题被调查,随即员工因“不可抗力因素”被放假一周。次日便看到网络上铺天盖地的报到,第一次觉得自己处于新闻中心。本身做为公司的技术对业务的合规性本身并不了解,不过本着职业操守与已被磨练的所剩无几的“公司归属感”,我从内心深处还是相信公司只是配合调查,嗯,一切都会回归正常的。隔天终于公司的公关部门行动了——发布了对内的告示信,可是维稳手段的段位之低让人无法直视,全篇文章避重就轻并利用大段反问句想反证公司的合规性。一股浓浓的悍跳狼论段即视感:“如果我是狼我会这么玩吗?如果我是狼我会xxxx……,如果我是狼那x号不是早死了吗……,如果我是狼请问我这么玩的收益在哪里?!”。 好了好了,我突然明白了两点

  • 年轻人一定要多看书多思考,时刻想着提高自己的姿势水平,不然连一篇洗地文章都写不好,这到底是自己的损失还是公司的损失呢?
  • 是时候可以开始找新工作了。

第三周

用了上周一整周时间 退工+仲裁维权善后问题,终于可以开始新的求职历程了。吸取以前两次的跳槽经验,面对这种被动求职的情况不能急于求成,不然只能是从一个泥潭跳往另一个泥潭。我规划在本月剩余的两周里,一半时间做准备,一半参加面试,下个月开始全新的工作。

自从上一次跳槽后,我一直以来很注重在工作中培养自己的编程思想,做为非科班出身的程序员最大的区别就是思考问题的方式,而在这一点上编程思想是基石。所以在准备阶段我决定秉持“大处着眼,小处着手”的原则,将知识点划分:

  • 基础:数据结构与算法、集合、IO、多线程、JVM、设计模式(各种思想的衍生)
  • 框架:Spring(MVC)、MyBatis(ORM)、Dubbo + ZK(RPC)、SpringBoot(SOA)
  • 中间件:Redis(缓存、分布式锁、SSO)、RabbitMQ(JMS 消息通知)、ElasticSearch (缓存、分词搜索)
  • 容器:Tomcat、Nginx
  • 数据库:MySQL、Oracle(索引)
  • 项目 : 对金融类项目的经验总结(并发交易下的安全与高可用、分布式环境下交易的最终一致性、服务架构的拆分设计)

“大处着眼”这些核心项看似相互独立,但又彼此相互作用,让编程成为一种艺术的可能。 在“小处着手”方面,将Java集合看做为数据结构与算法的实现,进行了较为深入的总结(flag.集合类的总结文章);SpringIoC容器进行了简单的造轮子仿写(flag.LiteSpring的文章);并发编程(从线程到基于AQS的JUC)。在做了较深入的研究后产生了新的看法与理解,发现很多编程思想是通用的,这样的工作以后还是要坚持进行下去。

最后一周

最后一周接到了大概12个面试邀请,除去外包性质的工作,安排了8场面试。目标互联网金融行业,涨薪20%,3天内面试完5家,最终拿到4个OFFER + 1个口头OFFER。

在面试的5家公司中:3家P2P + 1家支付 +1家区块链 在技术栈选型上尽管团队规模与业务场景不一但是几乎都选择了Spring全家桶构建服务,由此可见现在公司对微服务分布式的钟爱。

在面试过程中,有1家还保留笔试过程,笔试题难度偏简单,主要考察一些Java基础细节问题。其余4家都直接面试流程,最短1轮面试,最长4轮面试。 公司面试流程的长短从一定意义上反应出其工作流程的简繁与否。

在钟意的两家面试中,主要原因是与面试官沟通过程愉快(互相交流看法,而不是单方面的做为被考察者)。在我目前看来往往注重基础与编程思想的团队更有想法更有对所做产品的愿景。

最终如愿以偿的加入区块链这一充满未知与希望的崭新领域。 机会与挑战,危机与契机,世界瞬息万变,未来无法预知。 希望自己可以一直保持本性的前进——但行好事,莫问前程


alt

本文链接:https://check321.net/post/may_the_4th_be_with_u.html

-- EOF --