技术圈混得明白混得好,过硬的技术实力和过人的洞察能力一样都不能少。 掌握行业内在运作逻辑,职业生涯更容易获得认可。从入行到在职提升,不同阶段的学习重点完全不一样。
如何基于自己实际情况规划学习提升路线?
技术人如何高效学习工作?如何准备求职跟技术面?
【课程推荐】Java从零到就业一站通关
大家是怎么做的?
步骤一:把项目跑起来
•提前问清楚使用的技术栈和工具
•入职前熟悉相关操作,整理安装笔记
步骤二:熟悉表结构
•快速进行归类,了解系统包含哪些资源;
步骤三:写接口
•不要指望在短时间完全掌握项目,只需要有一个大致了解即可;
步骤四:熟悉公司的产品或原型
•用资源的视角去查看产品,模拟资源的增删改查操作;
BUG的产生原因:
代码坏习惯、逻辑漏洞、对底层原理的不熟悉、对业务的熟练度低;
如何提升:
从开发经验、业务理解能力、底层原理三个角度来分析。
开发经验
•积累的过程:多写代码、多踩坑、遇到的问题多了、自然解决能力强了;
•记录:要留出时间整理你遇到的BUG和问题;
业务理解力
•有意识地培养思考模式;(举例)
底层原理
•框架源码、数据库原理、linux原理、网络通信原理;
•借助网上的源码讲解、配合着阅读源码,可提高源码学习速度;(简书、知乎)
•入行1~2年的同学,性价比不高;
遇到了什么问题?
•在日常开发中,感觉自己逻辑能力不强;
•在开发中遇到瓶颈。
如何提升?
•可以做一些算法、数据结构、设计模式等相关练习,用于增强逻辑能力。
•入门好书:算法图解(Python)、图解设计模式、Head First 设计模式、大话数据结构
每个开发都应该研究算法吗?
•不同岗位有不同需求,使用Java开发业务并不常用算法。
哪些场景用到算法?哪些场景不需要?
•大数据处理、机器学习、架构组件开发等方向会用;
•想到大厂工作的朋友,需要刷算法;
•java业务开发基本用不着;
从性价比角度考虑,三到五年以内没有必要在算法上花过多时间。
基础扎实的情况下,可适当练习算法,将成为你面试中的一个优势。
什么时候开始都不晚,做好持续学习的准备;
对入行的学习建议
•如果没有完整的时间、可以利用碎片时间、找一些视频课程学习;•https://space.bilibili.com/37974444
•如果有完整的时间、可以接受系统化的培训;
•http://www.itcast.cn/channel/flow.shtml
•一定要写、不断地写代码;
•很多同学不喜欢写,因为写要动脑;但是不写就会有深刻的记忆;
岗位定位
•后端:比较枯燥、接触乏味的逻辑代码,成果很抽象;
•前端:相对比较有意思、成果是实在的页面,介于美学和逻辑之间的岗位。
上手难度
•后端:上手相对较慢,更注重体系化学习;
•前端:前期入门门槛较低。
后期发展
•后端:后期发展较好、以目前形式来看,后端还是团队的核心;
•前端:市场良好、有完善的晋升路径、但需要适应高速变化的技术栈。
如何选择?
1. 兴趣是最好的老师;
2. 如果对自己信心不足,不确定自己能不能学好,可以考虑从前端入门;
3. 如果对自己有信息,那么建议一步到位,直接学Java。
大厂招聘特点:
•学历要求;
•喜欢用算法题进行快速人才筛选;
•对于原理方面的知识比较重视,要求你对技术有足够深度。
学习方向
•leetcode上找算法题刷一刷;
•网上找大厂真题进行专项练习;
•https://www.bilibili.com/video/BV15b4y117RJ?spm_id_from=333.999.0.0
大厂是真正的解药吗?
•大厂适合你吗?工作强度、非核心团队;
•是否为自己的目标设置具体可行的计划?
•对现实的不满,把大厂当成精神寄托?
大部分人缺的不是学习目标、缺的克服惰性弱点、建立学习方法和学习习惯。