关于前端:十三年老程序员跟你聊聊前端

37次阅读

共计 4982 个字符,预计需要花费 13 分钟才能阅读完成。

前言
我叫定安,“提笔安天下,下马定乾坤”的定安!
34 岁,半只脚步入中年。回顾过去十多年的职业生涯,我此起彼伏,于是乎我有一个想法,做一些总结,也看一眼将来的布局。
接下来我会用两局部内容阐明一下,我对前端的了解和前端职业应该如何布局;
第一,我联合本身的亲身经历来讲述我在前端职业生涯中是怎么一步步走过去的。

第二,我会联合切身经验来聊一聊我对前端这个职业的认识,以及我对整个前端将来的认识。

每个人的经验必然都是不同的,如果我的观点和你的理念存在争议,心愿大家可能求同存异,如果你能从中失去一些灵感那不胜荣幸!

亲身经历

莽夫的童年

和大部分山区、农村的孩子一样,从小的家庭教育,导致我对学习没有明确的认知,所以上学时没有好好读书,大学随随便便上完,就进去折腾。所幸喜爱玩游戏,爱捣鼓电脑,所以和电脑结下了不解之缘。我从小性子倔,游戏不喜爱认输,也爱钻研,所以个别的游戏我都是高手。这份小骄傲,也让我感觉本人什么都无能,什么也敢挑战,当初说起来就是——莽夫!也是这样的性情决定了我后续的职业生涯。

开始:侥幸与致力

我的第一份工作来的十分乏味,是一个中外新闻社,他们要招网络管理员,就是开发网站,而后公布文章,甚至还要解决一些图片前期。
过后,面试这个岗位的人挺多的,而且学历都比我高,我是敌人举荐过来的。十分巧的是,在面试时,新闻社的社长电脑总是蓝屏,摄像头也不怎么好使,我因为上学那会常常给同学做零碎修电脑,我就帮他弄好了,而后问我会不会做网站,我其实过后啥都不懂,但我感觉这是一个机会,我想了不到 1 秒钟,我就答复说会做。过后这个社长就让我试用一个星期,如果没问题就能够正式去下班了,试用期给我安顿的第一个工作就是要做一个新闻的专题页。
记得过后还是用 dreamware 来写页面,页面布局还用的是表格布局,那一周每天晚上去网上找材料学习,那时的材料少的可怜,很多材料都是要免费的,最初下血本买了一些,从网上找了一些,每天搞到凌晨 1、2 点,还真就在一个星期内给搞进去。搞进去后就开始要保护他们过后的网站,是用 php 写的,又开始学 php 和 mysql,两个月工夫就这样边学边实际,最初终于能够把这摊事件 hold 住了。这次的经验,我粗浅的意识到人的后劲真的十分大,有时候你不逼一下本人,你都不晓得本人有多牛逼。也是从这个时候开始进入网站开发这个行业了。

北漂:学习与机会

我 2010 年来的北京,在北京找的第一份工作是一个莆田系的医院,刚来北京的时候工资很低,一个月 2000 多,然而包吃住,但所有以先活下来为次要目标。我到这家公司的时候,他们也是刚成立,所有都处于从零开始的状态。过后电脑都是我从京东上买整机,而后本人撺进去的,办公室的网线是我拉的,网站是从零到一开发进去的。这些后期的零零散散的工作大略用了一个多月,所有都跑顺后,医院开始失常运行,过后是须要在百度上做推广的,也就是 sem,然而找了 2、3 集体都没搞好,前面老板让我学着试试,于是又开始学 seo 和 sem,学了大略一个月,开始尝试着做,通过了一个月的实际总结,而后就开始能盈利了。前面越做越大,每天操作的 sem 账户生产大略能到上万级别。在这家公司干了有 2 年工夫,学到了很多货色,比方他们医院的运作模式,访谈节目怎么做,网络营销怎么做等等,后续,感觉没啥意思就想要进来看看,支出也能撑持我在里面租房生存。

守业:热诚与认知

过后,心田充斥着守业干一番小事的激情,但我分明的晓得真想要成事欠缺的货色还很多,所以过后就找了一家营销公司,就是帮其余企业出策动计划的,这家公司还是有点实力,过后暴龙、怀念、雅阁等很多的全案策动都是找他们做的,我就想去这家系统性的学习一下,一个产品是如何推向到市场并且盈利的。我过后在这家公司的职位是网络主管,次要做一些网站的开发,公众号的开发等等。在本职工作外,跟他们学产品的定位,人群画像,市场营销、品牌包装等等。在这家公司算是对公司经营、对产品经营有了一个清晰的意识。
有了之前的经验,赶上 14 年开始的全民守业潮,也随着这波浪潮折腾了三年,做过 O2O 洗车、O2O 医疗等等,这时才开始意识到,想要真正的守业不是简略的有一些实践就能胜利的。心态、人脉、资本等等这些细节都会成为限度你胜利的因素。这三年十分辛苦,然而是我感觉职业生涯中最乏味的一段经验,每天脑子里都是一些天马行空的想法,而后把这些办法和其他人探讨落地实际,尽管最初没能胜利,然而给我留下了十分空虚的一段人生,也让我对于守业有了更全面粗浅的理解,同时也结识了一群十分乏味的守业搭档。

稳固:积攒与思维

18 年结婚,因为要还房贷,须要一个绝对稳固的工作。所以去了汽车之家,真正的前端深刻应该说是从这段工作开始的。入职汽车之家的时候是高级前端开发的职位,做数据可视化我的项目。
过后思维还没有从一个创业者转变为打工者,所以跟下级相处的并不好。这个抵触的解决契机是,过后董事长有一个想法,要做一个三维的数据图表,这个活难度还是挺大的,团队中没人违心接,最初我就给接下来了。接下来后,在市面上调研了一圈,没有可重复使用的轮子,那就只能本人造,最终锁定的是用 three.js 来实现,之前也没有相干的教训,只能买书、查资料一步步的试。
历经一个月从零到一就给实现进去的,团队也因而失去了董事长的处分,领导也开始认可我的技术能力,开始调配一些治理方面的工作,从那时开始虚线带团队,负责团队的架构工作。一些有挑战的我的项目,一些前沿的技术我会打头阵,把整体的框架建设起来,而后将细节局部的实现调配给其余小伙伴。在这个过程中,积攒了大量的编程常识,同时也取得了团队所有人的认可。同时也意识到,守业不肯定要本人成立公司能力算守业,基于平台把一件事做好其实也是一种守业,从此开始转变思维。
从汽车之家进去就想找一个独角兽公司,通过期权或股票来实现财务幻想,先后在几家公司做技术负责人和技术联创,但又赶上了资本寒冬和寰球局势缓和,公司活下来都成了问题,所以,当初须要沉下心将之前的播种好好积淀一下,并认真的钻研一下将来的倒退布局。

职业规划
我剖析了本人性情中的让我受害的局部,也想分享给大家,心愿大家也能从中获益
敢于承受挑战:人与人之间的分水岭,可能也就差那么一两次挑战,跃过来当前,你可能发现前面海阔天空。同时这也决定了你对待问题的形式,你是否能从艰难中看到的更多机会。

满招损谦受益:当你很菜的时候,你身边都是菜鸡,如果你习惯从他们身上找自卑感,那么你永远不会有很大的提高,只有你真正的有本事后,你就会发现,你要学到货色太多了,多到你基本学不完,就拿前端来说,vue 全家桶、react 全家桶、构建工具、ts、畛域常识(数据可视化、3D)、多人协同、直播、vr、xr、小程序、app、桌面端、低代码、在线编辑器等等,这么多的货色,单说一个 vue 你做到精通了吗?所以你要对本人有个清晰的认知,你能力晓得你欠缺的是什么,你要如何去补足本人的短板。

不要给本人设限:不要仅仅把本人定位成一个前端开发,将来充斥了不确定性,如果前端行业不行了你怎么办?所以,抱着这一个准则,哪有钱往哪干,不会就学。人生和职场上须要学习的货色太多了,你岂但要在专业技能上可能胜任,你还要学会怎么做自我管理、如果你负责小领导,你还须要学团队治理,在生活中,你要学怎么经营你的人际关系,你还要学会理财等等,这些货色都是学校和父母教不了你的。只能你有了切身体会,能力造成本人的意识。当初比拟好的是,很多常识网上都有人整理出来了体系,你只有跟着学即可。当然也须要你可能去伪存真,这都是长时间的锤炼造就进去的。

我对前端的定位,划分成了 5 个阶段,每个阶段我会从技能上和行为上来论述,在以后阶段应该具备哪些因素。
1、初中级前端
对这个阶段的前端工程师,你只须要可能实现公司安顿的前端工作,就能够算是合格的了
技能要求

前端框架:vue 全家桶 或 react 全家桶,相熟并且可能基于此实现我的项目。

js:理解罕用的 DOM、BOM、ES 内置对象、相熟 js 语法,可能通过 js 实现页面交互。

css:各种页面布局以及一些简略的动效都能实现,并可能应用 less、sass 等预处理写款式。

git:可能应用 git 和团队成员合作开发。

行为要求

保质保量实现业务需要。

管好本人,和直属领导可能配合好。

2、高级前端
这个阶段,你应该是一个可能独当一面的前端工程师了,可能实现绝大多数前端需要,针对一些没有用过的库或框架,能够疾速动手,并利用到我的项目中。同时还要肩负起领导新人的职责。
技能要求

高级工程师具备的所有技能

构建工具:相熟我的项目中应用的打包工具 如 webpack、rollup 等,针对我的项目的定制化须要,能够通过配置或开发插件来解决,并开始关注网站的性能,晓得从哪些方面能够优化这些性能。

理解 C/S 的运行原理:开始理解网络协议、浏览器渲染流程、缓存策略、网关等原理方面的常识

大量接触并学习第三方库,如数据可视化中的 echart、d3,如游戏 pixi、Tween 等等

挪动端开发 | 小程序开发:可能应用框架或原生 来开发挪动端页面和小程序。

行为要求

可能独立实现一些有难度的我的项目,并有攻关技术难点的能力

技术水平和知识结构曾经开始初具雏形,针对问题,有能够分享的观点

帮助领导更好的把控我的项目

可能带新人,在新人有问题时能够给与帮忙

3、前端专家
这个阶段,你应该对前端有了一个全面且粗浅的意识。在面对需要时,可能拿出残缺的解决方案,并可能把控整个前端我的项目的开发节奏,以及解决我的项目开发中遇到的各种问题。并且开始关注,团队成员的造就,以及新技术的攻关工作。
技能要求

高级前端的所有技能要求

深刻框架或库的原理,在须要时有改写第三方库的能力

前端工具链:CI\CD,jenkins、nginx、docker 等有大抵的理解

在某个畛域内积攒了丰盛的常识:比方 3D 畛域内、游戏畛域内,在这个行业中能够提供成体系的解决方案

行为要求

可能用技术驱动业务,将技术利用到产品中

关注团队建设,能够正当划分梯队,并通过机制和制度保障团队的战斗力。

可能站在团队的角度,思考整体的利益,并通过布局来发明更多的价值,从而给团队内的其余兄弟带来利益

有残缺的常识体系,理解前端各个环节的组成及细节局部,可能疾速定位问题,并解决问题。

4、技术负责人
当你在这个阶段的时候,你就不能仅仅将本人局限于前端上了,你开始接触后端、数据库、运维这些和网络相干的所有环节。
同时你要为整个团队负责,你要有治理教训,保障团队的产出,同时你还须要为团队去争取利益等等。
技能要求

数据库:关系型数据库和非关系型数据库都要理解,起码晓得外围能力和罕用模式。

后端语言:java、node 等,java 起码晓得一些,但 node 必须是精通的,后端语言具备通用性,所以精通一门,再迁徙了解另外的就比拟容易。

运维相干:nginx、docker、k8s、虚拟主机、分布式、网关等等,你须要晓得大中小型公司在演变过程中,整体的技术架构变迁是如何实现的。

合作相干:不单须要从技术角度思考架构问题,你还须要从工作流上设计正当的架构,公司在不同的倒退阶段,你应该抉择最高性价比的形式,随着业务的倒退一直的调整整体的架构。

业务相干:你要深刻的理解,公司的业务状态,基于这样的状态,思考技术是否能够更好的赋能,比方将之前线下的模式迁徙到线上等。

行为要求

你当初曾经是团队的决策层了,所以你要对团队内的所有人负责,这个阶段你须要放弃更 open 的心态去学习,你要接触行业内的其余大佬,放弃敏锐的嗅觉,找到机会点,只有这样你能力率领团队发明出价值。

开始关注团队的成长,造就外围骨干,适当的将权力下放。

从具体的研发事务中抽身,将专门的事件安顿给专门的人负责,通过制度保障团队的产出。

给团队背锅,而不是把锅甩上来

5、一个人就是一个团队
这个阶段,根本算是返璞归真的阶段了,你一个人就能独立实现各种需要。
这个阶段要求你有敏锐的市场洞察,能够发现一些商机,通过技术手段疾速变现。
刚开始时,能够做一些小需要,如果其中一两个产生了主观的收益。
你有两种抉择,
一种是基于此成立公司,招人持续做大。

另一种就是本人保护着,同时再去找一些其余的方向去做一些小产品。这种模式也能带来主观的支出,绝对也很自在;

这两种抉择次要看集体爱好。

最初
一路走来真挚的心愿大家可能在此失去一些播种。

  • End –
正文完
 0