FRONTEND 八月 07, 2020

一篇文章搞懂前端学习方法与构建知识体系

文章字数 10k 阅读约需 9 mins. 阅读次数 0

在大前端的成长路上,很多的同学都非常的迷茫,看到一座座越来越高的山。慢慢在工作中也对自己的职业发展也特别迷茫。有些粉丝也私信我问过我一些职业发展的问题,还有“我应该学习什么技术?”,“学习到什么层级才是个头”。

这次我给大家带来一遍文章,给大家讲讲怎么样才是一个优秀的前端工程师,怎么做自己的职业规划,如何学习和构建知识体系。

什么是优秀的前端工程师?

大家眼中的优秀工程师

  • 熟练掌握 Vue React
  • Web 标准
  • 会用 Webpack Babel
  • 十年经验
  • 性能优化
  • 闭包,函数式编程
  • 会写 NodeJS

这些其实都是错误的认知!

真正优秀的工程师

明确衡量的标准:

  • 领域知识
    • 不同工程师的工种有不一样的领域
    • 领域知识是互相关联的,不能只一方面很强
  • 能力和潜力
    • 能力 —— 明确的能力要求,或者角色的要求,能力达标就能进入下一个级别。
    • 潜力 —— 能力的上限,同样的层级的人,同样能写出同样的代码,但是区别在于独立解决问题的能力和出解决方案
    • 每年都有 KPI(30% - 优秀,60% - 普通,10% - 不合格),潜力评估(预计几年内可以晋升)
  • 职业规划
    • 工程师 (P5) —— 独立工作
    • 资深工程师 (P6) —— 核心和骨干,小组长的位置,能带领突破难题
    • 专家 (P7) —— 领域专家,在某一种领域成型一种权威,推动发展,在自己的领域内可以用通用的解决办法解决问题
    • 经理 (P8)
  • 如何晋升?
    • 持续提升技术能力
    • 在领域中有沉淀
  • 成就
    • 用你达到的成就来证明你的能力
    • 根据你曾经做过的东西,曾经承担过的事情

职业规划

You are the owner of your career.

  • 很多人觉得职业规划是“老板”,“爸妈”,“老师”的事,其实你才是职业的主人
  • 很多同学在执行的时候就走形了,很多人觉得职业晋升是老板的意识,如果老板没有给我们晋升我们就认命了吗?
  • 不是的,你的职业你才是主人,职业发现的结果我们要为他负责,所以我们要有行动(要不就谈判,要不就离职等等)
  • 职业规划对我们自己影响是最大的,所以我们要有一个 owner 的态度,拿出一个方案来保障自己的结果
  • 明确知道自己在这个公司什么时间,要达到什么样一个级别,如果不能就要思考怎么做到
  • 所以在职场中,要保持一种危机感和紧迫感,如果我们一旦误就会止步不前了
  • 我们该投入的精力,没有去投入,是没有人可以为你负责的,职业发展也是一样的

职业发展

  • 成长 - 通过学习,沉淀获得成长
  • 成就 - 成长后必定能做出一定的成就,成就可以用来证明自己的技术能力级别
  • 晋升 - 获得成就就能证明自己可以晋升到下一个级别

业务型成就

  • 业务目标
    • 理解公司业务的核心目标
    • 目标转化为指标(UV,PV,页面加载时间,成交的钱)
  • 技术方案
    • 业务指标到技术指标的转化
    • 形成纸面方案、完成小规模试验
  • 实施方案
    • 确定实施目标、参与人
    • 管理实施进度
  • 结果评估
    • 数据采集、数据报表
    • 向上级汇报
    • 没有结果是不可能获得晋升的,只会落得一个“勤奋耐劳”的称号

案例

  • 业务目标 & 指标:点击率
  • 技术方案:给 tab 组件增加手势操作
  • 实施 1:在业务中加入对应功能,并上线
  • 结果:点击率提升 3 倍
  • 实施 2:编写通用 tab 组件,向所有导购业务推广,形成制度

工程型成就

  • 目标
    • 质量
    • 效率
  • 方案与实施
    • 规章制度
    • 工具
    • 系统
  • 结果
    • 线上监控

案例——XSS 攻击的预防:

  • 目标 & 指标:XSS 攻击白帽子反馈漏洞
  • 技术方案:整理安全手册,review 历史代码,代码扫码工具
  • 实施:对全体前端宣讲,整体 review 代码,更改代码发布流程
  • 结果:XSS 漏洞大幅减少

技术难题

  • 目标
    • 公认的技术难题
    • 能影响业务
  • 方案与实施
    • 依靠扎实的编程能力

例子——爬取商品价格:

  • 背景:在某浏览器插件项目中,需要爬取各个网站价格比价,但是各个网站会采用图片价格等手段防御
  • 方案:引入 JS 端的数字识别技术,靠 AI 技术解决

前端与学习方法

对学习知识体系的态度,应该不要去强求,而是去理解知识体系的完整性和框架,多面,多维度,多方面的去累积来补足,补全自己的知识体系。

  • 很多同学在质问学习的东西有没有用
  • 很多知识其实是没有用的,但是有一些微小的点可能会用上
  • 但是没有办法确切去知道它的有效性
  • 我们要知道完整的知识体系,然后抽取重要的知识点进行加固
  • 重点在于每一个知识点,看到就学一下,学不会不要紧,下次再看到时就加固学习(强扭的瓜不甜)
  • 系统化学习 + 随机性学习的结合

前端技能模型

  • 领域知识
    • 不同的领域会学到不一样的知识
    • 实践中学习
  • 前端知识
    • 建立知识体系
    • 对知识体系掌握度是重点,而不是对知识体系的量级
  • 能力 —— 刻意练习
    • 编程能力
    • 架构能力
    • 工程能力

前端技术不是武林秘籍,

真正的能力是练出来的。

学习法

1. 整理法

我们要追求的是一个完备性,而不是追求完整或者完美性。而我们重点是选择对的逻辑关系

  • 顺序关系
    • 记录一个体系的流程顺序关系
  • 组合关系
  • 纬度关系
    • 每一个维度单独看都是完整的东西
    • 多个维度去看是一个立体完整的东西
  • 分类关系
    • 按分类列出知识

整理方式

  1. 先找线索,通过搜索,看手册,看文章搜集。先找到方向
  2. 找到多份资料
  3. 进行对比,加强完整性

2. 追溯法

  • 源头 —— 从源头开始建立知识基础,提升可信度
    • 最早出现的论文、杂志
    • 最初的实现案例
  • 标准和文档 —— 找权威性,但是不能盲目的看,要做好对比,保证准确性
    • W3.org
    • Developer.mozilla.org
    • msdn.microsoft.com
    • Developer.apple.com
  • 大师 —— 可以去看他们对技术的定义,公信力更高
    • Tim Berners-Lee
    • Brendan Eich
    • Bjarne Stoustrup

通过这些方法建立知识基础,可以建立我们知识的准确性,可信度,公信力。同时在面试的时候可以提出你在那个权威的地方看到这个知识,也可以体现出你的专研和深挖能力。

通过时间的的延伸,知识会不停的演变和被不同的人重新定义,所以我们要知道并对这个知识点有全面认知,从而在不同的领域或者场景下更加能抽丝破茧的方式去理解复杂,繁杂的知识。

面试官怎么想?

面试内容三要素

  • 深度范围
  • 覆盖面
  • 区分度

面试过程

  • 打断
    • 打断意味着不感兴趣
    • 打断是一种提示
    • 如果面试官不要你,直接就让你说,然后叫你走就好了
  • 争论
    • 争论与压力面试 —— 保持自己优雅仪表和态度
    • 争论的技巧 —— 用追溯法找到可信度高来表达
  • 难题
    • 展现分析过程 —— 一边想一边说
    • 缩小规模 —— 化繁为简,把问题拆解

问题类型

  • 项目型
    • 针对项目询问
    • 项目中实现了什么?
    • 遇到了什么难题,又是怎么解决的?
    • 主要考量我们在项目中体现出来的能力和思维
  • 知识型
    • 体现自己的知识体系
    • 会就会,不会就不会
  • 开放性问题
    • 通常是没有标准答案的问题
    • 设计方案的能力
    • 思维活跃程度
    • 管理型问题
  • 案例性问题
    • 设计、编程类
    • 给予场景并且给出解决方案
    • 用来考验我们平时的工作状态
    • 看的是过程不是结果(结果答的是正确的,过程不一定是对的,想看的就是你平时的工作状态,遇到问题时的状态)
  • 有趣的问题
    • 一般到达这个问题,基本面试已经过了
    • 关键不是你答什么,重点是体现自己思维的活跃度
    • 不一定要给到完美答案

知识体系

建立自己的知识体系,确保自己体系的完整性。在学习的过程中可以补充这个体系,达到很高的完美性。而且是可以在自己的心里有这么一个完整的知识体系,而不只是在我们电脑放着就好。


Q & A

  • 职业规划,我不知道往哪里去?
    • 每个人目标不一样
    • 有人可能喜欢深挖一个技术,有些人就想做一个伟大的项目
    • 所以你要去哪里取决于你的人生目标是什么
    • 但是没有什么选择是错的,重点是你想做什么,就找到能做你能做到的地方
  • 大厂会不会对 5-6 年工作经验有顾虑
    • 大厂对工作年龄不稳定
    • 但是如果你的工龄与你的能力不成对比,那肯定是有问题的
  • 在公司学不到东西,怎么办?
    • 学不到东西是你自己的问题
    • 要有 owner 意识,学不到东西就去找东西学
    • 我们不能把学不到东西推卸给公司或者环境
  • 我年龄大了,还有可能进入大厂?
    • 如果你觉得你的年龄无法进入 P6,那就继续提升到更高的级别
    • 总有一个级别是不在乎年龄的
    • 不论是年龄还是自己的学历,都不是我们应该关注的点
    • 更应该关注的是,我们有什么亮点可以让别人忽略我们的缺点
    • 所以要持续提升自己技术的认知,这些核心竞争力
    • 不要一直盯着自己不能改变的东西

我是三钻,一个在技术银河中等你们一起来终身漂泊学习。
点赞是力量,关注是认可,评论是关爱!下期再见 👋!

公众号《技术银河》回复”前端知识体系”,可以获得这个系列文章的知识脑图

推荐专栏

小伙伴们可以查看或者订阅相关的专栏,从而集中阅读相关知识的文章哦。

  • 📖 《数据结构与算法》 — 到了如今,如果想成为一个高级开发工程师或者进入大厂,不论岗位是前端、后端还是 AI,算法都是重中之重。也无论我们需要进入的公司的岗位是否最后是做算法工程师,前提面试就需要考算法。

  • 📖 《FCC 前端集训营》 — 根据 FreeCodeCamp 的学习课程,一起深入浅出学习前端。稳固前端知识,一起在 FreeCodeCamp 获得证书

  • 📖 《前端星球》 — 以实战为线索,深入浅出前端多维度的知识点。内含有多方面的前端知识文章,带领不懂前端的童鞋一起学习前端,在前端开发路上童鞋一起燃起心中那团火 🔥


上一篇:
下一篇:
0%