前端工作5年了,如今的状态距离初出茅庐时定下的目标,差了很多。
回想这几年,忙碌与悠闲交替,自主学习的时间于5年来说,实在寥寥,简历上的个人优势只能写下经历项目丰富。
想当初刚入行时,刚学JS操作dom就能自己琢磨出个扫雷小游戏,又用两周写了个连连看,刚学canvas就能用100行代码写一个开屏动画。 后来第一份工作,用没学过的html5plus(uniapp前身)写了个app出来,英语一塌糊涂的我,甚至还单独搞定了ios的上架。这资质,在我5年遇见的同行里,也算优质了。
可后来呢?无论是在国企那种散漫的环境,还是在小步快走敏捷开发的模式,更或是在外包这种催命式的公司。大多都是以造成业务需求为目标,临阵磨枪,被动式学习。
我曾试着改变,报了个线上培训班,想以此提升技术,升职加薪。这个培训班也厉害,我跟着手写了小vue,小webpack,小Express.js,单元测试等等。这些学习确实也提升了我的视野,学习了一些以前不曾用到的设计模式。但对于我提升有限,又因为工作中用不到,没过多久又忘的差不多了。
如何突破这个困境,成了我最近一直思考的问题。
今年9月底我裸辞了,刚走完离职流程郑州就封控了,说来也是,要不是疫情我可舍不得花两个月时间休息。
为了找下一份工作,我打开掘金想学学技术,看的第一篇文章是关于qwik的。我的天,前端技术已经进化成这样了吗,这玩意做的网站评分居然可以达到满分呀!而我们公司还在为了提升首屏加载速度提升而沾沾自喜,这中间差了个时代!
那篇文章让我觉得自己差的简直太多了,那几天就一直在看掘金,在B站上搜最新乃至未来的前端技术发展。看的多了以后,我突然意识到,自己可能钻牛角尖了。
从技术上来讲,qwik和astro属于island一类,属于ssr的进化版,算是目前前端最激进的框架了。由于对js的懒加载,所以更适合js比较少的业务场景,比如文档,博客,官网等。具体可以看的这个老哥的分享SSR当代最强变种-island架构。
而ssr技术,比如去年流行的next/nuxt等,都需要前端起一个server服务,既然都起服务了,那能做的事情就多了,所以就有人开始做前后端一体式框架了。比如我在B站上找到的一篇关于自动生成sql的,一体式框架的分享。【技术分享】换一个方式构建全栈应用 Graphql+Typescript+Hasura+Vue3+TSRPC
这样就前后端不分离了,看起来是挺自动化的,效率会快很多,只是不知道这样的框架多了以后,会不会回到2012年之前的状态,对于新手来说的学习成本会不会增大很多,还有就是前端应该为用户体验负责,不知道这样算不算弯路。
还有今年特别火的低代码平台,这也是我比较喜欢的方向,甚至于我也想做一个这样的东西。未来如果它做的比较好了,我觉得能在跟客户谈需求的时候,直接拖动出一个比较不错的模型出来,客户直接看着东西聊想法。再搭上自动生成sql和接口的技术,我们的工作量大大减轻。这样下去,再过几年发展,做项目可能会和AI作画一样,客户只需要挑AI做出来的结果就行,我们都被淘汰了,哈哈哈,这样的未来,不知道要多久才能实现,现在的技术日新月异,这样的未来,说不定用不了多久了……
我可能又陷入了另一个牛角尖,技术并不是全部。
2020年初,我目前为止遇过的技术最厉害的前端,试用期结束被辞退了,我不理解。他说,一个企业并不只是看技术的,还有成本,团队合作等等。
如今我技术自认比三年前好很多了,这两个月来找工作的情况,跟2020年的他如出一辙。技术提高了,工资反而变低了。
其实也好理解,我们程序员跟工地盖房子的工人是一样的,就是靠手艺卖时间吃饭。在工地上,手艺再好的师傅也不比普通工人多拿多少。
那我升职加薪的目标该怎么实现呢?
我目前觉得一个比较可行的方案是:做点开源项目或者文档,以此弥补学历的不足,然后进大厂。开源项目我都想好了,一个是xyui再封装方向,一个是低代码平台方向,一个是个人博客,把平时不经常遇见的功能记录一下,比如webtrc和web service等。
至于转管理,我个人觉得,在完全掌握java开发之前,最好不要纯纯转管理。
最后就是之前的理想状态,以公司为家,多了解了解业务,每个项目都是自己的心血。这条路是最没用的。毕竟不是童话故事,写一个完美的项目并不会对普通人的我有多大改观。离开那个平台,之前的项目甚至都不能算简历上的点缀……