阅读 1322

到达瓶颈的前端业务员思考总结 | 掘金年度征文

2019年 in 掘金

翻了一下在掘金的文章,近一年基本围绕的都是Next.js这个技术栈,虽然在国内很冷门,倒也算认识了一些志同道合的朋友,还组织了个交流群。去年年末掘金刚出 Level 体系的时候我就 Level3,写了一年文章也十几篇结果还是 Level3😂,原谅我这一生放荡不羁爱自由,并不关心其他人想看什么,只写自己想写的~好吧,我承认,归根结底还是自己菜,写的文章没水平😄不知道什么时候到 Level5 啊,毕竟我也有出小册的打算呢~哈哈哈

前言

首先,我得承认,写这篇的目的是为了蹭蹭热度,万一能获奖呢~😄,咱不能昧着良心;

其次,个人也确实有总结的习惯,掘金也是我个人非常喜欢的社区,正好借此平台来谈谈感想;

最后,也是最重要的,此篇总结更偏向交流探讨,希望有同 “病” 相怜的前端 coders,或者久病成医的 olders 们能一起交流交流,给笔者一些灵感。

coders -> 跟我一样前端病号,olders -> 大病初愈度过瓶颈期找到方向的老前辈们。

病因

男 - 26岁 - 前端业务员 - 1.75年 - 应届校招未跳槽 - 公司不大也不小,不处于行业顶尖地位又没那么碌碌无为

上面的简介以及文章的配图,就是本文的重点,前端业务员突破瓶颈

前端业务员

初级阶段

作为初级前端开发工程师,或者刚进入公司的小白,业务需求是快速提升业务水平,技能本领的最佳手段,在此阶段,你会非常热爱编写代码,修改 bug,每一次开发、提测、上线甚至是回滚都有可能有些小兴奋。因为你可以通过源源不断的需求了解公司的产品业务,代码开发规范,团队合作如何并行开发等等个人开发时遇不到的场景。

业务员阶段

度过了上面的阶段,等到业务成熟了,系统稳定了,新需求迭代不是那么频繁了,你的日常工作围绕着产品需求,BUG/JIRA,前人和你以前的代码缝缝补补又三年,开发提测上线流程一周走三次~那么恭喜你,成功的从前端开发工程师进化成了前端业务员,服务于业务,陷入业务地狱,工作中充斥着新需求与旧 Bug。那么,我们成功步入了业务员阶段,此过程快的话大概半年左右,慢的话一年也肯定就到了。

【注】:我这里并不是讽刺什么,我个人一样是前端业务员,每天修复各种 bug,承接各种需求。如果我说我喜欢每天写业务代码,改旧系统 bug,那么可能言不由衷了。谈不上反感,说不上喜欢,这应该是我目前的状态。

瓶颈阶段

业务程序员是一个漫长的阶段,有可能一两年,也有可能十年甚至一生。因为有的人可以在业务中不迷失方向,不断的在业务中进化突破瓶颈,而有的人就完全迷失,只麻木的开发业务需求了。什么时候到达瓶颈了?总结一下就是:频繁的业务需求与自身成长不匹配之间的矛盾。当你觉得业务开发已经对你完全没有提升的时候,你可以考虑自己是不是到达瓶颈了,接下来该何去何从,如何突破瓶颈?

我这里并没有那么深的阅历,毕竟才工作不到两年,但是,想象一下各种网络文章,40岁程序员养家糊口却被 HR 拦在简历筛选环节,我不敢想象自己40岁的时候依然在四处投放简历寻找一份前端业务员的工作。

突破瓶颈?

这里要加一个问号❓因为我也没突破呢啊~这不来这里找你们了嘛。但是可以参考文章配图,这个图其实还挺有深意的,突破瓶颈,既需要自己努力,又需要外界(并不一定是人)助力,当然也有可能自己一个人就搞定了。

为了探究如何突破瓶颈?我下面提了一些自问自答,希望作为药引,引出更多治病药方~

药引

【突破一】—— 技术应该纵向加深还是横向扩展?

就以自我感觉到达瓶颈的自己来说,React 技术栈,应该算是完成了技术闭环,任何需求场景,新系统的搭建,开发,测试,上线,都能独立设计方案并完成。那么接下来,是应该纵向加深钻研 React 技术栈?还是横向扩展其他技术栈?是专一而精还是技多不压身?不要跟我说都来,我说的是鱼和熊掌不能得兼的情况下~

  • 纵向加深

对技术栈的底层实现原理以及性能优化相关的探究,技术方案的同类比较(Class VS Hooks,redux VS mobx,服务端渲染实现原理,react-native等等)

  • 横向扩展

Vue、Angular以及Flutter等等其他相同领域的主流技术栈的了解并掌握。

有的大佬可能说了,二者并不耽误。首先,并不是所有人都是大佬;其次,我说的横向也并不是看个文档写个 hello world;最后,只是个人看法而已,别钻牛角尖~

【突破二】—— 业务层面无法提升自身?

当在公司继续做业务,已经无法提升自身能力的情况下该怎么办?这应该是大部分人感觉到了瓶颈的关键点。同时,大部分人的回答应该也就是两个字 —— 跳槽。不过,我个人觉得这应该并不是唯一答案,至少在我看来不是最佳答案,这个答案略显...怎么说呢?虽然互联网并不讲究情怀道义,跳槽裁员之事就跟一日三餐一样稀松平常,但是也并不是所有人都这么想。当你技术小白的时候公司给你业务提升实力,当你技术成型的时候你觉得公司业务拖累你成长,这应该并不是个 Good Coder 的答案。

个人觉得,可能当业务无法提升自身的时候可能就要换位思考了,是业务本身的问题,还是我们自己本身的问题。比如,业务以前做过,没挑战性?重复代码?那么是不是可以考虑封装~组件化,去重,优化业务逻辑等等,再比如,万年不变的性能优化,代码实现了,有没有更优解或者最优解?

【突破三】—— 前端全栈是不是一种趋势?

这一年前端又是各种新概念,学不太过来那也是真的,但最复杂的是不是学不过来,而是模棱两可。比如到现在我都不知道 Serverless、中台 的具体定义是什么,文章也都晦涩难懂,当然,也可能是我菜,菜是原罪😄。不过,这一年给我的感觉就是,前端的爪子神的越来越长了,基本上所有业务场景,给时间,前端都能自己搞定,所以我觉得前端全栈应该会是一种趋势,真的不能只做页面级别分离级别的前端。

虽然全栈概念很久之前就出来了,但是目前大部分公司架构应该还都是前后端分离各司其职,真正做到前端全栈,大前端统一天下的应该凤毛麟角。

【突破四(个人向)】—— 架构师应该具备什么素质?

这算是个个人向提问,前端架构师这个岗位到底指标是什么?并没有什么培训是培训架构师的吧,如果一个前端程序员想成为前端架构师,应该走什么样的路线呢?振声发问😄

总结

上面我以提出问题以及自己的思考,希望感兴趣的coders|olders可以一起交流交流,救人一命胜造七级浮屠,渡人渡己~😄

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