前端架构变更记

我一开始来公司的时候,公司只有两个刚毕业的前端,前端也仅仅是基于jquery,那个时候,我还是第一次经历这种前后端分离的组织架构。开发时间也是大大的高于预期,我很快意识到这种组织结构是弊大于利的。

随后我做的企业博客项目由于前后端都是我一个人开发,项目时间和进度都和估计的差不多,用时远远低于前后端分开开发的时间。

随后我需要对核心业务进行一次彻底重构,这个时候我们前端想要进步,想用先进的技术组织前端,好吧,我理解。我们看了angular,vue,react ,由于我们的前端是运行在微信端,react首先出局,然后是angular,它那个时候还没有treeshaking这种精简前端编译后代码的工具呢,另外对于前端来说,angular大量用了后端的思想,入门门槛比较高,也出局了。我们看了一下vue的代码,确实比较简单,就采用它了。但是在项目分工上,产生了分歧。前端想后端提供接口,自己开发和调试,但是我想后端提供接口,前后端同时开发,最后后端统一联调代码,但是被领导给驳回了。在我的反复解释下,他也清楚这样代码的开发速度会很慢,但是好处就是让前端感觉被重视,不会离职。好吧,老板买单我还说什么呢!我们开发用了比正常多一半的时间,把这个版本开发出来了。并且最重要的是,没有人精通全部的逻辑,没有人能对代码的正确性负责,只能靠测试。最终我们到年底的时候发现了一个bug,导致我们损失30多万。导致所有人的年终奖(一个月工资)都被扣了,期权也扣了点。在项目开发的初期,我曾经对前端的代码评审过,感觉他们是为了技术而技术,把简单的逻辑封装得很复杂,也用了最先进的sass,es6,提出质疑的时候,他们还说这样写比较规范,我要求他们改的时候,老板恰好在旁边,老板不懂技术,但是他觉得要以理服人,不要强制。唉,算了我又说服不了人家,只能随他们搞了,结果就是前端逻辑搞得异常复杂,对于新手来说,入门门槛非常高。

随着我们业务的发展,我们也融了资,开始了扩张之路。后端招人是比较容易的,但是前端由于vue是比较新的技术,会的人不多,因此招人不是很顺利,基本上是自己培养。还有我们老板要留的前端全部离职了,现在全是新手,导致我们开发一个需求,后端开发完过了3~4个星期都快忘了,前端才开始和我们联调。本来我们现在招的人是打算开发一个其他的产品线的,但是全部都用来维护我们的借条业务了。我们今年新加入的合伙人兼cto,已经不写代码了,但是为了我们能提高效率,学习好久的vue技术,但是觉得前端vue的入门门槛太高了,终于说服老板下定决心,对前端代码进行重构,采用前后端的逻辑都由后端维护,前端只负责切图的开发模式。转型必然是痛苦的,所有前端都反对并且离职。我们重新招了前端,只负责切图,后端负责实现逻辑。我们重构的前端采用mui+vue多页面的架构,只用vue基本的mvvm特性,类似freemaker的写法,加快开发的速度。

这个对于前端开发人员的确是个打击,但也是真相,一个全栈工程师的开发效率绝不是1个前端+1个后端能比拟的,一个全栈工程师能顶1.5个前端+1.5个后端,成本全在互相的理解和交流上,也就是让大家对业务理解一致上。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章