大多数人都陷入了一个怪圈,觉得只有自己够努力,掌握的技术够多,干的活够多,才能变得更专业更厉害,才能更有价值。
殊不知,公司招聘员工有且只有一个要求,那就是「你能够解决问题」。
什么叫你能够解决问题?
在前端领域,最简单也是最基本的要求就是,你能够按照设计稿实现对应的前端页面或应用,以提供相应的系统功能,来满足业务要求。
对于前端开发来说,实现设计稿,完成功能就是“问题”。
对于项目组来说,完成这个项目要求实现的系统就是“问题”。
对于公司来说,利用这个系统提供服务,就是“问题”
为什么会有这么多技术?为什么已经有这么多现有技术了,技术还会更新发展?
是因为现有的技术在使用时遇到了问题。
比如Facebook觉得大型项目开发不便了,发展出了React技术。大家觉得好用,就一起用。
比如Evan You觉得自己开发项目不方便了,写了个 Vue 出来方便自己,然后开放出来给大家使用。
比如有些经常出现的功能,大家封装成各种框架,库,也就是各种轮子。
轮子大家不能造吗?都能。简单一点的,大家觉得引入库不方便,所以干脆自己写。复杂一点的实现起来麻烦,还考虑不到各种边界问题,那就直接引入使用。
那么解决问题一定要懂这么多东西吗?
并不是。
试问各位同行,回顾自己的开发生涯,是不是经常上网搜寻解决方案或分析问题原因,甚至直接在群里寻找解决办法。
所以想提高自己解决问题的能力,从来不是懂得更多,而是知道如何去解决,知道去那里找解决方案。咨询公司都还有这么多呢。
那为什么我们还要努力学习?
因为有些东西如果你不知道,那么你在遇到问题时都不知道可以这么做,或者这样做更有效率。
有时候在你缺乏对应的基础知识时,你都没办法看懂解决方案。
回到这个问题的本身,「什么样的前端才是大公司要的前端?」。
基本的页面开发技术你要知道,比如公司使用的框架技术如何使用。
语言方面的掌握程度足够。比如JS。
能够用代码来描述并解决现实问题。比如算法。
重点在于公司需要怎样的人,以及面试你的人想看到什么结果。
我是真心希望大家不要卷了,虽然不可能完完全全花100分的努力,得到100分的收获,
但我还是希望大家能够正确地努力,花50分的努力,得到及格线之上的收获。