与热爱,共赴下一场山海
18岁时,我怎么也想不到自己会投身于0与1的世界。大学期间,我可是就读于华南理工大学经贸学院,在这个似乎与计算机、写代码离得比较远的领域,学习了四年。
但在大学四年里,一次偶然我接触到了Java,比起自己的专业,我觉得编程的世界更加简单纯粹,就这样我被深深吸引,带着喜欢,用空余时间投入其中,渐渐地编程变成了我擅长的领域,后来,竟然开始有同学向我咨询,连学校的老师也开始邀请我一起做校内教务系统的项目,这些都给我极大的满足感,我开始认真思考未来发展规划:热爱能不能成为我奋斗的未来?不是计算机专业能否敲开研发的大门?
正巧这时,我一个同样爱好编程的同专业师兄成功入职华为研发,给了我莫大的信心,我决定潜心到编程领域去深研,从书籍、文章、论坛、慕课,与我的“对象”Java相知、相熟。
我试探着向华为投递了人生的第一份简历,还记得第一次机试时我紧张又认真的样子,像是对热爱交了一份答卷。等待的过程不长却很煎熬,我在否定与肯定自己间反复横跳,直到惊喜地收到二面的通知。记忆里面试那天日暖风和,我坐了一个多小时地铁来到面试地点,在激动和紧张中,通过了技术和综合面试,如愿成为一名华为人。回首这段心路历程,只觉别怕路长梦远,总有星河照耀。
浪里小白拿下一血,新手村任务胜利
结束新员工培训后,我加入管控析平台部。第一天就见到了我的导师栋哥,给我细致讲解了需要具备的业务知识与技能外,还给了一堆“祖传秘籍”资料。作为一个新员工,我对所有的事物都抱着极大的兴趣,在快速熟悉资料后,便主动找导师请教项目上的疑惑和想法。没想到我的主动,为自己赢来了在华为的第一个机会。
“部门现在作为自动驾驶网络的云化底座,承载着很多技术的演进和探索,现在有一个技术项目,需要一个人先行进行方案的可行性研究,你有没有兴趣?”我眼睛一亮,二话不说地答应了,随即又为自己的冲动懊悔,因为栋哥说的很多东西我都没听懂,努力吸收后才知道是做Java的新通信协议,探索让应用交互更快的通讯方式,能大幅提升产品性能!我心里也有点慌,这个任务可不简单,万一搞砸了对不住导师的信赖怎么办?
但我又给自己鼓劲,来这里不就是想做出一番事业嘛,怎么能还没开始干就打退堂鼓呢!我清扫了心中不安,先向导师请教一个新项目该如何下手,有哪些关键点需要提前考虑。开局因为有了导师的点拨相对顺利了很多,随着研究的逐渐深入,当我苦读完协议准备大刀阔斧干时,竟发现Java语言不支持UDS(Unix Domain Socket)协议?如同准备炒菜时,却发现灶里没柴,无法生火,我有些欲哭无泪。一番思索后,我发现有新的三方件通过外部调用可以实现这个协议,立刻通过demo去验证可行性,但因为底层语言的冲突再次宣告失败……
人生的第一个需求,可不能怂啊!近乎魔怔的我,周末都在钻研问题根因,通读底层的连接代码,终于拨开云雾看到一丝希望的光芒。
到了周一,我急忙赶去公司动手实践,开启了我重写连接层代码的副本。有次在攻关无法获取连接的问题时,我的肚子发出咕咕声响,才发现办公区早已空无一人,来不及欣赏天空中繁星点点与松研所美景相交融的画面,回到家倒头就睡,迷迷糊糊中我似乎又走向了电脑,一点一点敲下最近实现的代码,键盘滴滴答的回荡在脑中,不知怎么代码就敲完了,更是刷刷地跑了起来。对啊!这么解决不就成了!激动的我一个伸手欢呼,却拍到了硬生生的墙上,疼得瞬间清醒,原来是个“日有所思夜有所想”的梦啊!
第二天,迎着刚破晓的清晨,我赶忙来到公司将昨晚的灵光付诸行动,一阵调试,整体的思路对上了!心里的一块石头也终于落了下来。
最终,我用了一周的时间近乎重写了整个连接层面的代码,总算跑通了整个连接层的逻辑。人生的第一个需求,就是给业界标杆的三方件扩展新的通信能力,想着未来商用化时,几大产品、数千个服务跑在自己构筑的代码上,享受着更快的通信速度、更低的时延与更高的吞吐量,我第一次切身感受到了编码的价值,内心充满自豪,我这个小白,终于攻下第一城!
这一仗下来,作为新人,我收获不浅。我还认真总结了工作三部曲,一曲是要了解背景及真实的客户诉求,二曲是要切实了解及细化具体要做什么,三曲则是完成后复盘,考虑是否真的做好了,并进一步改进落地。
挑战升级,浪里小白再出鞘
也许是第一个需求里的成长和学习能力得到了部门肯定,部门波哥让我协助他做一个全新的技术项目:探索CloudSOP平台的异步Java框架。如果这个项目能实现,任务在执行过程中就不会阻塞,高并发下可以处理更多的任务,相当于给产品的性能增加了强劲的双翼。
我开始了人生中的第一次出差,作为广东人第一次踏出省外,没有出差经验,十月底的广东,还在夏天的怀抱里,我带着广东的夏,闯入秋意甚浓的杭州,一件短袖,别无它物,但内心热血激荡。
初识Java异步,我这个刚因进阶而沾沾自喜的小白,一下子又回到了小白的起点。看着我求知欲满满的小眼睛,波哥大笔一挥拿起斐波那契计算便演示了Java异步概念:一个斐波那契计算F(20)就已经让Java的线程受到了极大的影响,整个调用接近卡顿,几十秒都没有结果返回,而异步化下的斐波那契计算却毫秒级别给出了结果。显然Java异步化,在某些方面的优势非常大!但对于编程经验尚浅的我来说,做异步就是挑战自己惯用的思维方式,从单线程变成多线程,是个不小的挑战。
万丈高楼平地起,以前工作只是编码,从编码到设计却是第一次做。刚开始,我还有些不好意思和波哥交流我的想法,更多的是请教学习,记录一些关键的知识点,然后自己快速地查资料恶补,勤能补拙,后来打的交道多了,我也开始提出自己的一些想法。
有次我提交了一个优化设计代码,但得到的回复却是设计冗余,要进一步解释。我仔细看了看提交的设计,确认几次后忍不住问道:“波哥,你觉得这块这么设计不好的点在哪?”
“你看这部分不是显得很冗余吗?”
“但整体的性能会得到提升,且结构上也更可读啊!”
“甜甜,我觉得这块的消耗是可以接受的,你是不是过度设计了?”
我的表情凝固了,是不是我经验不足没思考全面?认真回顾了一遍思路,我坚持地回道:“一次性能的消耗可以接受,但其实这里调动很频繁,需要优化。”我主动拉着波哥逐步讲解分析过程,听完后波哥若有所思地点了点头,设计被采纳了,同时在原有的设计上做了进一步优化。
虽然大多数碰撞中,我的观点不够全面,可随着碰撞的火花不断地迸出,就总有新发现,我也从碰撞中学到新的观念与知识。
有一天,波哥突然向我说道:“你之前做过tomcat(Web应用服务器)新增UDS通信能力的扩展,我也想给一个三方件做这样的扩展,但怎么也取不到连接,帮我看一下吧!”我猛然扭头疑惑地看着他,真挚的眼睛眨了又眨,确定他是在向我求助,得到肯定的答复后,我赶忙与他一起分析,不到5分钟我们就把问题解决了。波哥向我投来了赞赏的目光,那一刻,我简直想开心地手舞足蹈,从主动问问题到被求助,我明显感知到自己的成长,想起啃书学习的时光,想起每一次与问题咬牙坚持的死磕,那些在别人看不到的地方,付出也一定有收获。
如今我再来回想,我来华为第一个需求是扩展一个三方件的实现,第二需求就升级为参与设计一个三方件,如果用一个词形容我作为新人的半年生涯,那一定就是“挑战”。
在四有团队中成长,做实力浪里小白龙!
在杭州那段探索技术的日子充实而愉快,异步ORM(对象关系映射)的项目也到了一个阶段,我结束了Java异步的投入,回到东莞转入到其他攻关项目中。回到组内,我立马投入到全新路由组件构建的项目中。
不久,我们就遇到了一个巨大的挑战。当前版本遇到了严重的阻塞问题,且攻关多日无果,交付落地又迫在眉睫。我们是继续攻关问题,基于新路由组件进行需求开发,还是把老的那套路由组件拿出来进行改造呢?如果继续攻关新组件,一旦未能及时攻关,版本将无法按时保质交付。但如果改造老组件,就要把版本交付的新需求落在老路由组件上,势必造成一定的浪费。
正当大家踌躇不决时,开发部长组织了一场动员会,同大家一起分析了当前的挑战和机会。首先绝不能放弃我们的追求,新的组件才能承载未来云化架构的演进,同时版本需求的交付也是我们必须坚守的承诺,要证明我们是一支有追求同时又可信赖的队伍。最终部门抽调人力,加入我们,两线并行作战,确保技术演进和需求交付目标均可达成。而我,被指定负责老路由组件上的需求开发。
项目策略虽然确定,但实现落地仍是一个巨大的挑战。在双线作战的这段时间里,大家都承受着巨大的压力,但我们不是孤军奋战,每个关键节点,团队主管都会和我们一起分析当前的风险与困难,给我们加油打气,多个阶段冲刺的深夜,都给大家准备了丰富的夜宵补充战力。
临近春节,我们基本完成老版本路由组件上实现新的需求,有了支撑了版本顺利发布的底气。这段时间的牵头交付也使我快速转身为组内骨干。不久后,在组内同事的共同努力下,新版本路由组件也攻克了难关,在下一个较大的迭代版本上,顺利地完成了切换。
这段经历让我这样一个习惯单打独斗的职场半熟新人感受到了团队强大的力量,以及那句“败则拼死相救,胜则举杯相庆”的真正含义:团结。
切换完成后,总线在云化和智能化的道路上迈出了第一步,版本质量趋于稳定,前期项目攻关中积累的经验也让我对新路由的进一步演进有了些想法,没想到我的想法引起了大家的共鸣,深入思考后,我们向领导汇报了相关计划并得到了极大认可,为了保证整体质量。领导特意给我们协调了平台的首席架构师胡昊,作为指导给我们保驾护航。
我主动请缨负责这个重要任务,但这次的任务不是简单对代码进行程序上的修改,而需要考虑什么架构才能满足我们未来云化的演进目标。我积极找昊哥跟他进行请教,站在牛人的肩膀上,我清晰感受到自己的思维方式和水平迅速提升。经过一番锤炼,终于到了接受考验的时候:性能测试环节!我内心充满了期待与紧张。
“部分场景性能数据翻倍,最差场景数据也比演进前版本提升了20%—30%!”振奋人心的测试结果瞬间传遍组内四周。
“够牛!够专业!”主管一句话就让我的心里暖暖的,大多工程师不善言辞,但只有这群人知道成果背后的酸甜苦辣,而此时的一语带过,已胜过千言万语。
四有新青年,我们的征途是星辰大海
从一开始的追求成长抓住机遇,到与团队商用交付日夜奋战,再后来,有幸与专家碰撞开拓视野,并被信赖委以重任突破自我,最终将四有“有追求、可信赖、团结、专业”融入日常工作中。
现在,大家也会打趣,说我是一名标准的四有新青年。浪里小白龙乘风破浪的这几年,时刻提醒我,作为年轻人,要敢想,敢干,沉下心来钻研,也要敢于向有经验的前辈请教。作为华为人,要勇敢、进取、果断和无畏,纵游在未来的这片星辰大海中。