今天是阿里入职三周年,借机回顾一下这三年的工作。 回想入职之前,内推的朋友跟说我过来可能负责日本站的开发,当时还挺激动的,国际化业务啊, international 。 结果我入职的前几天组织架构发生了巨大的变化,带我的师兄也换了,负责的业务域也换了。除了刚入职做了一段时间 detail ,后面主要就是做国际站店铺了。
业务开发
国际店铺这个业务虽然已经很稳定了,但还是有很多可以改进和优化的地方。三年来大的项目主要就是:
- 千人千面
- CP 结构化展示
- 双赛道
- 管理后台升级
- 无线店铺 2.0
- 内容化店铺
也算是为跨境国际贸易做出了自己的贡献。
效率&架构升级
开发提效
一开始负责 detail 的开发,接到的第一个需求是做一个什么物流相关的。我一看很简单自评了 2 天,师兄跟我说评少了,一个星期吧。我当时内心 OS:这么简单的功能需要一周?
结果真正着手做的时候发现,我靠一周都悬。当时的 detail 还是一个完全依赖后端 vm 渲染的古典 web 业务,前后端完全不分离。几乎任何功能都需要前后端一起改,并且改完部署到预发才能调试,而一次部署需要将近 20 分钟到半个小时。可以想想这样的开发效率,那是相当的低下,最终导致我入职第一周就体验了通宵工作,干的我差点想当场离职。都 2018 年,还是这么落后的技术,难以想象。
但还是忍住了,存在问题就是我大展身手的时候。于是开始动手进行效率提升的改进,做了一个本地调试工具。支持 vm 本地调试以及同步和异步的数据 mock 功能。把调试成本从之前的每次代码修改 20 分钟看效果缩短到了 3s 直接本地预览。
后面接手店铺,第一个需求就是做国际化改造,需要改到几十个模块。改一个模块需要做的事情:
拉取模块代码
-> 安装相关依赖
-> 修改多语言文案
-> 构建代码
-> 提交到预发环境
-> 预发环境测试
-> 发布代码到线上
-> 走内部发布平台发布审批
-> 发布代码上线
流程繁琐无比,发一个模块都得大半天,要是我改几十个那不得上天了。于是写了个一个批量操作脚本,将流程中除了预发测试这一环必须人工介入的,其他的基本都自动化掉了。最后整个需求差不多四天就全搞定了。
无线店铺技术体系升级
再后来接手无线店铺,据说这个业务在我之前已经干走了两个人了。接手后发现我靠,确实是深坑,项目是基于 weex 开发,然后整体架构上也非常神奇,常人难以理解。无论开发、调试到发布的操作都神奇的不行,难怪之前的人搞不定。
接手后一边慢慢的承接业务,一边开始熟悉整个无线店铺的代码。同时也在调研用 H5 重构整个无线店铺的可行性。经过长久的调研以及一次线上实验,加上一年的努力,最终把整个 weex 店铺用 H5 技术重构掉了。
不但开发效率大幅提升,而且业务数据上也有不错的效果。同时作为我们 ICBU 第一个在端上用 H5 承接核心业务的场景,落地过程中跨大组和端上的同学打通了 App 上 H5 开发的整个链路,包括 zCache、JSbridge、打点统计、沉浸式以及其他端上需要的能力基本都支撑了 H5 场景。最重要的是证明了端上偏展示型页面用 H5 来承接是完全可行的,大家担忧的性能和体验的问题都是可以被解决的。
由于有了我们场景的成功经验,后续其他业务团队也都开始从 weex 向 H5 进行迁移。
性能优化
另一件投入了很大精力去做的就是性能优化了,当时整个店铺的海外访问性能都不够如人意。经过一年多的优化改进,也把 PC 和无线的店铺都从原来 **s+ 优化到了现在海外均值 1.5s 内,还是很有挑战的。具体优化策略可以参考 {% post_link shop-performance-improve 店铺体验优化总结 %}。
整个性能优化推进的过程中,需要频繁的和外部门已经其他不同角色进行协作,沟通协调能力获得了不错的成长,同时也对我们整个业务系统的全链路有了更深的理解。
阿里的同于不同
同
在阿里工作和其他公司工作的相同点,就是作为一个普通技术开发,你需要接需求、写代码、测试,发布等一个技术人需要做的事情。
不同
工作的不同点还是要更多一点。由于阿里有 361 制度,也就是强制 10% 的人要拿最差的绩效 3.25 ,拿了 3.25 意味着没有晋升、没有涨薪也没有年终奖,而且连续两次会面临劝退的风险。
而考核本身也不是说我一个技术就做技术需要的做的事情就好了。公司要求技术人员要有思考,有业务 sense ,要有技术影响力,要技术引领业务,要有产出等等这一些在其他公司一般不会做强要求的点。至于你说代码写的好不好看,提测质量高不高设计巧妙不巧妙,是不是我这些地方做的好也能拿一个不错的绩效,就切身感受来说,不行。就这个事情我也和主管沟通过,主管当时的回答:这是对你的基本要求。当然,可能不同部门的要求不一样。
这就导致在阿里工作你压力很大,很心累。几乎从入职第一天开始,你就要考虑你这试用期三个月能做出什么产出,以供转正答辩。转正完了,要考虑出这个财年的规划,也就是说这一年我能做出什么产出来,当然一般的接业务需求是几乎不算你的产出的,那是基本要求。
所以你就看到很多人一到四月份就开始发愁,今年要做什么啊,做这个有没有产出,这一块我是不是主要负责人啊等等。有了方向以后,白天和开会评审各种产品需求,晚上写代码,然后还要想着自己今年的目标有没有进展。
整一个心累。
个人感受
在阿里呆了三年,很累,但确实有成长。
累是真的累,身心俱疲,虽然我们部门已经算很不卷的了,但大部分下班时间还是在 9 点多,而且背着绩效压力每天都要想着怎么搞 kpi 。在网易的时候下班回家后,会看看书、逛逛 GitHub、写写 DEMO 或者打打游戏刷刷论坛吹吹水,happy 的不得了。到了阿里,下班以后几乎就只能打游戏,其他的只要是需要动脑子的事情就都不想干,稍微需要懂点脑子的游戏都不想玩,而我以前是很喜欢类似群星、文明以及各种策略类的游戏的。现在回家真的就是纯休息,除了周末基本没有个人生活而言。
成长吧,确实是成长了不少。综合职业能力比如沟通协调规划等、以及技术视野和深度上都有比较大的提升。在公司的发展也和自我预期的差不多,入职第二年提名晋升到了 P7,还是比较满意的。
但一切都是有代价的,伴随着快速的成长,身体机能大不如前。入职不到两个月,体重就涨了将近 20 斤,我称之为过劳肥。而且最近明显感觉记性越来越差了,历年体检上的异常项也是一年比一年多了。这个状态发展下去肯定是不行的,所以最近在调整整个人的工作状态,希望尽可能通过自己的努力平衡工作和生活。
最后,祝自己三周年快乐。