如何在项目优化中提升自己的价值,来年升职加薪?

项目优化却体现不出自己的价值?可能你的方式不对

一、现实场景

常常有一些工作了一两年的开发问我,表示自己工作也有一两年了,接手项目也挺多了,一方面做业务的速度也越来越熟练,另一方面自己也对项目做了很多代码优化。但是一到答辩的时候或者跟领导汇报的时候,自己又没法传达自己做的有多厉害,比上一个开发做的性能有做多少提升?

那么,我们应该怎么办呢?

其实说出来大家都知道:拿数据和指标来证明自己。

道理我都懂!!!但是怎么做呢?

以下文章用的方法适用于所有IT开发同学。

二、数据和指标

2.1 介绍

定义:将我们工作的任务做数据统计,将数据和指标最终记录下来,能更好的体现。

2.2 举例

例如:前端基建同学负责前端工程化这块,负责对webpack做性能优化,经过一年时间从原先打包流程需要花2分钟,到目前现在打包花费20s,提升了6倍,与此同时前端工程化脚本,从被50个项目使用,到现在被200个项目使用。

从上面的描述中,我们看到了这些数据和指标,就是我们证明自己的点。

但是这个时候,我们跟领导或者别人说,其实还是不能很好的证明自己的能力。

接下来我们用工具来一层层更好的证明自己的能力。

2.3 利用工具

2.3.1 方式一(无工具方式)

如果我们拿上面的例子中的场景,到了年底或者每年晋升阶段:

今年我做了webpack的性能优化,原来打包需要花2分钟,现在只要20s,性能提升6倍。

前端工程化,被200个项目使用了。

2.3.2 方式二 (使用excel)

利用excel也是比较好的方式,被非常多行业广泛使用。

将数据不断输出到excel,然后利用excel,我们可以绘制折线图、饼图。

image.png

例如年底的时候,体现的是这样,比如每月接入项目数量的增长情况。比如在2019.4.1接手这个项目之前,项目在上一个开发那边从1~18个项目,增长也比较缓慢。

但是这个任务在你接手后,你给这个项目做了多少事情的推动,从而导致了这个用户数量达到了相比以往更快的增长。

这样就体现出了你的价值。

类似的比如你做了一个新的CI/CD方案,相比旧的CI/CD方案,一方面技术上做了哪些技术改进,带来了什么效益。

同时你也需要指出你的技术落地情况如何。如果落地情况也很不错,那确实你很牛,我要给你涨工资。

image.png

比如做了一个gitlab-ci的CI/CD的方案,原来你们用的是jenkins,一方面技术上确实很优秀,另一方面,大家的接入,确实证明了你的方案确实是正确的。

所以记录你的数据,不仅仅是首尾的数据,也要体现出这些的趋势。

2.3.3 方式三(利用开发技巧)

本文因为面向开发者,其实作为开发同学,上面excel的方式,其实是需要我们不断记录,而且都是根据我们某一次的统计情况。

但是我们能不能利用代码能力,来帮我们自动化做这个事情呢?

比如你来到一个公司,现在有一个node脚本

varkoa =require('koa');

constapp =newkoa();

asyncfunctionbootstrap(){

awaitnewPromise((resolve, reject)=>{

setTimeout(()=>{

resolve()

},1000);

})

awaitnewPromise((resolve, reject)=>{

setTimeout(()=>{

resolve()

},2000);

})

awaitnewPromise((resolve, reject)=>{

setTimeout(()=>{

resolve()

},3000);

})

app.use((ctx, next)=>{

ctx.body ='hello'

})

app.listen(8000);

console.log("start end.")

}

bootstrap();

我们这边通过setTimeout模拟了代码中的脏代码。整体这个前端工程化脚本,要6秒钟。

大部分开发,直接上手干啊。然后就能根据自己经验发现第16行~第20行,有脏代码,修改了,发现了这个问题点最大的一个延时3秒的点。但是能不能优化2s,能不能优化1s的那些问题,可能是基于个人开发能力的。

然后最终在这位同学手上,优化了3s,但是往往他也不知道自己优化了多少的效果,也没有做数据统计。

操作方式:

添加埋点

收集埋点数据信息

展示埋点数据信息

添加埋点

所以加埋点,最直接的方式,我们以整体脚本为例:

我们添加两行代码: console.time('start')和console.timeEnd('start')

image.png

执行效果:

image.png

然后每个阵子,优化完,把这个时间统计下来,然后最好写文件或者调用接口。

然后其实就把{useTime: 6013}这个存储下来,最好加一个时间戳,代表自己这阵子的优化。

收集埋点:

然后我们把这个数据

{

useTime:6013,

currentTime: xxx

}

调用接口或者存储到数据库中。

展示埋点数据信息:

展示的话,我们就再查询一下数据库,然后输出到excel或者做一个接口,用echarts展示一下。

或者用一些grafana工具展示一下。

比如用grafana展示的话:

image.png

这样,用户的数据就能实时的渲染出来,你也能实时关注到自己的价值的体现。

比如对于同一个项目的某个版本,脚手架工程,不断试验新的,比如打出来的js,更小了,压缩的更好了。删除了很多冗余代码。

这样,年底的时候,用grafana或者工具,拉出你的性能优化的指标变化。

三 效果与结论

希望本篇文章,能给你带来一些启发。

例如今年你负责什么项目,你想要对技术有更多的追求,你在业务之余,去做了技术的改进。最终效果如下:

用户体验更好了,展示出了用户的数量。

你的webpack打包出来的压缩更好了。用图表展示你webpack打包出来效果,更小了,更小的浪费。

打包的时间,在比如2019年4月份的项目版本的相同条件下,对于项目的打包时间的折线图。

另外也可以借助sentry,统计一下bug的数量。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,826评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,968评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,234评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,562评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,611评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,482评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,271评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,166评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,608评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,814评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,926评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,644评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,249评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,866评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,991评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,063评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,871评论 2 354

推荐阅读更多精彩内容

  • 在使用elementUI构建公司管理系统时,发现首屏加载时间长,加载的网络资源比较多,对系统的体验性会差一点,而且...
    哟哟哟煎饼果子阅读 426评论 0 0
  • 在使用elementUI构建公司管理系统时,发现首屏加载时间长,加载的网络资源比较多,对系统的体验性会差一点,而且...
    Evtion阅读 47,453评论 7 54
  • 知乎链接:https://zhuanlan.zhihu.com/p/36930662 (阅读体验更好一些。) 四月...
    董夕阅读 1,831评论 1 10
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,101评论 1 32
  • 这是一场精彩的读书分享活动。 书友、4月份轮值主席之一张瑜和中国银行洛阳财富中心的负责人分享了金融及银行理财基础知...
    水藝堂主人阅读 221评论 1 4