有人说世界上有三个伟大的发明:火,轮子,以及 Kafka。
发展到现在,Apache Kafka 无疑是很成功的,Confluent 公司曾表示世界五百强中有三分之一的企业在使用 Kafka。在流式计算中,Kafka 一般用来缓存数据,例如 Flink 通过消费 Kafka 的数据进行计算。
而要谈对Kafka有多熟悉,我相信还是阿里的大佬们最有发言权,所以今天分享的内容,就是Alibaba内部首发的“限量笔记”,关于Kafka的精髓全部写在这里面了,真是不得不得不感叹:不愧是Alibaba的技术官啊,真的服了!
在现在这个浮躁而又拜金的社会,我相信很多人做技术并非出于热爱,只是被互联网的高薪吸引,毕竟技术岗位非常枯燥,不仅要面对奇奇怪怪的需求,还要不停的充实自己避免被淘汰。所以想要吃好技术这碗饭并不容易。
我一直在思考,我喜欢什么,我适合什么,我应该从事什么岗位。我的前同事东哥和我境遇相似,只是他比我毕业早了差不多十年,毕业之后读了在职硕士,有近三年没有休过周末,这一点我很佩服。
选择的重要性不言而喻,如果方向错了,再努力也是徒劳。回首走过的这几年,我自认为我在关键的节点做出了还算正确的选择。我身边有很多对职业发展迷茫的朋友,并不是每个人都有那么好的运气和毅力,很多人依然是在抱怨中继续做着不喜欢的工作。
在我后来做面试官的时候,我接触过很多开发者。有自学转行,也有培训之后转行,但是大多都是盲目选择,并不知道自己真正适合什么,所以工作几年,依然没有太多的亮点。
自律对技术人员的成长很重要。每个技术人员都要知道在什么时间该做什么事情,该看书的时候看书,该放手的时候放手。正如前文提到的,当你选择了技术行业,那么毫无疑问你必须约束自己,我们的时间是有限的,所以不可能有太多的时间去打王者,或者去刷抖音。
前段时间,我的一个发小向我吐露心事,毕业两年,依然浑浑噩噩,看不到未来,打算学习技术。我告诉他,先把基础书籍刷一遍,如果能坚持看下去,那么找一份技术相关的岗位并不难,如果看不进去,那还是算了吧,即使侥幸找到工作,天花板也是有限的。最近,我的这位发小告诉我他已经放弃了。
我一直觉得自己在大学并没学多少东西,只是学会了忍耐,磨练了意志力。在无聊烦躁的时候可以看看书。
在学生时代,我强迫自己每个假期读两本名著以及坚持绘画。现在,我强迫自己每月写一篇文章或者翻译一篇文章。
任何行业都必须坚持才会有所收获,比如我们常常谈论的三万小时定律。然而技术人员应该坚持什么?这取决于你的兴趣。坚持写博客,坚持读技术书籍,坚持做开源项目,坚持答疑解惑等等,可以坚持的东西很多,我们不知道结果如何,但过程本身就足以令人兴奋。坚持的前提是自律,如果无法约束自己,坚持也无从谈起。
刚做技术的时候,我也很迷茫,只是针对性的看一些教程,弥补自己的弱点。那时候我还不知道作为技术人员引以为傲的资本是什么,如果只是按部就班的做业务,难免让人感觉无聊。大学时,我也曾为梦想坚持过,可惜一切都成为泡影,于是我明白了梦想和现实的差别。
我不知道究竟什么状态才算忘我,或许我也没有经历过。忘我不是不吃不喝,而是对工作的热爱,比如问题不解决就辗转难眠。程序员被认为是远离灯红酒绿的工作狂,大多数时候都与孤独为伴,从前年开始,我变得特别宅,几乎放弃了社交和娱乐活动。
之前做项目的时候曾有过一段时间的疯狂。因业务繁重,每晚差不多十点到家,为了能更快的完成项目的第一版,回家之后还要继续工作,凌晨一两点睡觉成为常态,那段时间真的是有点麻木,筋疲力尽。
很多时候我不知道这样做会换回什么,可能依然是一无所有,但是有所坚持总比无所事事要好一些。正如罗曼·罗兰说过的,“生活最大的烦恼不是工作,而是无聊”。
如果问一个面试官最看重应聘者的哪一方面,我想一定是解决问题的能力。
解决问题需要一种心境,沉着冷静是解决问题的前提。我发现很多人在遇到问题时,立刻就在 QQ 群或者论坛提问,其实都是一些比较基础的问题,这不是一个好习惯。技术人员必须学会独立思考,毕竟大多数情况下只有自己可以拯救自己。不管遇到多难的问题,首先要冷静,然后慢慢分析问题的原因。说一些我常用的解决问题的方法。
一、睡前思考。 躺在床上闭上双眼,回顾一遍遇到的问题,非常管用。记得上初中那会儿,我喜欢在睡觉之前或者上学的路上解几何题,有趣的是,往往都能得到答案。刚工作时,我还有个怪癖,喜欢在解决问题之后大吼一声甚至手舞足蹈,想要释放一种压力。所以每次遇到问题,我总是告诉自己,明天这个时候我就会大吼一声,真是有点好笑。
二、学会放松。 说一件自豪的事情,大学期间,我几乎玩遍了塞班手游,总结出很多道理,其中之一是,任何难闯的关卡在休息一晚之后都可以轻松完成,技术问题往往也是如此。
作为技术人员必须有所追求,比如代码洁癖。林纳斯对不规范的代码总是直言不讳,“你的代码是一坨狗屎”。不知道从什么时候开始,我也有了一点强迫症,DOM 层级,CSS 属性顺序,变量命名,末尾分号,空行等等,差一点就感觉不舒服。
除此之外,不要把工作局限在需求之内,在前东家的时候,技术经理一直强调做点工作之外的事情,申请一些专利,虽然有些面子工程的意思,不过我赞成这种观点。作为前端工程师肯定不能只是写页面,而后端工程师也不应该只是做 CRUD 的工作。
很多人不知道应该追求什么,正如前文提到的,这要看你自己的定位与兴趣,毕竟作为程序员,爱好应该非常广泛。如果你把工作作为兴趣,我觉得也无可厚非,把工作做到极致也是一种追求。
如果现在回答文章开头的问题,我想只要认真做一件事情并坚持下去,或许就会成为引以为傲的资本,即使资本市场再寒冷,我们依然可以从容应对。
对于很多Java工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。
整理的这些资料希望对Java开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,其余的都不重要,希望读者们能谨记这一点。
再免费分享一波我的Java面试真题+视频学习详解+技能进阶书籍
点击这里即可免费获取以上我收集整理的全部学习资料
点击这里即可免费获取以上我收集整理的全部学习资料