1024,是
中国程序员节
。
ITPUB 围绕
“走进程序员,最难忘的瞬间”
这一话题切入,做了一期特别策
划
。
本次邀请了十位技术专家,内容上我们将讲述时代及个体故事的权利 “交接”给程序 员,由他们真正作为“主角”讲述鲜被听到的内心声音。并且从诸多技术人自身出发的叙事角度,一反网络上刻板的“社交形象”。
生动的文字背后所呈现的是诸多个体面对初心、面对业务中的“疑难杂症”、面对职业生涯的种种抉择时最真实的状态,足见其背后的初心、果 敢、坚持与担当。而一份份细腻的人情味儿,更溢于行 间字里。
策划&编辑 | 韩楠
独家分享
➤ 一起看看各位老师的“程序员故事”

➤姚伟 本来生活DBA经理
初次独立完成,搭建一套系统架构……
收到ITPUB 本次的邀请,慕然间不觉自己已大学毕业10多年 了。
我从事数据库管理工 作有10多个年头,经历过无数次半夜的项目变更,也经历过很多次线上故障的处理,同样经历过高压下的数据库故障排查和解决。
幕幕过往于此刻划过脑海,汗水喜悦交织,我从一名数据库技术小白,经过层层历练终究成长为技术专家,这个过程也只有亲身经历过的人才能体会。
经历里面令人难忘、记忆深刻且值得怀念的日子里,每次攻克数据库的疑难杂症;每次和团队昼夜加班保证新项目上线;每次双11和大促日的坚守岗位保证业务正常运行的日子。
而最令我难忘的又是什么呢?
一直以来我都有记笔记、写技术BLOG的习惯,记得在之前的一家上市公司做资深DBA期间,公司本着去IOE和降本增效的目标,开始让我们DBA部门 在新业务上尝试使用开源数据库,当时我们选中了PostgreSQL,我就在想如何把PostgreSQL搭建起来 应用到新业务的生产环境上。
当时因为对PostgreSQL不是很熟悉,就靠网上查到的资料一步步把PostgreSQL+Pgpool的HA环境搭建了起来,并实现了应用访问的读写分离。这是我当时第一次独立完成搭建一套开源数据库系统架构并成功应用到生产环境上。此间我详细记录了整个搭建过程,并形成文档保存了下来。
方案被集团总部采纳
在我离开这家公司的若干年后,和以前的老领导聊天,得知我当时的这套使用开源数据库用于新业务系统的方案已被集团总部采纳,并在整个集团广泛使用。那一刻我突然觉得无比欣慰,仿佛自己的“生命”得以延续一样。
在此,要感谢的人太多太多,有同事,有领导,有朋友,有伙伴,有老师,有家人。再次感谢ITPUB 能够提供这样一个平台,可以让我在1024中国程序员节这个特殊的日子表达出自己的心声。

➤张亮 SphereEx CEO
做个开源项目,造福全世界工程师
我在学生时代埋下了一颗种子,希望能做一个开源项目,为全世界的工程师造福,成为他们日常讨论交流的项目,这起源于大学课程中 Tomcat 给我留下的深刻印象。
因 此,我决定倾尽全力做一款开源项目, 并命名为 Sharding-JDBC,而在此之前,我于数年间做过大量尝试,却都未掀起波澜。
在 Sharding-JDBC 开源两年后,我触达到了将它推向世界的机会,进入 Apache 软件基金会,这个和 Tomcat 同门的基金会。经过了长时间的准备,以及重新命名为 ShardingSphere 之后,我发起了进入孵化器的 投票。
在投票通过,进入 Apache 软件基金会孵化器的一刻,是我当程序员的这些年,难忘的一瞬间 。时间定格在2018年11月10号,双十一的前一刻。

➤熊志男 研发效能专家
一个案例,内部门认可,外部门使用
程序员有的是为企业或政府开发软件系统的,也有的是为互联网用户或C端用户开发应用的,而我是为程序员自己开发工具和系统的。
程序员大都是装备和工具控,为了提高开发效率,工作中会用到各种工具,比如好用的代码编辑器、部署工具和测试工具等等。因此我们很容易就能看出来研发效率和质量工具中存在的问题。
一个优秀实践案例
记忆中印象最深刻的一个案例,就是我在京东工作期间,为一线研发团队开发的代码质量平台。此间通过深入一线研发团队去了解需求和痛点,并反复和研发架构师沟通使用场景,在开源的代码扫描引擎基础上构建符合实际场景的功能特性。
该平台获得了部门内研发人员的认可,同时还推广给外部门使用,成为研发体系质效提升的一个优秀实践案例。 得知此消息的一瞬间,我激动不已。
角色转变,拥抱变化
现在随着工作性质的转变,角色上我也从程序员岗位,转为工程效率产品经理、DevOps咨询师,遇到了不同行业的程序员群体。 他们大多时间都在为了不同群体的客户开发提升效率的系统,而 我希望通过自己的努力,持续为程序员群体打造好用的和可靠的质量效率工具。

➤李晓双 Alibaba Nacos Committer
跨越山丘,迎来高光时刻
在我短暂的职业生涯当中,最令我难忘的瞬间就是突破自我的舒适圈,并取得成功的 那一刻。
绝知此事要躬行
遇到瓶颈期时,我寻求技术上的突破,正好赶上团队内的项目拆分微服务,还要引入一些中间件来支撑微服务的拆分和解耦。当时在研究中间件时,我通过官方给出的 example 将程序跑起来,中间遇到点小问题,最后发现是官方的例子写得不太准确,于是我就提交了一个 pr 将 example 修正。
两三个月后的某一天,我的 pr 被合并了
时间有点长到我都要忘了它,在得此消息后还是非常激动的。当时内心萌生一个想法,既然 crud 已经写了这么多,为何不再深入一下,研究下底层我们平常接触不到的东西,看看它们是怎么实现的?
此后我就开始正式接触开源,在社区领取任务,并和社区的大佬们讨论实现方案。开源社区是一个非常包容的群体,哪怕是特别小、特别简单的任务,也会很耐心地指导你怎么做。以前我习惯了写 crud ,突然用代码来开发代码,让别人使用你开发的代码去写代码,一时间不知道该怎么做,还好有社区的小伙伴们耐心的指导,初始有些东西不知怎么写,核心代码感觉也看不懂,甚至期间想放弃,断断续续重复看,突然有一天发现这段代码我好像理解了。
某一天我被提名为 Committer 了
慢慢地,我适应了这个开发的方式,逐渐能够跟上大家的节奏了,随着我在社区的贡献越来越多,终于在某一天我被提名为 Committer 了。当我收到 Committer 证书和名字被挂在官网上的时候,我愿将之称为我的高光时刻,这也是当时令我最难忘的瞬间。

➤韩锋 数据库资深专家
请叫我“三封”
我是程序员出身,大学毕业后就加入到一家国产信息化厂商,开始了自己的程序员生涯。加入公司的第二天,就被领导叫过去谈话,有个重大项目需要集中开发,准备封闭吧。
于是懵懵懂懂中,进入项目组,在一个山清水秀的地方开始了朝九晚十二的生活。每日开发、吃饭、睡觉,三点一线。之后,时隔半年又经历过一次封闭,直至项目研发完毕。
再之后,因工作原因调整项目组,之前这边从没有封闭,还窃喜不会再经历非人日子。没想到的是,进入不久又要封闭。作为一个“封闭”老人, 熟练交代大家带什么东西,注意什么 ,被人戏称为“三丰”。作为一名程序员,我相信大部分人都有这类似的经历。
也许只有体会过这种日子,才真正悟出研发的不易,但也是这种经历对个人的锻炼很大。虽已过去二十多年,依然还记得封闭中每周六下午的全员疯狂篮球;还记得每个人统一的“马桶盖”头;还记得通宵上线后睡不着的组团跳绳……
今天是1024,作为程序员的节日,在这里祝愿程序员们“ 出走半生,头发仍在:) ”。

➤薛晓刚 行业资深数据库研究员
“遥不可及”之下的机会
从前我看别人自我介绍各种头衔,而且是认证讲师,觉得遥不可及,我从未想到自己也能成为这样的人,不过的确内心深处是想成为这样的人。不过,对当时的我来说确是一种突破。
“我觉得你挺靠谱的,来讲课吧?”
有一次我的老师对我说:“我觉得你挺靠谱的,来讲课吧?”就这么一句话,一瞬间我内心百感交集。我得到了业内大咖的认可,既然认可说明可以试试。我依然是略有紧张的录制了试讲课程,提交了上去。在老师的建议下进行了几次修改,从此我踏上了一条数据库认证和实战培训讲师的道路。
当然这也是教学相长的过程,自己也有盲点。当被问到不知道的地方,也促使自己去研究清楚,直到彻底搞明白。也深刻知道要给学生一杯水,老师就要有一桶水。自己听明白和给学生讲明白差距很大,要系统的讲解。在此过程中自己也得到了升华。
潜心做事,谨遵教诲
我深刻记得老师的教导,一个人是不是掌握了知识?第一层是是自己听懂了,第二层次是被教的人听懂了,第三层次是被教的人把其他人教懂了。
目前为止我教过的学员涉及政府、银行、保险、运营商、证券、医疗、交通等诸多行业几百人。从开始讲课有点紧张到现在游刃有余;从默默无闻到小有名气;从数据库管理到数据架构师。这些蜕变,都是来自于那个难忘的一瞬间。每次遇到业内高手和大咖都勇敢地上去介绍自己,并且结交这些值得学习的人,从而学习他们提升自己的见识和思路。至今我记得每个瞬间。
抓住、改变、带回、推动
有的时候机会就在一瞬间, 抓住了可能就改变自己,也改变周围的很多人。将业内的前沿、趋势和理念带回公司,从而推动公司在数据库、甚至数据架构上的变革,这让我觉得很有意义。

➤祁国辉 前Oracle云平台事业部电信行业技术总监
条条大道,我该怎么选?
说实话, 接到这个邀请, 我有点忐忑, 因为我已经离开程序员这个岗位很多年了,但转念一想,不代表以前不是, 绝大多数IT人进入IT圈, 不是收到Nike的鼓舞, 而是想做一名程序员,探索数字世界。
人人都说, 你的第一份工作,会给你的职业生涯留下不可磨灭的影响, 我深深地认同这点。也就是我的第一份工作,以及老同事的一番话,引导我走上往后的职业生涯。
"专业",被我封为圭旨
我记得当时正在做深圳某个巨型通讯企业的内部银行项目, 到岗之后,就接触到一本像城墙一样大小的用户需求,简称UR。历经两周之后, 基于这个UR, 又出现另外一本更厚的文档, 叫做软件功能描述(Software Function Specification)。当时真的不觉得有什么特别, 但是过了20年之后回头看, 仍然觉得他们当时做得非常的专业。所以专业这个标签,一直在我后来的职业生涯中, 被我封为圭旨。
职业选择:走哪条路
而对我后来的职业选择起到重要帮助的,是和一个前辈的深入交流。说到工作几年后,IT人都会根据自己的特长和兴趣,选不同的路。
• 比如一种是从优秀的程序员, 转型成为Team Leader, 最终走上职业经理人的角色;
• 还有一批对金钱和市场比较敏锐的同事, 则迅速转型成为销售, 而销售中的佼佼者,都会向创业者或者CEO方向发展;
• 而另外一些人会对新技术感兴趣, 那么就不能满足于系统分析员, 而是要把目光放得更加长远, 去研究系统和系统之间的关系, 那这些人就是架构师。
当然, 他也忽悠我说, 还有一种人,会转型去做顾问, 可能现在顾问这个词已经满大街都是了, 但是那时候他说,并不是随便什么人都能够做顾问, 做顾问对人的智商、情商和技术的要求都很高, 可能培养十个,最终能成为合格顾问的最多两个。
想想十年后, 你该干啥
最后他建议我要尽早对自己的职业做好规划,最简单的方法就是, 想想你十年以后, 你应该干啥?
也许是对这番话的认同, 当然也是年轻气盛, 我就选择了顾问这条路。从最早的数据仓库开始做起, 作为国内第一批数据仓库的从业者,做到了国内数据仓库市场的启蒙、壮大、发展, 能够在其中贡献自己的力量。是我最值得骄傲的地方。

➤陈珙 轻阅科技系统架构师
工作能填饱肚子,成就感能充实灵魂
感谢 ITPUB的邀请,仔细想想,我的经历里还是有一些非常值得分享且印象深刻的难忘瞬间 。
穷则独善其身,达则兼济天下
步入这个社会开始,我一直认为如果自己有能力,尽可能帮助到一些真正需要被帮助的人。 达,不一定得是金钱,可以是知识,更可以是经验。 授人以渔不如授人以渔。这也是我多年以来坚持写技术博客分享的主要原因。但同时我也在想,从博客收到的反馈永远是文字,文字是冰冷的,再强有力的用词也会稍纵即逝。我开始尝试,并狠狠拽住机会……
第一次线下技术分享
因我多年写博坚持,多次获得了其他企业邀请做技术分享的机会,我印象深刻的是第一次进行线下的。甲方的听众每一次对我所讲知识点的点头认同,每一次掌声的响起,让我意识到这诸多的一瞬间,更大程度上汇聚并生发出了一股股力量,更是给予我过去努力多年的肯定和认同。同时也是给予我继续走在这条道路上最大的动力与支持。
工作能填饱你的肚子,成就感却能充实你的灵魂。

➤王磊 SelectDB 资深大数据研发专家
从学习到分享,第一次怎么突破自我
作为一个普通程序员,我按部就班,经历了:初级研发、中级研发、高级研发、技术专家(架构师)的过程。那么从一个普通程序员进阶为一个合格的架构师,让我最难忘的事情是什么呢?于我而言,莫过于第一次在互联网上分享个人观点的这一经历。
闲暇之余,我常会抽时间读读技术博客、热门书籍,看看互联网上一些大佬们的峰会分享。技术上我还是比较自信的。
自己初次分享,打破平静
有一天闲聊中我的一个朋友说想邀请我,针对某个热门技术点 做个15分钟简短的线上分享。我一听这个技术点我挺熟悉,于是我心一热糊里糊涂就答应了。结果真到输出的时候发现事情并不是那么简单。
我记得印象最深刻的是朋友给我的分享提了俩问题。一个是读者为什么抽出宝贵时间来学这个技术?二来,为什么要听我介绍这技术?
放弃,提笔;放弃,再提笔……
我把涉及该技术的原理和使用,做了多方面调研,却没找到我要的答案。这下我才慌了,发现分享并不是简单地将现有知识搬运,而是得经过深度思考,实践后的沉淀。这个过程中我经历了放弃,提笔,放弃,再提笔,直至最终完稿。
说实话,中途多次想要放弃,但是最终还是坚持住了。此经历让我切实感受到了学习和输出中间非常大的鸿沟。也由此促使我开始认真审视如何才算是掌握一门技术?实则不但需了解该技术的原理和使用,还需要有自己的理解和心得体会,并能将该技术深入浅出地给其他同学解释清楚。
职业生涯:里程碑事件
可以说,这件事也成为了我从高级研发走向架构师的一个里程碑事件。至今,我仍对第一次提笔又放下又提笔的场景,难以忘怀。此间,很庆幸地发现,原来这就是我在技术上第一次真正做到了突破自我。

➤知幻即离(笔名) 某公司电子验印系统技术支持
我与“程序员”的“几经周折”
因为在规划验印系统服务器分工、硬件配置上,能够根据业务情景、软件模块的计算密集、存储密集、网络总体流量、瞬时流量有分析、有思路、有条理的考虑、裁剪,而被研发老大收编麾下。
一次冲动,我与“程序员”失之交臂
入门即被要求用delphi写一个已有控制程序对接一款桌面型清分机(可以理解为有实物分拣功能的高速扫描仪)的程序。
虽然不怵结构化编程有关的计算、循环、分支,但对于面向对象不熟、Delphi编辑器不熟、类Pascal语法不熟、VCL框架无知、C语言DLL动态库调用无知、清分机嵌入式处理器大端、小端没概念,吭哧了一两个月才实现了票据分拣、图像落地。估计这事,老大一个下午、顶多第二天就能搞定。
原本觉得颇有喜悦、收获,可渐渐步入这个神奇、有趣的世界,但老大批语:对接口完全不懂!给你打个样!
一不留神,随着旋转门,入门又出门
多次担任软件项目的项目经理以后,深感不掌握产品代码、相关语言、工具,只能限于和熟识的技术团队捆绑工作。一旦脱离原有团队支持,有时会被“客气”地置于技术工作之外。对外,因为交付无把握、信用屡屡打脸、有效进度和真实阻碍不知道、不确切,不敢答应需求,同时也就没有资格拒绝、建议需求。对内,问多了不是,问少了也不是。
多年后,因项目控制力需重拾编程能力
反思当年,不如专心写代码三四年,之后再探索自己的兴趣、能力可能,也好基于一个坚实的基础。
没能成为一名程序员,哪怕是曾经,如今想来依旧是我的遗憾。从个人经历的无奈反复看,不适宜频频见异思迁,如果一门深入地建立真实功力,然后可由深度达到高度,因触类旁通,高效建立广度。便可能在工作中进退有余,独立也可,与人合作也可,左右逢源。
结语
关于走进程序员,最难忘的瞬间这一话题点,本次邀请了十位技术专家分享其切身心得、体会。相信我们更进一步感受到了一位位分享者在持续深耕、潜心做事、持续沉淀经验上的精进与专业,让人不禁一次次透过文字,心生敬意。
我们更不难看到他们面临诸多选择时,其背后坚定的初心、坚持、担当、勇气、韧劲儿。于此,想上一二,也更值得我们去体会、去品味、去“思齐”,感受他们为时代汇聚起的一股股力量。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70016482/viewspace-2920276/ ,如需转载,请注明出处,否则将追究法律责任。