持续学习——程序猿的军备竞赛

  “持续学习”是几乎全部大神都会给菜鸟们的建议之一,这个概念也不是最近被提出来的,早在两千多年前古希腊哲学家梭伦就提出“活到老学到老”,这可算最先的“持续学习”。近些年来持续学习在IT领域里又不不断被说起,程序猿们成为持续学习最大的一群实践者,我从没看到过那个其余行业的普通员工要像程序猿同样学习那么多东西(也多是我少见多怪)。 前端

究其缘由,我以为有这样几点。 vue

技术涉及面广

有些人在公司承担着很大的责任,可能什么Spark、数据库、网络、linux……都得懂一些,要知道这随便一个方向,都有耗费一我的几个月甚至几年的能力。但幸运的是其实你不用知道太深,够用就行了。但这个“够用”多是实际工做中够用,但面试中不够用。java

轮子多

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly94aW5kb28uYmxvZy5jc2RuLm5ldA==,size_16,color_FFFFFF,t_70
这点貌似在前端领域尤为明显,像前端框架有什么react、angularjs、vue……,每一个框架目的都是为了简化前端的开发,但在具体实现上各自不一样,并且各自有各自的优点,缺乏一个集大成者的框架。了一个缘由是计算机行业细分领域比较多,有些领域比较新,缺乏一种工具,而后有人就会跳出来开发一个。另外可能会有人以为这个工具很差,再开发一个,须要通过长期的技术迭代,才会逐渐有个比较成熟的工具和框架。python

技术迭代快

计算机行业一直在追热点,10年11年比较时髦的物联网,后来的大数据与云计算,区块链、机器学习,深度学习,AI,AR,而后今年的5G…… 还有不少比较小众的热点。有些确实是炒做出来的热点,啥实质性的东西也没留下,有些确实给整个技术行业带来的变革。可是追上了某个热点,对于程序猿来讲就是加薪 加薪……。毫无疑问,这些热点都是技术快速迭代的产物,要想追上这些热点就意味着你得学习。react

行业竞争压力大

计算机行业的高压力不少人都有耳闻,996是常常的事,996ICU几个月前还火了一把。但依旧有好多人拼命往计算机行业里挤,并且以前网络统计,计算机专业成为了高考考生的新宠,为何? 其实就是由于程序猿的工资高啊,以前看数据某国内top10院校毕业生5年后的平均薪资,能够被一个渣本院校刚毕业的程序猿秒掉,就这样,你们固然想作程序猿了。但大批人的涌入,各个公司对程序猿的要求也水涨船高,你不学新东西,若是有一天你被裁,你连其余公司面试都过不了。以前在油管看某个硅谷大佬的视频,几年前leetcode你随便刷100-200题,基本上硅谷哪些公司能够随便选,如今远远不够了。 国内在以宇宙条为表明的公司不懈的努力下,刷leetcode的军备竞赛已经逐渐开始了。 linux

互联网行业,随着你们学习的热情愈来愈高,线上培训也愈来愈多。像以前,好多人遇到技术问题都是上网查博客,查官方文档,有想法的人还会在问题解决以后写个博客,方便其余人。如今不行了,好多人都等不到问题发生的时候,都想着在问题发生前学会问题的解决方案。这固然是个好事,未雨绸缪,等到问题真正发生时从容应对,但有些不良商家或者我的借机牟取私利,借机推出一些《为何程序猿都该懂点xxx》之类的课程,赚取你的血汗钱。要知道报班就像办健身卡同样,你是为了提高本身,但公司只是为了赚钱,若是你报了一次都不去,你这钱不就是打水漂了吗。我敢确定,确定有好多人报班和办健身卡同样,报了就没下文了。 angularjs

抛开那些一开始就放弃的人,那些人确定很难提高本身。咱们来讲说那些坚持下来的人。你觉得你本身把课程里的内容仔仔细细看一遍,你就会了?too young too simple, some time naive!还差的远呢。就拿最近很火的极客时间为例,我感受好多课程都是在以一种科普的形式来给你讲述某个东西,固然我不是说这种方式很差,但这种方式有个缺点就是可能会有些浅显。因此意味着你学了也许只是学了表面一些花里胡哨的东西,而内功毫无提高。 面试

固然我不是diss极客时间的课程,其实里面有好多好课,我我的已经买了20多个课程了(若是内容质量差我是不会买这么多的)。说下个人感觉,有些课程我学的比较轻松,好比《linux性能优化》《计算机网络》,由于我以前作过两年的运维,好多问题是我曾经实际遇到过的,当时我解决不了别人解决了的,但这个问题曾经我心中盘踞了很久的,这些课程给了我曾经苦苦思索很久的答案。我之因此学的轻松,除了老师讲的好以外,比较重要的一点是我理解这些问题以后的背景,我已经有足够的基础了。 正则表达式

固然我确定也买一些对我毫无用处的课程,好比《机器学习40讲》《go语言核心36讲》…… 不少都没看,都是一时冲动买下来的。由于目前我也不从事这些领域,虽然感兴趣但没有什么精力去学。可是若是我之后有时间精力仍是会回过头来看下这些内容的。发表下我对极客时间课程的感觉:你能很轻易看懂的不必定是好课,由于你可能不少都会了。你很难看懂的不必定是坏课,可能你基础不够。可是能启发你思考,给你实践带来指引的,通常都是好课。 算法

再回到“报班”这个话题上,首先你们理性报班,不要被标题软文一忽悠就乖乖掏钱,你得评估自身需求,合理规划本身的时间精力以后再报。另外如今在线培训机构课程众多,内容质量良莠不济,作选择时要擦亮本身的眼睛,选择一些口碑平台比较好的课程。

说了这么多,再来讲下持续学习的负面。没错“持续学习”,一个积极向上,很是正能量的词,也是有负面的。不少程序猿都会在业余时间刷下脉脉匿名圈,圈子里除了哪些秀offer、秀收入让人很酸的内容外,还有一些是对面试的吐槽。其中比较有名的有那次关于头条面试手写红黑树的吐槽了,如今已经演变成头条自带红黑树buff的梗了。除此以外,还有不少面试都是问的绝大多数人实际工做中彻底不会用到的东西。若是全部的面试都这样,再加上近年来各类裁人、996的的新闻,愈来愈多的程序猿势必会以面试为导向提高本身,可能会花费大量时间精力学习一些彻底无用的技能。“面试造火箭,入职拧螺丝”这一说法也不是空穴来风。
  
为何愈来愈多的公司会在面试上来难为应聘者?我简单分析下并谈谈个人见解。

求职者愈来愈多,其中不乏滥竽充数之人

当竞争愈来愈激烈的时候,坑就那么多,固然得提高经过的门槛。拿什么来筛,确定不能用有些人人都能快速学会的东西筛啊,因此好多面试官都会选择用算法题,或者有些框架的细节来面试,这些都是须要大量时间积累大量的练习才能学会的。

喜欢炫技的面试官

首先我以为这是为人的问题。这种面试官的都是拿本身擅长的冷门知识点去面别人,比人上面说的头条的手写红黑树,我猜想可能就是出自这种人。若是遇到喜欢炫技的面试官,除了自认倒霉外,能够尝试翻转主动权,要让对方绝对你比他牛逼(瞎说的),实在遇到人品不行的,能够反怼回去。

不合格的面试官

有些公司有些团队可能都比较年轻,资历尚浅,不懂的挖掘出候选者背后的潜力。他们经常使用的面试方式是拿本身会的去面别人,至关于拿本身所在的知识圈去圈候选者的知识圈。人人都有本身的知识盲区,都有本身的擅长点,若是面试官这样面,最后看到的确定只有交集那部分,极可能会错误估计候选者的能力,错失人才。固然若是面试官的知识圈足够大,这样也没问题,怕就怕面试官本身都能力不够。因此让新人去当面试官,除了对候选人的不尊重外,也可能会得出错误的面试评估。

对候选人不合理的要求

上招聘网站随便找个岗位看下职位要求,我相信他们组内不少人都达不到,这些要求可能就是想让这个岗位显得高大上一些,固然也增长了面试的难度。

若是你想跳槽,你确定得考虑到上面这些问题。你不可能改变面试官,你能改变的只有本身。面试官不合格,你只能尽量释放出更多的光辉让他看到。因此努力学习吧,去刷leetcode,去看框架源码,你只要学的比别人多,你确定能脱颖而出。可是你也别忘记了,别人也在学,因此这就是一场知识的军备竞赛,谁停下来谁死、谁慢谁死、谁低效谁死。

持续学习的人,除了真正想提高本身的,除了面向面试学习的,还有一波面向自我安慰学习的,这些人学习只是为了缓解本身的知识焦虑。我相信大多数人都有一颗上进的心,但不多有人真正有上进的执行力,这些人可能以为看一篇博客、看一本书就会有提高,觉得简单付出就会有收获,因此持续学习成了他们的安慰剂,缓解了他们的知识焦虑。最可恨的是还有好多人靠贩卖知识焦虑来挣钱。

最后,理性看待持续学习,不要随波逐流,不要随意追热点,不要轻易放弃。我刚毕业那会儿,由于技术太差,并且缺少正确的指引,因此一直啥都想学,当时是作运维,就学linux、python,后来学docker,再后来学java,并且曾经还花时间学过机器学习,没一个学精的,都是略懂皮毛。转开发以后,主力学java,如今也能算是一个合格的java工程师了。学了这么多,最大的体会就是本身的时间精力有限,要学会合理分配利用,还有一点是基础东西才是最优价值的,好比什么正则表达式、gc都在《编译原理》(龙书)里有介绍,感受编译原理会为你铲除不少技术的学习门槛。

相关文章
相关标签/搜索