作为技术工作者,我们不得不学习很多东西,持续学习是提升自己最重要的方式,尤其是对于那些想进入大厂的朋友,除了实战经验,还需要学习大量“八股文”。而已经在大厂工作的朋友可能在“卷”业务知识。当然,处在不同阶段的人学习需求不尽相同,对应的学习方法也不一样。今天我将结合我自己的经历和你分享一下不同阶段的学习方法。
进大厂前
对大多数人来说,进大厂前的准备是最消耗精力的部分,并且最终并不一定能进大厂。在前面的课程《Java 程序员进大厂要做哪些准备?》中我已经介绍过进入大厂的学习路径,其他编程语言学习路径也差不多,这里就不赘述了。今天我们主要来讲讲学习方法。
前面几讲中,我分享了一些必看的技术书籍、项目上的准备工作等等。然而这些学习路径实践起来并不容易,并且对大多数人来说平时工作已经够饱和的了,剩余时间不是很多,这种情况下我们如何去啃完那么多书呢?
其实虽然我们每天的工作时间比较长,但大多数并不是高度紧张的工作。一些低效的会议、低效的沟通、培训占据了我们半数的工作时间。因此上班的一部分时间是可以用来学习提升的,我会利用这些低效、空闲的时间去做一些提升自己的事情,当然这里不是很建议你把纸质书抱到公司去看,建议下载 PDF 版本学习。即使不是为了跳槽去大厂,坚持每天提升自己也是很好的。让看书变成一种习惯,长期坚持,一定会有不小的收益。
早期我觉得下班后的时间和周末是自己学习提升的主要时间段,但随着学习计划的实施,我发现利用工作时间学习更为高效,并且工作的碎片化时间加在一 起其实非常可观。相信大多数科技公司也支持员工提升自己的技术能力,持续精进自己,无论对个人还是对公司都是双赢的局面。
上面的学习过程贵在坚持,每天都要去做,可以根据你现在对理论基础的掌握程度制定一个粗粒度的学习计划表,比如要看哪些书籍,每本书籍需要多久看完?设置一个 deadline。这个 deadline 不要限制那么死,我个人不是很喜欢一些要求强执行力的学习方法,因为并不是每个人都可以实施得那么理想,很多介绍学习方法的文章都在强调毅力、目标,以此来保障准时完成前期制定的某个任务。
但是,如果你到点儿没完成任务怎么办?
你一定会很焦虑,开始陷入负面的情绪,相信很多人都是因为这个中断了学习计划。挫折管理是学习过程中一个很重要的点,也是经常被忽视的点。遇到挫折的时候要有点儿阿 Q 精神,要对自己“圆滑”点儿,不要质疑自己,比如可以告诉自己“这个问题是一个很复杂的问题,99% 的人对这个问题都需要耗费很长时间去理解”,要知道比预计时间多消耗一个月并不影响你进入大厂,悲观放弃才是最可怕的事情。当然阿 Q 精神也不能用得太多,偶尔用一次可以,否则就真的是在“找借口”了。
进大厂后
相比而言,进入大厂后,你的学习需求可能没有那么集中和强烈,一般是熟悉所负责项目的业务知识,而业务知识是一个很细的领域,比如营销、金融、供应链等等。
除了了解并且掌握日常工作内容,技术人员还需要自我驱动去学习业务知识,加深对系统的理解才能找到帮助业务突破的机会。这个阶段你的职业发展瓶颈基本已经和编码关系不大了,这个时候需要你走到业务、产品的前面去看问题,才能拿到好的结果。
具备良好的“业务 sense”是大厂对很多同学的第一要求,那么如何提升“业务 sense”呢?
在这里,我要提醒你,千万不要只顾闷头写代码,要和产品、运营走得近一些。知道他们为什么要去做这件事情?做了有什么价值?多向产品、运营提问题。因为技术同事是他们想法落地的最重要的一环,直接关系到他们目标的成败,因此不用担心问得多会不会让业务同事觉得厌烦,放心大胆地去问吧!
在以往的职业经历中,我一直认为产品和业务是最好的老师,我经常和朋友说“大厂的产品和技术薪资差不多。他们能拿到那么多薪资自然是有道理的,我们应该向他们学习”。
当然,我也遇到过一些大厂同事买了业务书籍自己啃的,这样当然没有问题,但是还是要以所在团队的业务同学为主,求同存异。毕竟不同的公司、不同的团队业务执行落地的过程是不一样的,甚至和书中的一些描述大相径庭。换言之,就算你看到的书说的都是真理,但是可能和你所在团队今年的目标不一致。即使你按照书上的去实施了,也帮助不了业务,自然拿不到好的结果。
除了业务知识的学习,我们还需要有“数据 sense”。千万不要认为“数据 sense”就是写 SQL,每个 SQL 背后其实还是业务知识,而数据跑出来的结果就是你所做事情的最终价值。数据需求都是业务提出的,因此要提升“数据 sense”同样要跟着业务去学习,要知道业务是从哪些数据维度去分析问题的、以及为什么要分析这些数据。
总结
今天我们围绕进大厂前和进大厂后两个阶段介绍了一些学习方法,进大厂前需要看不少书籍、技术文章,比较费时间和精力,可以充分利用工作的碎片化时间、制订计划,同时要做好挫折管理,持之以恒。进大厂后主要学习业务知识,这里看书并不是最重要的,要跟着产品、业务去学习,主动提一些问题,千万不要闷头写代码,要知道技术是服务于业务的,技术最终要辅助业务产出价值。
今天的分享就结束了,希望我的分享可以帮到你