阅读 11405

非科班出身的 5 年前端的曲折蜕变之路

前言

回顾整个 2020 年,用一个词来总结自己的话就是 蜕变。今年也是自己工作的第五个年头,所以这边文章算是对自己毕业工作五年来的回顾和总结吧。

出身

我是一个非计算机科班出身的前端开发者。本科专业学的是电子信息科学与技术,说实话,虽然它是我的专业,但我对它不是很了解。高考结束根据就业率选择了这个专业,确实就业率很高(毕竟没有三方协议学校不给发毕业证,怎么办?很多人随便找个单位、场子签个劳动合同),一句话:垃圾。而自己在大二的时候就在想,这个专业毕业后能干嘛?如果我现在被迫辍学?我能靠它养活自己吗?答案是:不能。

比较庆幸的是自己在大三下半学期遇到了一个嵌入式培训班,他们来学校招生,说毕业包推荐工作(但是就像抓住了一颗救命稻草),于是花了一万四报了培训班来北京上了两个月课,开了好几十期的培训班在我那一期结束后就倒闭了,机构都倒闭了,还想推荐工作?怕是想多了……

但是好在它把我带到了计算机这条路上(当时 C 和 C++ 的课我学的很好,虽然现在都忘的差不多了),很庆幸它改变了我的人生路。后来就在想,我高考当时为什么不报计算机呢?是因为不好找工作吗?毕竟自己当时那么喜欢打游戏(有机会就去网吧)……

没办法,就开始自己找工作吧,由于培训班上课,错过了大四的春招,之后就在秋季招聘上投简历,投了一段时间发现没有公司愿意要自己,就开始投社会招聘,也一样的结果,一直持续到 12月份。于是回学校收拾行李就来了北京(当时在陕西),继续找,找了好久,终于在 2014 年的最后一天收到了两份 offer,最后选了中科院计算所。

后来就在所里实习、毕业之后就留在所里工作,一待就是五年,现在想想自己也真是厉害,发现很少有人能在一家单位待这么久的。

选择前端

在所里实习了半年,一直在做云计算方面的工作(其实就是打杂,天天装操作系统、装 openstack [开源的云计算平台]),自己想写代码,但是可能自己 low ,老大说:你现在写的代码没办法用。当然在实习的这段时间也学习了一些云计算方面的知识,语言方面学了 python。但说实话,那段时间的工作很痛苦,天天装操作系统、装 openstack、配网络,各种报错,看着各种标红的错误内容我不认识它,它也不认识我,就网上一顿查,各种试,也不知道哪个有用,哪个没用。现在想想那会儿的自己,一是基础太薄弱(可以没基础)、二是也没有好的方法(学习、工作、成长),总之就是一头雾水。

六月底七月初毕业了,处理完学校的所有事情以后,背个包就又回到了北京。回来跟老大提了一个自己的想法,我说:x老师,你看我这个情况,基础太薄弱,我们组又是做的云计算,对我来说门槛实在是太高,刚好我们想给 openstack 写一套自己管理界面(原生的管理界面面向专业的开发者,对普通用户不友好),所以我想跟着xx写前端。老大说可以,没问题,这就踏上了我的前端之路

2015~2019/07

于是,就愉快的开始了我的前端生涯,当时由一个前辈带我,她做的技术选型和框架搭建,当时觉的真的好高大尚(不知道自己什么时候才能做到这一步)。

后端用的 PHP(当时宇宙第一语言),为了我能尽快上手,后端框架选了 Smarty,这个可能很多人都没听过,太老了;前端用套模版的方式(选一个好看的开源模版)。于是就进入了非常顺利的开发阶段,可能是因为自己有 C、C++ 的基础,当时学 PHP 感觉 so easy。前端是套模版的方式,前端三剑客也不用怎么深入,看看菜鸟教程开发完全没问题。照这前辈的代码开发了两个模块后觉得,哇,前端真简单,真爽。

到了第二年年中,自己就独立接手了一个项目,是重写x学校的学生心率健康检测的系统。从需求交流开始,系统的架构设计、技术选型(Java、Springboot、jQuery)、框架搭建、数据表的设计、项目前后端开发、和第三方的接口联调、测试,到最后的打包部署(项目、mysql、tomcat)、交付都是自己一个人在做,做完以后就感觉我好像上道儿了,前端就这样。

再到后来还陆陆续续的做了其它项目,接触了其它技术框架,比如 Symfony、Laravel,这都是 PHP 比较重要的框架。自己平时也在看书、学习,发现自己基础薄弱,各种看 HTML、JavaScript、CSS,还看什么人人都是产品经理、用户体验相关的书。4 年时间,自己其实也没偷懒,也一直在学习。但是成长非常有限。

在 2018、2019 年自己也偷偷的出去找过两波工作,那叫一个灰头土脸,被人按在地上反复摩擦和蹂躏。原因其实很简单,自己会的那些东西外面的公司早就已经不用了,公司用的各种框架技术自己全都不会,前端基础也薄,虽然自己一直在学(学习方法有问题,力用错了方向)。面试被问到各种问题回来各种查各种背,但最后还是没找到工作(很正常,有哪个公司的社会招聘会招这么菜的人进来)。找工作一直持续到 2019 年 6 月、7 月,终于还是停止了(缺的东西太多了)。第二次发现自己真的好菜,那段时间的压力真的好大……

但是在找工作的过程中,也看到了一些方向和问题:

  • 自己的消息太闭塞了,严重脱离了外面的节奏,还记得那会儿第一次看各个大公司的招聘信息,发现公司的要求和自己会的全都对不上

  • 自己的努力一直是有问题的,力用错了地方,用错了方向

  • ...

但也是这次找工作经历让自己彻底清醒:

  • 外面的世界都在做什么?

  • 外面的工作都需要什么样的人才?

  • 怎么提高自己?

现在看来,要回答这个问题很简单,但是在当时消息闭塞的自己看来完全是一团迷雾。

  • BOSS 直聘,查看各大公司的的招聘信息,就能看到外面需要什么,自己缺什么。

    想当年自己用的还是什么智联招聘、前程无忧

  • 知乎、掘金会告诉你怎么提高自己,并且各种大佬的文章会带你提高自己

2019/08 ~ 2020/05

这段时间,开始了各种学习,因为当时会用 Vue 开发项目,于是就从 Vue 技术栈开始入手。

  • 通读 vue 全家桶(vue、vuex、vue-router)、webpack 官方文档

    以前都是网上各种找教程,殊不知,官方文档才是最好的教程

  • 阅读 vue 全家桶和 webpack 的的源码,从源码中去找面试答案,而不是背题

    面试的时候各种问原理,不会。背题?两句问到你发懵

  • nodeJS 技术栈,包括各个框架(express、koa、eggJS)源码原理

这一套流程下来,再加上自己之前的全栈经验,就可以形成一个简单的闭环,一直持续到 2019 年结束,终于,把自己这几年欠的技术债补了一部分上来。

2020 年春节,开始刷面试题,也开始了自己的博客写作之路,从最初的 CSDN 到中间的 思否,再到后来的 掘金。刚开始就是春节刷面试题,有时候会记录一些,但是对于面试还是很实用的。

年后回到北京,继续刷面试题,然后开始去面一些小公司,采用面试学习法,一边面试一边学习。

刚开始还是没什么效果,都没有公司给面试邀约。原因很简单:就是自己的简历有问题,不会包装自己的简历(项目经历)。后来就去知乎上查,怎么写好简历,修改了好几版,终于简历没问题了,投出去开始有面试邀约,接下来就是一个熟能生巧的阶段了,多面几次,你的表达、思维逻辑、回答问题时的语言组织都会练出来。到最后你都会觉得有点烦,发现面试的套路都一样,问的问题也都差不多,到后面基本上你都可以抢答了。

直到 3 月份,才拿到自己的第一份 offer,运气不错,不论是公司规模、团队规模还是给到的薪资,都很满意。接着就拿到其它更大的公司和更好的薪资的 offer,到最后的互联网巨头的 offer。

到这里总算是从之前的环境出来了。中间没有休息,周一拿到离职手续周二直接入职新公司,开始了新的工作。

蜕变

从 2019 年 8 月到现在,一年零五个月,不论是从精神层面还是个人行为都完成了一次彻底的蜕变(成长):

  • 精神层面,从原来一团迷雾,到现在清晰的个人成长、职业规划

  • 行为,不论工作日还是节假日,每天早晨五点多起床学习(看书、看源码、思考、写文章);另外将原来看抖音、玩游戏的时间全部换成了学习

成果

  • vue 全家桶 和 webpack 源码、nodeJS 相关的技术栈,看了好几遍,可惜没有写相关的技术文章

感想

其实回头来看,时间真的挺短的。现在发现生活中有那么一部分人,和自己年纪相仿,但他们的起点比较好,路走的比较顺(很早就找到了正确的方式、方向),所以就比自己走的要远一些。

有时候在想,如果当年自己就能有现在的意识,那现在的自己会是什么样的呢?是不是比他们走的更远?想到这里就笑了,其实每个人都有不同的人生路要走,没有所谓的如果,但有一点可以肯定的是将来的自己一定比他们走的更远,这个时间快则一年,慢则两年。

当然说完全不悔(恨)那是假的,但是这就是自己,走了和别人不一样的路。想想当年两个礼拜突击中考、一个月突击高考、大四四个月的培训班,再到最近的 2019/08 ~ 2020/03 的突击补前几年欠下的技术债到入职理想的公司,发现自己确实跟比人不一样。一直引以为傲的学习能力和一个好脑子(记忆力好)支持着自己遇到的每一个关键节点,每一次都是短时突击而过。

但是现在,引以为傲的资本不再用于短时突击(投机取巧),而是变成一种常态化支撑着自己向前飞快的的迈进。

总之,这一年感觉自己的变化真的很大,不论是说话、做事还是其它,做任何事情、走每一步路、做每一个决定都清楚自己在做什么、目的是什么、结果是什么。

今年年年中的时候列过一个计划,告诉自己今年要做(学)什么,早早的都完成了。完成计划的过程中发现了一些人尽皆知的真理(但能坚持做的人却很少):

  • 计划

    计划真的很重要

  • 沉下心来

    今天列计划的时候其实是有点慌的,发现自己要学的东西真的是太多了,今年能学的完吗?但最后发现都完成了,而且时间还有富余。当然完成过程中也会遇到困难甚至有时候会有一些慌和压力,但是告诉自己坚持、沉下心来,随着时间一天天的过,发现很快就会完成。

    举个反例:学算法,你会发现这个就比较难坚持,中间很容易遇到问题导致你无法沉下心来坚持,就会出现中断、甚至放弃,然后两年后发现,算法这座山你还是没越过去

    自己在阅读源码、看一本书的时候也会出现这种现象,沉心就很重要了,遇到问题不要怕,那句真理:书读百遍,其义自现,真香。

2021 计划

以下内容均已技术文章的形式输出

  • 工作

    • 晋升

    • 团队基建

    • 业务开发

  • 个人

    • 掘金 Lv4(努力),没流量升级太难了

    • 读书

      • JavaScript (红宝书、黄皮书、绿宝书 ...)

      • CSS(需要系统性的补一下)

    • Vue2 全家桶源码再读一遍

    • Vue3 全家桶源码阅读

    • NodeJs 相关技术栈

    • React 技术栈

    • B 站输出一些视频(文章 + 视频效果更好)

    • ...

结束

最后送给自己和读者两句话:

  • 当阅读成为习惯,知识也就变成了常识

  • 经常总结、更新简历,每隔半年或三个月出去面试一次

本想着 2020/12/31 24:00 之前总结完的,没想到还是过点了,现在已经 2021/01/01 01:14。之前也是没写过这样的总结,思路感觉有一些混乱,但总算是出了第一份职业总结(回顾),以后这也要变成一种常态化。

掘金年度征文 | 2020 与我的技术之路 征文活动正在进行中......

文章分类
前端
文章标签