华为用他的名字命名了软件代码

初秋的慕尼黑,早晚已有些微凉意,每天往返于德国研究所和住地,我很庆幸,在华为的第十年,在最好的年纪,能够来到全球科技最发达的国家之一工作学习,一圆当年的海外梦。
没有华为这样大大的舞台,小小的我或许就不会拥有如此宝贵的机会;没有华为这样开放包容的环境,作为研发小兵的我也不会在那方技术的小天地里快速成长。时光漫漫,点滴回忆,拾些片段,分享一二。
2006年,应届入职华为一年的我,加入到新产品OCS(在线计费系统)的开发队伍中。当时,视频通话、网上冲浪、游戏娱乐等业务如雨后春笋般冒出,单一的业务计费模式已经不能适应快速变化的电信市场,迫切需要一个对用户使用的各种网络资源、服务资源进行实时、准确、个性化融合计费的系统。OCS应势而出。
我们的第一位客户是广东移动。客户要求两个月内实现OCS每天凌晨能快速生成前一天的详细报表数据。简言之,导出3张报表,包括用户的余额信息、状态变更的用户信息等。数据的计算规则十分复杂,项目组最初的考虑比较务实,只需按照当前的目标格式和规则,直接写代码即可实现。
然而具体分析时,我发现了一些问题:报表中部分字段的定义规则比较模糊,需要SE(系统分析师)和客户确认,这样统计结果不一定准确,还耗费人力;数据的存储位置发生变化时,会导致生成报表的代码需要频繁修改。而长远考虑,如果业务量增加,未来是不是还会有第4张、第5张甚至更多的报表数据需要导出?
我想编写一个更加灵活的程序,它不限于机械地产生客户当前指定的3张报表,而是能根据配置生成任意报表。打个比方,原先是制造一个只能做“番茄炒蛋”的炒菜机,遇到“韭菜炒蛋”就不能工作了。如果有一个机器,只要输入菜谱就能炒出各种菜,岂非更高效?
我利用业余时间,编写雏形程序来验证思路的可行性,并制定了两个月的具体实施计划。虽然开发难度加大,时间也很紧张,但实践证明应该是可行的。于是我鼓起勇气对项目经理说了我的想法,没想到的是,项目经理(PM)爽快答应,但当时人手有限,只有新员工小张可以和我搭档,我说没关系,并拍着胸脯向PM保证能完成任务。
之后,我每天快马加鞭编写代码,优化算法,带着小张一起调试各种场景,回到住处经常是深更半夜,最终如期交出了新的程序。在同样满足客户所有性能指标的前提下,平均开发一张新报表的周期从原来的2周缩短至一天,效率大大提高。
后来,报表的需求果真从3个增加到十几个,而我们不需要修改主程序,只需要修改配置文件就能解决。这种感觉,就好像修炼《九阴真经》,内功修好了,招式可以千变万化,让人心中很是舒畅。后续其它局点,现场人员甚至可以按照客户的要求直接配置,减少了一线与研发来回交互的环节,也减少了研发成本,更加体现了程序的价值。
事后有人问我,为什么要加班加点去做这么费力的事?对我来说,也许它只是一个小工具,但实实在在提高了交付效率。人生会面临很多困难和挑战,我喜欢尝试每一种可能,尤其是对工作目标有更高的追求时,我会情不自禁地寻找最佳解决方案,并愿意付出更多的时间和精力竭尽全力去完成。
“高亮, 你做的这种语言编程效果不错,解决了交付的大问题,起个名字,就叫高亮码吧。”开发代表张钒说。
“领导,开玩笑吧,这也太高调了,人怕出名……”
“这不只是我的决定,产品线也同意了。你现在想不出名都难咯!”张钒笑。
这是怎么回事呢?且听我道来。
开发完报表模块后不久,我加入OCS主业务的开发中。OCS通过配置数据就能实现各种复杂的功能,需要编写的代码量大为减少,从而能够更快地交付版本。但随着海量的产品交付,大量客户需求接踵而至,需要多人协同配置的版本管理出现了新的问题,比如设置成什么样,谁做了改动,改动原因是什么,改动孰对孰错,问题发生的环节在哪里……这些比对、合并、修订、回退等管理环节要耗费大量人力来回检视,协同开发的效率大受影响。
怎样才能既保持数据配置的优势,又能有传统代码开发成熟的版本管理能力?我陷入思考。在查阅了很多资料后,我想到用可读性更强的文本格式来重新定义这些配置信息,也就是研发里常说的“伪码”。这种“文本格式”比一般的代码要简单易懂,和业务领域更加接近,又兼具版本管理的各种优势。技术上称为“领域语言”。
说干就干,团队很支持我的想法,启动了CBDE(融合计费配置开发环境)项目开发。内部试点应用后,配置模式不变,但通过领域语言解决了多人写作的大规模配置场景下的版本管理问题,大家一下子就接受了这个新事物。
之后CBDE应用全面铺开,以前20人的团队同时交付两三个运营商客户,都会有点吃力,现在同样的团队可以同时交付8个客户甚至更多,高效支撑了多个局点的交付。
公司对我的工作给予了肯定,为这个新语言精心命名为“glee”(首字母gl正是“高亮”的拼音缩写,glee在英语中也有“快乐”之意)。至于中文名,就直接称为“高亮码”了。据说这是公司软件首次以开发者名字命名的相关实现,我倍感荣幸。这份荣誉远远超过了物质所能带来的激励。
2008年11月,我参加了公司成立20周年的奋斗者大会,并获得了业务创新个人奖。没有包容、开放的环境,25岁的我,不可能登上公司级的领奖台。
老话说“前人栽树,后人乘凉”,可有那么一次,自己栽树,恰好给自己乘凉了。这又是怎么一回事?
2012年,我参与下一代计费系统CBS5.5的开发时,编写了几百行代码,加入了一个不起眼的功能:系统中处理完每一个计费请求之后,都可以自动输出一份精简版的“处理摘要日志”,只额外消耗5%的性能,就能在现网随时开启日志看到我们的处理过程。
2013年,CBS5.5准备在巴林上线,此时的我已担任后方上线保障组组长了。这是CBS5.5全球第一个上线局点,又涉及十几个模块,我们要力保不失。
然而上线后没几天,真发生了状况。我们发现有极少量用户的部分余额似乎被“冻结”了,只有特殊处理才能恢复正常。发生这种问题的用户很少,影响程度有限,我们很难根据样本量找到规律跟踪分析。
产品的各级研发领导很慎重,这个核心计费模块,不应当出现任何瑕疵,需尽快查明原因。我既是保障组组长,又是该核心模块的程序员,真是“压力山大”。在常规分析手段无果之后,我灵光一闪,脑海里想起了那个小功能。
我连续开启了一夜的摘要日志,经过一番仔细检查,果真找到了蛛丝马迹。依照线索,我又和开发测试人员进行了深入的分析和测试模拟,原来是和我们的计费系统对接的外部系统在某个特殊场景下没有遵从标准协议。得出这个结论时,天色见明,大家如释重负,迅速给出了解决方案。事后我还心有余悸,要不是这个小功能,咱这个组长可要尴尬了,说不定还得多花几天时间才可能分析出来呢。
回想在OCS多年,从开发工具到接手计费核心模块,参与过很多大型功能开发和技术改进,获得过公司十佳MDE(模块设计师)、金牌奖。然而这个小功能,却给了我特别深刻的记忆。
小功能也有大作用。有时候多想一步,多做一步,也许关键时刻就能派上用场。
如果允许吹牛的话,我想,我是主持界里最会编程的,编程界里主持最好的。
我热爱编程,也喜欢和人交流。我一直在想一个问题,华为程序员那么多,其中不乏编程高手,有什么平台能让大家交流各自的代码技术,甚至相互切磋,一决高下呢?想来想去,那不妨来一场趣味编程比赛吧。
我用业余时间编写了“俄罗斯方块”对战的平台。与游戏网站的同类比赛不同,我设计的游戏不是人人对战,也不是人机对战,而是“程序和程序”的对战:程序员双方各自编写代码开发插件,让插件在游戏平台上进行*。这很像是“*”,但不是比游戏中的执行速度(当然都比人快),而是比算法策略。
这很符合程序员的口味:我也许不太会玩游戏,但编程技术很好,我编写的程序比赛策略可能比你好!如此一来,不仅比赛结果充满戏剧性,程序员们的编程技能秀也充满了趣味性。
平台推出后,我先发给几个同事“试水”,大家迅速被吸引,在业余时间玩得不亦乐乎。像星火燎原一般,比赛迅速走红,小组之间、部门之间相互开展了多次比赛,竞技平台大获成功。

|美女|与“野兽”的搭配
2013年,平台正式登上南京研究所“编码达人秀”的舞台,在研究所各大部门间进行对抗。更因为大家热烈的响应,它被迅速推广到华为其他研究所,以及南京若干所大学校园的比赛中,吸引了一大批编程高手参与,涌现出很多高质量的作品。
2014年,我推出第二季“推箱子”比赛平台,设计出更适合编程*的竞赛规则;2015年推出第三季“炸弹超人”比赛平台。一步一个台阶,此项活动已成为南京研究所的经典赛事。
在研究所和面向大学生的历届比赛中,作为比赛平台的开发者和比赛的组织者,我当仁不让地担任了一个新角色:主持人,成为传说中的“南研吴宗宪”,也算是当得有模有样。

苔花如米小,也学牡丹开。花犹如此,更况人乎?这些年,伴随着OCS从一个新产品逐渐拿下全球市场第一的份额,我也从一名小小的开发人员,一步步成长,走向MDE,走向首席程序员。2015年,由于我在领域语言方面做出的相关成绩,我调到华为德国研究所,实地接触和掌握国外最新理论和实践,参与相关技术运用的设计和实现工作。
感谢十年来华为给予我的一切,让小小的我拥有广袤的学习提升空间,不断发挥和实现自己的价值。我始终相信,再微小的力量只要奋勇前行总有一天会发出大大的光芒。未来,继续奔跑!
本文来自心声社区·华为人·枪林弹雨中成长系列,转载请注明出处。
讲述华为人的成长故事

长按二维码关注心声微信公众号
# 写了
# 事后
# 的是
# 前人栽树
# 自己的
# 慕尼黑
# 小张
# 巴林
# 十几个
# 大大的
# 计费系统
# 华为用他的名字命名了软件代码
# 业余时间
# 最好的
# 也有
# 我想
# 这是
# 南京
# 对战
# 就能
# 华为
# 软件教程
相关文章:
2025年轻人App使用白皮书-后浪研究所
今日热门短剧《他的背后》(合集/完整版/大结局)不删减版
【软件资讯】Mac OSX苹果系统的Rhino对接KeyShot插件发布
林俊杰年费300元粉丝平台"林距离"APP被曝部分用户因批评其恋情遭禁言,引发大规模退费;此前其"隐藏式官宣恋情"引争议
这些插件让你知道 Chrome 好用在哪儿!
Grasshopper常用插件汇总
苹果安卓看剧必备无广告免费高清*APP
中美贸易战停火?头部资讯APP“集体乌龙”暴露出什么?
赶紧自查!这些App被通报
深蓝汽车app(内附攻略)
OBS美颜|直播|保姆级教程:OBS美颜插件下载安装步骤参数设置使用教程
插件合集「34」: 10 个免费的小插件集合
红果微短剧杀疯了!这3部热播黑马短剧,太上头了,熬夜必追!
设计百科公众号其它功能说明:软件、字体、插件、教程等内容等你去发现
强烈建议你,卸载这些APP!
全民反诈在行动丨别上当!这个App虚构“计划生育”补贴、骗取钱财
2025看剧App最新版本iOS安卓双端可用
凯哥 丨App Store 的葬礼:软件开始像纸巾一样被抽走
Excel办公软件插件,集合上百种强大功能!
10岁开始学软件,现在16岁的他已经出教程,写插件了
达芬奇蓝宝石插件 BorisFX Sapphire 2025.5 For Adobe/OFX/PS 安装教程
浙金中心APP恢复运营了,债权人有话讲.
2019最全的PS插件合集都在这了!
偷偷获取用户隐私,一批App插件被曝光!工信部发声
超好看!热门短剧丨大结局《认错联姻对象后,他超爱》全集在线看
精彩短剧《挚欢》1-99集(合集/完整版/大结局)
上海精英男女,困在dating app里
缘选APP
熬夜必追短剧《我埋葬于盛夏雪原》完整版1-73集/大结局/合集
你所不知道的PS实用插件之HDR Efex Pro
【明理正心清网】“国家反诈中心”APP安装指南来啦~
iOS12实用插件推荐:大大增加控制中心实用性!
好消息,iOS17.0 App 加速 win 版,确定有UI界面
精彩短剧《千金谋》1-98集(合集/完整版)
短剧大结局《周周爱》后续完整版(合集/后续大结局)
中药执业药师刷题APP哪个好?
iOS 14 一招隐藏所有 App + Dock 栏 + 刘海…
元旦高质量短剧推荐!
【Comfyui必装神级插件】比“提示词小助手”更好用的,只能是“提示词小助手2.0”
爆款短剧《半熟老公》完整版1-82集/大结局/合集
最高院:计算机软件著作权侵权案中源代码的比对判断问题
真·免费听歌App安利:LX Music,一个纯净的音乐源容器,自带下载功能.
1月2日热门短剧上线推荐!
源码崩解·觉醒三部曲第一部 (小说连载之三十四)
PS 插件:全套插件一键安装去限制版,助力 PS 高效使用,百度网盘分享给你!
iOS 16.1 B1 发布,新 App 来了~
古装微短剧必看榜单!4部不得不看的穿越、穿书、重生保命指南,不但保命还很甜!不看血亏!
10月更新版Ae插件合集: 6600+款!一键安装!彻底告别插件丢失!
即时聊天咨询 我爱我家APP推出找房新功能“爱聊”
【海员专属国际信用卡】美团、抖音等app消费返现10%,申请后注意接听电话,关注物流
相关栏目:
【
网络营销44070 】
【
网络推广122852 】
【
网络优化116010 】
【
网址导航102054 】
【
网络技术82194 】
【
网络资讯43554 】