一点总结

488 阅读11分钟

为什么选择前端

  大一大二的时候随大流学着计算机基础,也没有加实验室,虽然不算浑浑噩噩,但是也没有什么职业规划。大三上升大三下的那个假期,面临着下学期要开始找实习的压力,必须确定一个工作方向。因为之前跟 YXT 学长做过一个小网站,对前后端都有一点了解,于是就在这两个方向上抉择。挣扎了一个礼拜后,最后选择前端,一是感觉比较酷炫,二是听说入门比较快。

成长过程记录

第一阶段 大三上暑假(2018年1月底~3月底) 前端入门:html(5) + css(3) + js

  入门阶段对我来说是比较痛苦的,身边没有学长和同学从事该方向,只能靠自己野蛮生长。虽然看完了 w3c 的教程,但还是感觉自己好像什么都不会。无奈之下,花了 1K 在慕课网上买了两个教程(前端小白入门系列课程 和 前端进阶:响应式开发与常用框架)。
看完之后,基本掌握了切页面的技能。但 js 基础还是太薄弱了,就去拜读了红宝书(《js高级程序设计》)。

第二阶段 2018年4~6月 春招+学习 React 框架

(1)React:当时我学习一个技术点一般分三步 - 一是看教程入门,二是找实战教程学一下,三是了解下底层原理。
1)React 入门:阮一峰的 React 入门实例教程,React 官方文档。
2)React 实战:慕课实战教程- React 高级实战 打造大众点评 WebApp,程墨的《深入浅出 React 和 Redux》
(2)春招:
我的春招基本就是不断受挫的过程,所有面试几乎都是一面挂(光腾讯就挂了三次),但是自己心态还算平稳,知道自己入门晚,那就一步一步慢慢来。
当时整个春招的状态就是白天在牛客上看面经和面试,晚上做各个公司的笔试。所幸在春招的末尾,收获 华为 和 小米的 offer。因为听说华为实习会随机分岗,就毅然前往北京小米实习了。

第三阶段 2018年7~9月中旬 小米 mui 国际部实习

  2018年7月2号,入职小米实习。当天就被排进了一个新项目-基于 Vue 的 WebApp 项目,嵌套在国际版小米浏览器的信息流中,做今年亚运会活动的推广。
由于是第一次实习,加上之前没接触过 Vue,前几天就处于很紧绷的状态。后来跟带我项目的FWH沟通了一下,了解到需求并不是很赶,慢慢学就好了(实习沟通很重要,不要一个人憋着)。
就这样学习了新的框架 Vue,做了人生第一个线上项目,接触到了一个项目从 需求评审->商定接口文档->开发->联调->打包->测试->最终上线维护 的全过程。另一方面,实习期间业务并不是很重,让我有时间去研究框架的底层实现,而这一段时间的沉淀,也为我后续的秋招增加了不少底气。
实习期间读完的书:

  • 阮一峰的《ES6入门》
  • 《vuejs实战》
  • 《剖析Vue.js内部运行机制》
  • vue技术内幕(博客) - vue2.x版本
  • 《Promise迷你书》
  • 《你不知道的JS》
  • 《深入浅出Node.js》
  • 《图解http》

第四阶段 2018年8~10月 秋招

  七月底,各大公司的提前批就已经陆续开始了。自己也进入了不断地投简历面试的状态。此时与春招最大的改观就是心态沉稳了许多,更多地是抱着交流的心态去接触面试官(而不是以前那种要去征服面试官的浮躁)。凭着985本+大厂实习+还算扎实的基础,秋招的面试基本都能进入到第二轮,至于能不能拿到 offer,也跟运气有关,不用去强求,放平心态就好。
秋招面试一般是这样的:
一面:前端基础,计算机基础(计网考察的多),有的公司还会考察手撕代码。
二面:考察项目经历(为什么用这个技术栈,底层原理了解么),以及根据场景给解决方案。
三面:一般面试官都是大leader,比较看眼缘,遇到过问智力题和职业规划的。
以下是秋招的战果:一共投了60家公司,面试了20家,过了8家。

公司结果
华为优招两轮技术面,offer。
快看漫画四轮技术面 一轮hr。offer。
一点咨询四轮技术面 一轮hr。offer。
有赞三轮技术面 一轮hr。offer。
shopee两轮技术面,offer。
老虎证券两轮技术面,offer。
地平线四轮技术面 一轮hr。offer。
网易提前批投的邮件事业部,未去面试。正式批投的杭研,调到考拉。offer。
搜狗三面技术面。
快手三面技术面。
百度凤巢二面挂,智能云一面挂。正式批面试拒了。
远算科技二面挂。
今日头条二面挂。
腾讯云二面挂。
爱奇艺提前批二面挂。正式批笔试后无反馈。
趣店二面鸽。
京东金融一面挂。
中国银联一面挂。
猿辅导一面挂。
小米一面挂。
拼多多笔试挂。
贝壳笔试挂。
小红书笔试挂。
搜狐简历挂。
阿里巴巴简历挂。国际事业部。
好未来/迅雷/苏宁/58/顺丰/珍爱网未去面试。
去哪儿/YY/CVTE/网易雷火/Keep/陌陌未笔试。
新浪/滴滴/美团笔试后无反馈。
携程/蘑菇街/OPPO/唯品会/马蜂窝/猫眼电影/阅文/映客直播投递后无反馈。
作业帮/上海微盟/4399/金山WPS/360健康/360/知乎投递后无反馈。
知乎/虎牙直播/微众银行/多益网络/斗鱼/Face投递后无反馈。

第五阶段 2018年11月-19年2月 网易考拉 pop 组实习 + 腾讯补招

  2018年11月,正式入职网易考拉实习。刚入职的感受就是组里的人都异常忙碌,每个人都跟进着两三个项目,leader 也说过几天要让我单独负责一个中后台项目。压力山大,一方面是因为接手的这个项目之前的负责人已经离职了,只能自己去慢慢理解业务;另一方面是因为之前没有单独负责过项目,怕出问题。在经过几天的思想斗争之后,还是选择和 leader 进行沟通。所幸 leader 人很好,给安排了 mentor,带着我梳理了下业务,再加上自己之后几天的摸索,终于慢慢理清了整个项目。
经过了差不多一个月的适应期之后,慢慢的适应了我们组的工作节奏,已经可以单独负责三个中后台项目了(ucc, spiderman, mirana)。

腾讯补招:

  在实习期间,收到了腾讯补招的信息,就抱着再试试的心态投递了。再经历了三次技术面和两次 hr 面后,很幸运的拿到了 pcg-qq 空间的 offer。

第六阶段 2019年5月 重回前端学习

  毕设差不多弄完了,继续回归前端学习。
五月份跟着慕课网实战教程,完成了美团PC端官网,技术栈为 vue(elementUI) + nuxt + koa + redis + mongodb

第七阶段 2019年7月至今 入职鹅厂

截止至2020年1月,以校招生的身份在鹅厂工作了半年。主要做了以下几件事:

  • 接手了 QQ 小程序三个管理端。
  • 为运营管理端接入 Sentry 系统,监控用户使用时前端层面的报错。
  • 为开发者管理端接入 Monitor 系统,自制工具,监控 node层 所有 pb 接口的运行。
  • pcg mini 项目:闪光的我 - 微信小程序
  • 配合 2019 tweb 大会,采访阿里水澜-rax(serverless ssr)
  • 搭建管理端 vue 组件库,提升后期管理端需求开发效率。
  • 研究 protobuf 校验工具,封装成 ci 插件,解决目前业务中未对提交的 pb 文件进行校验的痛点。
  • 四次组内分享:GraphQL,mini 项目研发,1113 发布故障小结,SCF 探索。
  • 沉淀了 12 篇 KM 文章:
    • 《GraphQL》
    • 《Sentry 上报接入》
    • 《monitor 监控接入》
    • 《tsw 与业务代码的交互逻辑》
    • 《node 层使用 protubuf》
    • 《pbLint - 从小工具到oci插件》
    • 《自制 vue 组件库》
    • 《简析 orange-ci 工作流》 - KM推荐
    • 《1113 织云包发布故障小结》
    • 《探索 docker 本质》
    • 《scf 使用初探》
  • 为 oci 做 12 月的 epc 举证。

  感觉这段时间,收获满满。看到了和大佬们的差距,也逐渐喜欢上了写代码的过程。下一个半年,先试着在 node 这条路上走走。

2020年1月至2021年2月,鹅厂一年主要工作:

H1 - 四星

  • 一. 推进上半年大组 EPC(研发效能) 评估
      1. 对试点项目进行评估:了解 EPC 标准和相关流程,对 Orange-ci 进行评估。
      1. 指导其他项目落地 EPC: 给大组接口人和组内成员做分享,为后续推动 EPC 全面落地提供指导。
      1. 提升 EPC 标杆项目到 Level 3: 提升小程序小游戏 H5 的 EPC 评分,已达到 Level 3。
  • 二. 开源协同
      1. 参与 TSW2.0 建设:
      • (1) 研究 TSW1.0 源码,输出到 km,为后续2.0重构做准备。
      • (2) TSW2.0 核心功能完成 90%,个人完成了代理机制(原染色),上报过滤以及ts-node兼容等功能。
      • (3) 完成 Benchmark,为下半年性能优化作准备。
      • (4) 针对 TSW 2.0 诞生背景,优化和实现,整理成 km,方便接入方了解。
      • (5) 在QQ 公众号管理端中接入TSW2.0,从业务角度进一步完善项目。
      1. 参与 Oteam 建设-TDesign
      • 协同完成一期组件开发:目前已完成认领的消息通知类组件的开发,比如 Notification/Message 的 API 设计, UI 开发, 组件开发,测试。
  • 三. QQ 公众号管理端重构
    • 搭建 node 层服务:
      • (1) 接入 Typescript, 提示代码质量。
      • (2) 接入北极星,替换 L5。
      • (3) 接入 TSW2,精简业务代码。
      • (4) 打通 STKE + OCI 自动化测试环境部署,提升研发效率。
  • 四. 重构开发管理端注册流程,解决现网注册流失的问题
      1. 重构开发管理端注册流程,接入人脸识别,提升用户体验。
      1. 采用新的数据上报模式,打通 Atta + Datahub + 灯塔 的数据链路。
  • 五. 沉淀了 3 篇 km 文章:
    • 《tsw2.0》
    • 《基于 EPC-Level-5 的工作流改进》
    • 《qq小程序管理端前端架构总结》 H2
  • 一. 推进下半年大组 EPC 评估
      1. 提升 EPC 标杆项目到 Level 4: 小程序小游戏 H5 下半年 EPC 评分已达 Level 4。
      1. 提升 QQ 小程序/ QQ 小游戏自动化测试到 Level 4:截止11月底,负责的标杆项目自动化测试全量覆盖率已达 60%,增量覆盖率已达 73%;同时小程序小游戏 H5 自动化测试评分已达 Level 4。
      1. 调研 Web E2E 测试并落地:
      • (1) 调研基于 DWT + Orange-ci 的 Web E2E 测试方案,并成功在小程序开发管理端落地。
      • (2) 将 Web 端到端测试方案沉淀到 KM 上,指导其他项目落地,获得 KM 推荐。
  • 二. 支持厘米秀需求迭代
      1. 实现 3D 换装在 手Q 内的闭环操作:将厘米秀 3D 换装 从卡噗 APP 上迁移到 手Q H5,同时接入银河监控,监测页面性能。
      1. 开发 3D 胶囊:对标 2D 厘米秀,开发 3D 胶囊。
      1. 接入春节红包,新增红包胶囊。
  • 三. 开源协同
      1. 共建 Orange-ci - 17 PR, 2 Features, 5 Issues
      • (1) 集成腾讯文档到 OCI,新增文档上传等内置任务,为 EPC 报告提供基础服务。
      • (2) 优化流水线 UI,新增模块查看格式化的 yaml 配置。
      • (3) 协同修复 issues。
      1. 共建 Oteam 项目 - TDesign - 19 PR, 8th Contributor
      • (1) 持续优化 TDesign 中消息通知类组件:Dialog, Message, Notification。
      • (2) 管理端接入 TDesign。
      1. TSW 2.0 持续优化
      • (1) 接入 Lerna 管理 TSW 开放平台插件,提升发布效率。
      • (2) 协助业务接入 TSW 2.0。
  • 四. 沉淀了 2 篇 km 文章
    • 《Web 端到端测试》 - KM推荐
    • 《Web 项目 EPC 快速接入指引》

  回顾下来,这一年还是做了很多事情的。参与了不少公司级重要的开源项目,也得到了总监的认可,拿到了四星。美中不足的就是没能走绿色通道,但自己也已经尽力了。 另一方面,因为接手了3D厘米秀,接触到了前端的一个垂直领域-3d渲染,希望今年能在可视化领域有所深入。