2017 年就要过去了,明天就是 2018 年的元旦。今天在公司加班保障生产,抽空来码字写一篇贴子,记录下 2017 年的重要事件。
今年是比较重要的一年,我已经 25 岁,这个年龄是人类智力达到最巅峰时期的一年。按照之前的计划,在这一年我要读懂最难读的书,看来这个计划要延期了。幸运的是一切不再迷茫,高等的数学已经能够构建起基本的学习框架和最重要的逻辑抽象,虽然依旧困难,但至少看起来不再那么不明所以。
今年跳槽换了家公司,临走的时候领导象征性挽留了一下,我提出要继续留下要涨 2000 薪水,领导不答应,我就走了。现在看来,辛亏领导没答应,跳完槽工资涨了整整一倍。最重要的是目前这家公司大家技术水平普遍很高,项目的技术架构比较先进,业务非常复杂,这种地方才可以锻炼能力。
跳槽前就摸到了 java 高级工程师的门槛 --- 对系统集成的理解,对多线程和锁的掌握,对 JVM 和 GC 的理解,对网络协议,数据库系统的理解以及对算法的一些粗浅认知。作为一个从其他专业转行做计算机的人来说,这些概念的理解需要补充非常多的科班知识,而这些知识市面上的培训班是不会教授的,原因很简单,很难教会,而且不是初中级程序员最迫切需要的知识。
今年的技术栈取得了长足的进步,彻底巩固了 java 高级工程师应该掌握的知识,并且入门了大数据技术,了解了机器学习的主要架构和算法。
因为项目处理的数据量非常大,单表千亿条的数据,而且需要实时查询,数据是采取的 hbase 存储。理解 hbase 的基础是对 LSM 树这种数据结构和 HDFS 这种分布式存储的特性有全面的理解。rowkey 的设计和 hash 摘要,预分区,phoenix 中间件查询,集群故障排查等等。
对 mapreduce 的理解,主要是在写 hive 的 udaf 函数的过程中建立的理解,纠正了之前直觉上认为 reduce 处理全部数据的错误认知,实际上 reduce 只处理一部分 key 的,精妙的 hash 算法应用!
机器学习分为数据挖掘,特征工程,学习模型建立,参数调优和可视化展示等几个部分,其中最难以理解的部分就是特征工程和参数调优。这确实是一个惊人的领域,几乎所有 ACM 中的精妙思想都可以被应用到,几乎所有高深的数据部门都可以被涉及到,这是一个挑战,同时也是从未出现过的机遇!
深度学习,推荐大家看下这个网址 https://www.zybuluo.com/hanbingtao/note/433855。这七章就像七卷带了封泥的预言书,可以带人进入深度学习领域,当然前提是数学要好才能看懂。
今年也面试了不少新的员工,我作为面试官的原则就是:(操作系统 + 数据库系统 + JVM + 多线程 + 集合框架)乘以对算法的理解,这种面试套路选取的程序员水平一般都很好。
独立从架构设计,方案选型涉及,项目计划编写,项目进度跟踪等多个方面实际管理了一个比较复杂的项目,获益良多。认识到管理的重要性和挑战性。
今年我的姐姐结婚了,祝福她生活美满幸福。我也有了自己心仪的人,计划着彼此的未来。当然,在北京仍然买不起房。
2017 要过去了,明年再接再厉。明年计划先夯实高数基础,对高等数学的代数,几何,分析三个领域取得更深刻的理解。未来的世界属于人工智能,而追随这个趋势最有效的行动就是理解数学。
最后用自己的亲身经历告诉所有非计算机相关专业的朋友们,计算机专业可以做的,我们也可以,但是我们先要学习他们所学过的,并要学的更多。切不可因为自己不是本专业的就总对自己降低要求,否则当有一天你的工作对专业素养要求极高时,也就没有理由让别人不再看低你了。
来源: https://www.cnblogs.com/liuhui2010518/p/8157388.html