我的2018年度总结 | 掘金年度征文

11,633

时间过得真快,转眼间已经来到12月中旬,2018年已经接近尾声,从2014年7月份毕业到今年,又整整过了四周年,又是一个轮回。本篇是今年的年度总结,碎碎念的聊聊今年做的事情和一些感悟。

先以流水账的形式聊聊今年做了哪些事情。

今年

2018-3

2016年3月初面试来了搜车,来搜车的原因是因为之前在知乎上了解到了小芋头君,觉得会是一家技术氛围不错的公司,去待了两年,同事氛围融洽,尤其是刚去团队比较小的时候,有一种小而美的团队的感觉。

可能两年就是一个互联网人的周期吧,今年3月份萌生了换一份工作的想法。在杭州的话,阿里系就是首选了,经历了两个月的面试,最终去了淘宝的外卖业务,后来饿了么被收购,外卖业务合并,淘宝外卖业务也并入饿了么,饿了么和口碑一起合并成阿里本地生活服务公司。所以说阿里最有特色的价值观就是拥抱变化,短短几个月,换了几轮老板。

另外,整个16年工作之余一直在看Android7.0的系统源码,3月份的时候把积累的文稿发了出来,这也就是BeesAndroid项目。后续有些同学对这个项目比较感兴趣,我们在一起拉了一个BeesAndroid的微信群。

2018-4

来杭州也有两年了,也有了买房的想法,16年是杭州房价大涨的一年,结合G20和亚运会的噱头,钱江世纪城和未来科技城板块号称宇宙大盘,房价赶超北上广,一时甚嚣尘上,好不热闹。不想去折腾期房,也买不到期房,跟着中介兜兜转转,周六周日看了两天就交了定金,买了个二手毛坯,然后就自己一个人开始学习装修的知识、寻找装修公司,装的还挺快,5月份开工,6月份就装饰的差不多了,晾了2个多月,8月份自己动手搬家,住了进去。

2018-5

今年5月7号入职阿里,入职地点是阿里西溪园区,西溪园区其实不大,但是比较长,楼号标注的不是很醒目,第一天找自己的工位找了好一会。

2018-6

6月底开始了百阿,也就是阿里的新人培训,那一期有70来个人,全国各地的都有,还是香港、美国的,百阿期间了解了阿里的历史与业务,还是挺有意思的。其中有一部叫《Dream Maker》的片子,讲阿里创业史的,推荐大家看一看。

2018-8 ~ 2018-11

8月份就开始紧锣密鼓的筹备双十一了,这也是第一次参与双十一,要问感觉的话,就感觉忙的天昏地暗。双十一当天去西溪园区逛了逛,张灯结彩、好不热闹,好似过年一样。

2018-12

12月8号下了杭州的第一场雪,杭州连续两年下了中雪,刚好自己当时在钱塘江畔,有幸目睹这一美景。

简单罗列了今年做的一些事,接下来聊聊自己的感悟。

感悟

2018年也是动荡的一年,寒冬、冻结社招、裁员,再加上各大微信号和大V的焦虑营销,让这个寒冬又显得冰冷了一些。对于技术人员,尤其是客户端工程师,随着ReactNative、Weex、Flutter、小程序等跨端框架的普及,业内都在表达一种声音,多端一致性与多端复用性。“客户端工程师没人要了”这种消极的言论也充斥着一些社区和营销号,我们姑且不去浪费口舌争论这些是非,本身任何事物的发展都会有一个从爆发期到稳定期的一个过程,我们来聊聊我对一个客户端工程师发展之路的理解。

提到客户端工程师,我们先来来回顾一些这几年移动平台技术的发展。

  1. 初创期 09年移动互联网开始发力,智能手机开始普及,一线大厂也纷纷开始转入无线时代,例如阿里的all in无线。这个时候大家考虑的是怎么快速把PC平台已经成熟的业务移植到移动平台,这个时候大家都还没沉淀什么中间件,可以算是一个刀耕火种的农耕时代。
  2. 增长期 随着业务的发展,移动平台的瓶颈就凸显出来,工程打包,跨团队协作、基础能力等等,这个时候一些打包和协作平台开始形成,推送、图片、网络、埋点等基础中间件也逐渐开始形成,很多团队这个时候会分化成业务组和架构组,当然一些大厂会一开始就有架构组,专注于基础能力和研发效能。
  3. 爆发期 随着中间件技术的进一步发展,插件化、热修复等技术开始登上历史舞台,这也是源于大家对业务快速迭代和业务拆分的诉求,这一时期涌现了Tinker、Atlas、Sophix等优秀的方案。而后随着15年Facebook正式提出ReactNative,大家猛然发现,对于Hybrid除了WebView还有ReactNative这样的路子,大家也展开了对多端复用性和多端一致性的探索和思考,从Native到ReactNative的变迁也真正将大家从MVC时代拖入MVVM时代。

经历了爆发期,Native与前端在业务形态上像过去的PC时代一样开始慢慢走向融合。

这个时候,很多同学在社区和文章上讨论端的未来和转行等等,事实上过分强调端的没落总有点狭隘的感觉,始终只是站在端的角度去考虑问题,没有上升的业务高度。先前也有人讨论过,在互联网寒冬中,大前端环境下,客户端工程师该何去何从,我的思考是不要被技术限制眼界,做一个有高度的工程师

如何去做一个有高度的工程师?

我从几个方面聊聊自己的感受,并举例说明为什么。欢迎讨论和拍砖。

跳出端的限制,从业务和产品的高度去思考问题。在业务中发现技术的机会,这是抽象能力的表达。在技术中发现业务机会,这是技术赋能业务的表现。多想一步,多走一步,你就可能发现你的价值。

举个例子

如果让你去实现一个类似ReactNative的框架,你会怎么做,你会不会纠结在DSL解析该如何实现上,事实上,不仅仅只是DSL解析,而是要从页面的生命周期的高度去思考问题,页面从哪里产生,如何打包,如何校验 ;如何发布,发布在哪里;如何下载,如何解析,如何渲染,如何回收,如何缓存,以及组件和研发效能工具如何建设,其实你看,你有很多事情可以做,你要做的不是某一项技术,你要做的是一个产品。

类似的还有日志、埋点、图片、网络、推送、APPLink等等,每一个都可以形成一个产品,对业务形成强有力的支撑。

不要迷信架构和极客技术、伟大的技术不一定是有多么厉害的技术背景,但一定是对业务实现了强有力的支撑。

举个例子

手淘里有个可以在任意页面弹出一个活动窗的技术,现在这个技术也是各大App的标配了,这个方案从技术上来说并不高深,但它被创造出来以后,在业务上有很强的带动效果,可以随时随地把站外的用户导流回来,这个方案对业务的促进很大,它的诞生也值得每一位技术同学思考,思考技术如何赋能业务,这也是一个技术人实现自我价值的体现。

要学会用数据去量化自己的技术和业务,而不是靠理论。

举个例子

在一个技术场景里,如果你对自己的技术产物或者业务产物无法用数据来量化,那么我想你可能不理解这个技术解决的核心问题是什么。从技术来说,性能优化的指标是什么,秒开率、内存、缓存命中率、网络请求时长等等。从业务来讲, 拉新和留存的数据是多少等等,对于你所负责的业务,你能否清晰的表达出来,是否有自己的数据大盘来监控分析产品效果。

架构、极客技术知识是指路明灯,一颗匠心确是走下去的基石,虽有明灯,没有路一样走不下去。

举个例子

有很多同学崇尚极客技术,崇尚架构,崇尚做别人没有做过的事情,这并没有什么不好,这也是创新的来源。但同时不要忘了一颗匠心,写好每一段代码,做好每一段注释,控制好每一个线程,对内存和性能有着天然的敏感性,这才是作为一个技术人匠心的表现,也正是这样点点滴滴看起来不那么酷的微小工作,才强有力的支撑起了我们的整个业务。

聊了这么多,估计会有同学抱怨,我就是写业务的,你说这么多,并没有用,我每天就是重复的工作。我想说的是,你有没有真正的去努力,有没有真正的发掘那些虽然技术深度不高,但是却对业务极具价值的点。事实上,纯技术的创造创新并不那么容易,但是基于业务的技术点的发掘却会相对容易一些,它只差一个有心人,你去发掘这些方案的过程,也是一个技术人实现自我价值的过程。

感悟大致就是这些,接下来聊聊明年想做的事情。

明年

明年主要有有两大方向:全栈与产品。

  • 全栈主要是指前端全栈,主要精力会放在跨端上,也会去学一些后端的技术,这主要是为了自己能够自上而下开发一整套的效能工具做储备。

  • 产品是指学习产品知识,以一个产品经理的角度去审视业务,从业务中提炼技术,从技术中创造业务。

最后提一点共勉,互联网是个年轻人的行业,人过30,如果没有走到比较好的位置,就会有比较大的风险,人生七八事,财务相对自由才是你进行一些理想的基础,除了工作(工资、期权与股份),其他理财投资等创收手段也尽量的去扩展,增强自己抵御风险的能力。

感谢大家听我碎碎念这么多,有什么想说的,欢迎留言讨论。

掘金年度征文 | 2018 与我的技术之路 征文活动正在进行中......