小公司的前端应该怎么作?

前言

近期工做生活比较漂泊,从上海换到了成都,这个是以家庭为单位的重大决定,离开一线城市对于职业生涯和技术前沿来讲是有必定问题的,可是出于房价考虑(主要是买不起房子)与生活温馨度来讲,回蓉彷佛是一个比较好的选择,况且成都的互联网也还行。css

随着能力的提高,负责的工做种类会逐渐增多,考虑的方向也会有所不一样,这个时候不太会有太多单独的知识点成为阻碍了,工做中碰到的问题要么太“大”,总结起来费力,要么太“小”,不适合单独整理成文,这种现象反而形成了一段时期的博客空白期,总的来讲就是又开始懒了,思惟又开始懈怠,人又开始想待在安逸区了。前端

由于开始懒了,因此没能学习到新知识,天然出不了新文;由于开始懒了不肯意再对工做中的问题一个个深刻研究、深刻挖掘天然出不了新文。node

因此人仍是得不停的鞭笞本身啊,不能让本身陷入“瞎忙”的境地,得有效的利用时间,才能走的更远!!!编程

如今我在一家小公司作前端,由于公司以及职位的变化,对于在小公司如何作前端有一些心得,拿出来与各位作个分享,但愿对处于小公司的前端有必定用处,也鞭笞本身从新学习总结。json

什么是优秀的前端团队?

团队初期缺什么

在公司中,层级越高对业务关注比例越高,反而不太关注我的成长,因此评价一个leader是以团队为单位,团队成员比他强是应该的;对于我的来讲的话,要多关注自身能力成长,而后能力匹配本身的职位,甚至超出本身的职位,这样的团队的话,战斗力是比较强的。gulp

主管(包括前端主管)设定目标必须可量化 ,好比你作一个业务,kpi是多少,那么技术就须要考虑如何才能达成,细化到研发甚至前端层级,就是所谓技术kpi了。后端

好比,今年H5站想达到单日平均出票量10000,那么这个就是业务目标,须要消化分到各个业务团队,能够是:跨域

① SEO优化浏览器

② SEM优化缓存

③ 营销广告

④ 微信&支付宝&手机百度流量接入(微信钱包是十分优秀的流量入口,能够极大程度的增长流量)

⑤ 实地推广

......

以上固然只能解决部分问题,具体到前端,可能咱们就要从页面转换率入手,创建订单漏斗模型,作性能优化,作交互优化,每个具体的层面都须要转化目标。

这些都是直接可量化的东西,由于当前业务已经到了一个瓶颈,或者公司已经到了一个瓶颈,业务上就须要作不停的尝试,对应到技术就是须要你快速迭代,低成本迭代,不断的容错试错。

这个时候就会提出不少问题:

第一是你的团队在相似高压下会不会主动加班去实现公司的目标、我的的kpi。

第二是你的团队在这轮高压拼搏后有没有留下什么东西?

根据以前经验,没有团队能够无休止的承受高压加班的压力

以以前携程无线高压迭代的经从来说,就算是那么优秀的团队事实上到后期也是疲惫不堪,疲惫的时候容易犯错,亢龙有悔,盈不可久。

第三是如何帮助新人快速的融入团队,如何让1+1=2。

咱们都清楚,好的项目毫不是堆人能够堆出来的,如何让一个项目能够分解到各我的手中,如何让参差不齐的同事能够更好的协做,这个是咱们须要考虑的。

要解决这些问题是要靠平时的积累,具体体现到前端是:

1 在不停的迭代中,你的业务流程是否是最优(产品到设计到前端到最终上线流程)
2 在不停的迭代中,是否沉淀出来了公共服务与工具化服务

好的前端是什么样的

首先,好的前端是必定愿意加班的,同时,好的前端是会找办法让团队少加班的。

和一些朋友作过交流,不少好的点子,改善工做效率的点子都是几我的讨论后私下晚上搞出来,而后反复实践用于生产的。

通常来讲业务kpi对于能力强的朋友来讲不会太难,因此对他们的期待也会更多:

有强烈的意识,能深入了解到当前项目性能的缺陷,开发效率低下的缘由,并会找寻处理办法

不少团队在快速迭代中会开始“欠帐”,时间久了就不肯意还,问题的存在搁置须要想办法去解决,团队成员是看获得问题的,没人说,没人作是由于知道那是坑,你若是能解决的话,一到二次便能提高本身在团队中的位置。

好的前端应该有良好的架构设计能力

首先,好的前端能向人清晰有条理的描述本身的技术方案,而且让人听得懂!

而后架构设计能知足长久的需求发展,就算业务频道扩大了10倍,用户量增长了100倍,也不会有根本的变更。

好的前端应该具备良好的交流能力

对内,好的前端须要了解团队成员的性格与能力,作出适当的任务分配分解;对外,须要抢占业务还不能产生利益冲突,这类人是项目推动的主力。

小公司的前端应该怎么作

不是全部的小公司都这样,可是我见过的小公司的前端都在扑业务,而且疲于奔命,这个是个恶性循环,第一次作业务:

加班赶业务-业务结束轻松一周-加班赶迭代-业务结束轻松一周-加班新业务-业务结束轻松下......

偶尔你会问这些朋友为何没有什么积累,获得的答案基本是一致的,忙啊!他们忙起来的时候是真的很忙,可是第二次若是依旧这么忙的话就有问题,第三次还这样就是团队不健康了,一个好的作法是:

① 完成先后分离,这步作不到,后面也不用作了
② 造成几套UI库
③ 根据业务形态,造成公共业务
④ 前端重复工做工具化
⑤ 造成优化体系
⑥ 造成统计体系
⑦ 创建页面转化漏斗模型
⑧ 作ABTesting方案
......

首先,不管出于什么考虑,先后必定要作分离,若是有SEO需求,那么再后续推动nodeJS方案,毕竟如今不给钱想排前面仍是很难,SEO基本没意义。

其实,小公司有不少坑能够占住,这个会帮助你创建团队威望,下面我举几个细节点说一说。

UI库

UI库的造成与UI库的多少将决定你后续项目重复工做量的多少,这个UI库须要注意几点:

① UI是否可重用

② UI是否可定制

好比让不少朋友去作这个时间选择器,作出来就真的是时间选择器,若是让他换成城市选择器,就全傻眼了:

③ UI是否可拆分,可聚合

仍是以上面UI为例,这个组件事实上是一个聚合组件,由一个select组件与一个弹出层组件组成,你的UI是否是可拆分是评价他质量的一个很大考虑点。

......

公共服务

公共服务能够说成一个大一点的“UI组件”,可是他是与业务相关的,UI来讲通常不会与业务产生耦合,以上面的日期选择器来讲,不管他装的是日期仍是区域都是能够的,而且不该该请求服务,他是纯净的UI组件。

而公共服务是不纯净的是必定与业务相关的,移动端比较常见的公共服务是:

passport

包含登陆注册、我的资料管理,甚至包含一些认证相关的,与公司帐号相关的操做,登陆注册是各类活动,各类业务频道均可能会使用的业务,这种东西是必须服务化的,可是不少小公司都没作。

由于公共的特色,页面设计最好中性一点,其中几个经常使用的页面,好比登陆须要包含如下设计

① 样式可定制化(弹出层、独立页面什么的都是常事)

② 回退可定制,其实全部的公共服务回退按钮都是须要定制的,登陆成功去哪一个URL登陆失败去哪一个URL,点击浏览器回退去哪一个URL都得约定,少一个都不是公共服务

③ 单点登陆,事实上初期根本用不到什么单点登陆,甚至你们都不是跨域的,因此后续须要再支持便可

还有不少与passport同样的公共业务,好比:

① 钱包服务,包括用户支付订单相关管理

② 城市列表,这个要考虑参数如何传递

③ 反馈系统

④ 公司介绍

除了面向C端的公共页面服务,还会有面向B端的统计平台相关。

前端工具化 

静态资源处理

评价一个前端团队是否优秀成熟的评判多以团队工具化的程度,一个简单的例子是:

① 大家前端静态资源是如何组织的、如何打包的

② 大家前端静态资源是如何解决缓存的(比较好的方案是MD5)

上面两点可使用grunt/gulp一类的构建工具轻松作到,若是有公共框架文件还会须要引入种子文件的概念

跨域问题

另外,全部前端团队都会遇到跨域问题,特别是先后分离后,服务器端只提供API接口,前端代码随便在哪都能运行,那么这个时候你是怎么作呢?

① 使用fiddler&charles作代理

② 提供测试服务器

③ 支持jsonp跨域

④ 支持cors跨域

那么这些方案,哪一种最适合团队,哪一种成本最低(通常来讲是代理),是咱们须要考虑的

tips:我以前使用fiddler,如今换mac了使用charles,两款工具十分优秀,正则一块的处理很好,推荐使用

移动端适配

从后端转到前端的同窗通常在业务逻辑上有一些天生的优点,可是每每在CSS一块比较弱,如何在开发人员无感的状况下引入rem,如何与现有机制无缝的使用less,如何处理单页应用中css的污染,这个是框架底层须要考虑的。

模块化&组件化开发

团队上规模后,如何使用模块化开发处理协做问题;业务代码复杂度上升后,如何使用组件化编程思惟简单开发复杂度,这些须要应用到项目实践中,而且路径是可复制的;

一些优化手段,也须要工具化,框架化,让开发人员无感。

先后端协做

前端与服务器端,开发速度未必同步,事实上不少时候都不是同步的,在已经约定了接口格式的状况下,接口尚未写好,可是前端依然能写交互,团队是如何写这种假数据,这个方面实现会大大的提高工做效率。

订单降低分析

若是在某一个时间段,全站的流量或者全站的订单量降低了,你如何跟踪此次降低的缘由,如何最大程度上避免下次出现相似的现象,这个时候数据统计会避免咱们成为瞎子,因此得尽快创建统计平台,转换率模型。

快速迭代,经过迭代来优化产品,可是若是每个迭代都彻底颠覆了以前的设计,不少时候公司就是原地踏步,每迈出一步你要清晰的知道前一个版本哪里出了问题,针对问题作优化,而不是频繁改版。

此次改版后,你如何知道此次优化就比上一次的好,而不是其它因素形成,ABTesting方案应该是每个成熟团队必须的,持续优化这些都是创建在有效的数据监控与意见反馈机制上的,咱们不能作完网站变成瞎子。

结语

由于好久没有写博客了,又由于最近恰好来到了小团队,有一些想法以水文的形式发出来与各位讨论,但愿对各位有用。

诚然,对于一个前端来讲,要推进上述工做仍是有一点难度的,但并非不可能,前端对本身的定位要变,从前端工程师到软件工程师。

我经常听到不少前端本身都在质疑本身,或者就是膨胀到以为本身团队没有什么能够作了,那么这个时候能够考虑下:

大家团队的自动化、安全性已经到位了吗,效率就真的彻底没有上升空间了?

前端的重视程度须要你我一并努力,在大公司作前端难,在小公司作前端更难,你我共勉,最后补充下为何回成都,以及回来的一些感觉。

从一线城市到二线城市

几年前,怀着想学点新东西的想法,我来到了上海,在这边也确实学到了不少东西,关于学习有几个必要条件:

① 好的项目

② 好的团队

③ 加班总结

不少时候不是一些朋友不努力,可是PV上亿的项目国内真的很少,创业团队这种机会就更少,因此根本没有这种机会,这个时候看人家作的不少优化就是看热闹,彷佛懂得了什么,其实什么都没懂。

就算是携程最好的时光,依旧有不少团队没有跟上好时候,好比不在无线的团队,那么无线团队的经验包,若是不是真正好学的人是接收不了的,就算我处于无线团队,native团队中不少经验包都是遗漏状态,并且不管怎么打听都是打听不出来的,就好比native资源更新机制,我就前先后后关注了两年,从各处零碎的获得了不少知识,如今看来依旧不够系统,不可谓不遗憾。

又好比有一次携程全站出现了一个重大BUG,由于是server端的问题,本身当时目光短浅没有去深刻,到如今想深刻都没有案例了,只能说机会稍纵即逝啊!!

因此就算后来进入百度了解到了fis的好,可是真正想去深刻的话怎么都摸不着门道,只能学习一些思想走;这个也是一个框架成型后若是后面的人来维护怎么都维护很差的缘由,由于他们找不着精髓,后来的人甚至会喷框架的各类很差,本身却找不出方案。

这个就是一线城市的一大好处:

一线城市,具备好项目(PV过亿),好团队的机会要好不少,只要你努力上进,就能收获很大的经验包。

这就意味着,只要你愿意学,就必定能够收获很大的经验礼包,这里有不少热心的大神,愿意与你讨论,愿意与你分享,而你的分享也会带给你快乐与成就感。

另外,外面的薪酬包也要比二线城市大得多,就我而言,回成都薪酬包只有原来的70%不到,若是此次没回成都的话,待遇应该会有长足的涨幅,可是最后仍是选择的归蓉。

关于机会好的伪命题

不少人到一线城市打拼是以为那里机会好,事实上这是一个伪命题(在我看来),不能否认沿海的机会不少,但真心说不上好。

职场这个东西真心很差说,你能力强须要人赏识你,你上去了还得你的老板上去,你老板上去了,还得你老板的老板也上去了,若是中间有一个老板失势了,那么新的老板可能会洗牌,状况好的话你留下,而且依旧使人尊敬,可是更多的状况是可能你得卷铺盖走人,互联网离职率高不是开玩笑的。

能力强不等于职位高,由于通常来讲你的能力尚未那么强,能玩转公司的毕竟是少数,搞技术的更多的状况仍是比较实在,想安安静静写代码,不多搞政治斗争,又心高气傲,又比较脆弱,面对不合理的KPI,或者被产品无限制的坑,是很是容易离职的。

外面优秀的人扎堆,因此真的机会只是相对的,你若是抱着学习收获经验包的想法出来会收获很大,若是你经验包已经够了,想更往上发展,那么这个是很难的,由于管理或者交流未必是开发擅长的。

再往上会关注业务发展,关注KPI,须要大量的产品知识,本身甚至会成为产品,这个时候搞技术的时间就会相对变少,但技术很差又很难让技术员工服众,光是技术好又上不去,居然有点矛盾。

我身边就有几我的出去作CTO,结果团队刚刚上轨道就被扫地出门了......

另外,就是外面leader很辛苦,特别是团队上升期,好的leader会陪着团队加班,会很晚,咱们以前好的老板(35岁左右)都是陪着团队加班的,总之钱很差赚,若是leader偷懒,几年下来可能会废掉,被淘汰掉,这个中年危机是不可忽视的。

虽然如此,一线城市的机会和成功的概率依旧比二线城市好得多,而你愿意拼搏,善于思考,是能够发展的很好的,那么咱们为何要去二线城市呢?

为何去二线

去二线城市主要缘由就是房价贵,房价太贵,一样的钱能够在成都买三套房子了,并且一线城市买的房子很偏远,上班得一个多小时,下班又得一个多小时,这样来讲是至关使人疲惫的。

而后外面工做节奏太紧张,甚至已经紧张到没有生活了,有追求的人995是常态,996也是有可能的,这个会不断的透支你的身体,年轻点还好,稍微上点年纪,有了家庭的话就不行了,会考虑的更多了。

好比在一线城市落户的条件比较苛刻,小孩教育问题、父母养老问题都是你须要考虑的,想着想着,就会有一个想法,要不回老家算了,又不是找不到工做,因而就回来了。。。。。。

回成都后的感受

回成都后,次日便出差去北京,整个清明节都在加班,完了回成都也一直在加班,尼玛这边的工做强度一点也不比一线城市低啊!!!

可是,周末能够过得很惬意,一个月老妈也会来一次作些好吃的给咱们吃,这种幸福感和归属感是外面没有的。

今天,我8点就下班,在软件园区信步而走,走了10多分钟,而后坐着公交车20分钟回家了,这种感受仍是很不错的。。。。。。

二线城市依旧会面临外面的各类挑战,不想面对依旧上不去,在哪都是面对,那就回老家面对咯。。。。。。

相关文章
相关标签/搜索