二哥,你好啊,为什么我感觉永远满足不了公司的要求?我是 2017 年学的 Java,但因为没有人带,到年末才敲得出 Hello World,2018 年上半年报了培训班学了前端,还有 Java SE 和 Java EE,以及 MySQL,投了一些简历结果遇到了很多培训机构;2019 年感觉基础不足,比如 MySQL 索引、多线程都不太会;2020 年一面自考,一面学技术,一面投简历,然后努力克服拖延症和自卑。
哇,这是读者 smile 给我发的私信,我置顶了好几天了,但一直没想好怎么回答他,因为我感受到了“生活不易”的艰辛。从 2017 年到 2020 年,三年多时间,仍然没有找到一份合适的工作,这的确令人感到心塞。
人的学习能力本来就有着天差地别,有些人很快就能在一件事情上做出成绩,有些人就需要花更多的时间,这是毋庸置疑的。
可能有些小伙伴会觉得 smile 这三年多时间一定没有好好努力,所以才导致现状的。但在我看来,其实并不是的,人总要能够认清自己,认清现实。
我就觉得 smile 挺值得尊敬的,三年多时间,有些人可能早就放弃了,但 smile 还在坚持着,并且一面自考,一面学技术,一面投简历,更关键是,他在努力地克服拖延症和自卑。这就是勇士!
举个例子吧,有些小伙伴喜欢看篮球,顶级的篮球运动员就那么几个,天赋异禀,比如说姚主席,更早时期的战神刘玉栋。但更多的是,摸爬滚打,有些熬了整个青春,仍然是饮水机球员,但正是这些边缘球员的存在,才让篮球有了更多的可能性,对吧?
顶级球员让我们膜拜,他们是我们的精神偶像,但那些边缘球员,在我眼里,他们才更值得尊敬,生活摧残了他们,他们却对生活报以微笑。
篮球领域随着时代的发展,由大中锋时代,到得分后卫时代,再到小前锋时代,在不停地变革中。技术领域更是日新月异,公司的要求更是让人跟不上脚步,这就是现状。
一年前刚学会的技术,到了今天,可能就被淘汰了。之前很火的安卓,三两年时间,就被冷漠了,过渡到了现在的大前端时代。
能够保持长久生命力的,也就那么几门语言,比如说 Java、C++ 和 C,对吧?
就我自己而言,还是蛮幸运的,大学的时候就学了 Java,一直靠着 Java 养活自己到了现在。虽然期间也学习了很多其他的技术,比如说已经被淘汰的 Flex、ActionScript,甚至 Ruby 等等。
公司想要跟上时代的步伐,就必须得更新技术栈,而我们程序员,为了能够满足公司的要求,就必须要求自己保持对技术的敏感度,能够挖掘自己的在技术方面的热情,不至于被淘汰。
对于 smile 来说,问题就出在,学习的节奏有点慢,入门的时间有点久,我想原因可能并不是没人带,而是没有找到合适的方法。
我一开始学 Java 的时候,有老师带,但敲出来 Hello World,仍然花费了快一个月的时间。只是配 JDK 的环境变量就折腾了很久,更是搞不懂为什么安装了 JDK 之后,还要安装 JRE。
即便是在屏幕上打印出来了 Hello World,对 main 方法的理解,对关键字的理解,都非常模糊。至于为什么要先编译,后运行,为什么要生成字节码,为什么字节码又能在不同的操作系统上运行,这些问题,困扰了我很长很长一段时间。
后来参加工作后,我买了一本 《C++ Prime》,尝试着去学习 C++,结果硬是抗了一个半月的时间,最后还是放弃了。感觉学不会,这还是在我有 Java 的基础上。
有些人,对技术非常敏感,很容易上手,而我和 smile 一样,都属于对技术非常迟钝的那一种。
我之所以能够找到工作,可能是比较幸运吧,放在十年前,的确是互联网发展的风口。现在呢,小伙伴们都知道,行情不好,找工作很难。
在不能满足公司的要求之前,我们唯一能做的就是去打磨自己,锤炼自己,给自己充电,等待机会,破茧成蝶。
就学 Java 来说,我之前花了两个月的时间,整理了一套完成的学习路线,很多小伙伴看了之后,都直接给我发了大红包。
这让我感觉自己的付出没有白费,非常欣慰。我再贴一下链接,小伙伴觉得不错的话,欢迎给我个三连,赶快行动吧。
https://www.zhihu.com/question/311758187/answer/1069317771
学习路线,学习方法,对一个人的成长帮助是巨大的,不仅可以减少学习时间的成本,还可以更高效,更能在短时间内掌握一门技术的重心,这样的话,在投递简历或者面试的时候,就心里有底,对吧?
我在 Java 这个领域摸爬滚打了十多年了,所以,总结的经验还是有参考意义的,这点我不想谦虚了。
另外,针对 smile 的情况,我还想嘱托几句。小伙伴们应该注意到了,smile 在 2018 年上半年的时候报班学习了前端,这个时间就花得有点冤枉,这钱花得也有点不值。
没有人能真正做好全栈,甚至全周期工程师,学得太多了,就容易在某些层面上一知半解,这个弊端太大了,我深深地体会到过。
要学后端,要学 Java,就先一股脑把 Java 的核心知识点掌握,比如说面向对象编程、集合、多线程并发、JVM、性能优化,这些知识就够学习一段时间了,不要再花时间去学前端了。另外,像 Spring,Spring Boot 也必须得掌握,甚至有可能的话,还要去钻一下源码,写点开源的小项目,这样的话,成长就会很快,另外也不会感觉基础不扎实了。
像 MySQL 的话,顺其自然地学一学,基本上后端程序员接触 MySQL 的机会还是蛮多的,但一开始不要着急着去学,在做项目的时候涉及到的时候就钻一把,就够了。
最后,希望 smile 一切顺利,如果能够在学技术的同时,克服掉拖延症和自卑,那就太完美了。拖延症对于每个人来说,或多或少都会有一些,我自己的应对方法就是先做那些必须得做的事情,有些不重要的事情拖的久一点也无所谓了。
自卑,对于我们这些学习能力差的人来说,也都会有一些,就看轻重了。我现在通过写作打开了影响力,树立了自信心,那种心底的自卑感也就减轻了很多。记得《头文字D》里有一句话,夏树对拓海说的,“人,最重要的是找到属于自己的世界,人生才有意义。”我觉得这句话还是蛮有深度的,拓海的 AE86 就是他的世界,写作是我的世界,而 smile,你也应该找到属于自己的世界,祝你好运。
各位小伙伴们,不要把满足公司的要求挂在心上,应该把找到属于自己的世界挂在心上,这样的话,成为一名称职的码农,也许并没有那么难。一起加油,奥利给!
------------------
公众号:沉默王二(ID:cmower)
CSDN:沉默王二
这是一个有颜值却靠才华吃饭的程序员,你知道,他的文章风趣幽默,读起来就好像花钱一样爽快。
长按下图二维码关注,你将感受到一个有趣的灵魂, 且每篇文章都有干货。
-------------- --- -
原创不易,莫要白票,如果觉得有点用的话,请毫不留情地素质三连吧,分享、点赞、在看,我不挑 ,因为这将是我写作更多优质文章的最强动力。