90 后 CTO 如何成为国内首位女性 Apache Member?

【CSDN 编者按】在从技术人成长为开源导师的道路上,鲜有女性身影,但潘娟却凭借自身的影响力,打开了一条女性开发者的发展路径。从DBA,到内核开发者;从一线研发人员,到开源商业公司 CTO。如今开源界不少人称她为“娟神”,但相较外在的美誉,她更在乎自己的内心。与此同时,作为心理学爱好者,对“理性”与“感性”的深刻认知贯穿她的职业生涯。

作者 | 潘娟      责编 | 张红月

出品 |《新程序员》编辑部

作为DBA出身,和数据库的结缘让我走到了今天。从开发者到管理者和创业者的转型,我认为最为重要的三点是:创造力、思维力、学习力。

潘娟,SphereEx联合创始人&CTO、Apache Member

时至今日,开源在国内已经形成“燎原之势”。我一直坚信一句话:“选择比努力更重要”。所以我通过自己的选择和努力成为了Apache在国内首位女性Member。也正因此,大家比较关注我的性别角色。但我真正想说的是,女性也好,男性也罢,评判一名工程师的标准从来不是性别,而是真正热爱技术,坚持选择不妥协,时刻保持创造性。

在选择方向后,也要坚持走脚下的路。一路走来坚持到现在,我更多是遵循自己内心的选择。当然,随波逐流也是一种选择,这里不评判选择的对错,只要确定现在所坚持的是最适合自己的,能够让自己“早起”的动力即可。

本文节选自《新程序员》004,『纸质书+电子刊』已正式开售

从DBA到数据库开发

从开始接触软件时,我就决定做一名有创造力的开发者。

和数据库之间的缘分从我学生时代就已经开始。大学和研究生主要学习软件开发,“数据库”相关的课程我总是最优秀的一个,能考到99这样接近满分的成绩。基于良好的学习基础,加上毕业后又受面试官“忽悠”,当时给我描绘了一幅很有意思的理想图景。所以,我的简历就增添了DBA的经历。

但在工作过程中,我逐渐发现周围很多DBA更多关注的只是应用层,包括如何使用和运维数据库,以及如何为上层业务提供服务,但也就到此为止了。而事实上,数据库更有价值的部分在于内核。因此,我就更希望进入内核中,了解数据库究竟如何运行,如何面向数据库开发,以及如何提供更好的服务和支撑,等等。换句话说,从DBA变成一名面向DBA的开发者。之所以后来能做分布式数据库和中间件的开源项目,正是因为这次转变。

然而,当我真正开始面向基础设施做研发时,才发现一名工程师所应具备的能力不只是按照业务逻辑编写代码,更重要的是对设计、性能、编程语言,以及架构敏感度的把握。打个比方,数据库这类基础设施就如同房子的地基,地基设计得是否牢靠将直接影响上层住户的体验,即业务和服务。

此时的我才真正意识到,工程师是一个非常需要创造力的工作岗位。如果只局限在自己的岗位设定而没有更多思考,机械式完成任务的结果就是只能自嘲为“新生代的代码农民工”。只有把创造力、架构能力和学习能力都融入开发过程,才能感觉到自己的工作发挥出了工程师的真正价值,从而体验到研发的乐趣。

此外,我发现开发者的工作思维也会影响到我的日常生活。其实我原本不是在生活上井井有条的性格,书桌也经常很乱。然而,在工作中对清晰且干净的设计架构的追求,包括对冗余代码的难以容忍,让我对书桌的整理也开始有类似的追求—桌面的摆放布局必须规整合理,不能有多余的、不应该出现在书桌上的东西,这是做数据库开发者带给我的生活上潜移默化的影响。

在转型过程中,我逐渐接触到了ShardingSphere,如今在开源路上已走过六年。起初,我们捐赠项目给Apache基金会时遇到了不少困难,当时国内有资格带领项目进行捐赠的导师并不多。我们摸索了很久,直至遇到了Apache软件基金会孵化器导师姜宁老师与SkyWalking(分布式系统应用程序性能监视工具)的创始人吴晟老师,他们给了我们很多指导与建议,帮助项目通过了层层审核。在2018年,项目正式进入Apache基金会,经历了17个月的孵化后顺利毕业。

ShardingSphere和我都通过历练获得了成长。项目在GitHub上累积“15000+”Star,同时拥有超过300人的贡献者群体,已经成为Apache的顶级项目。与此同时,我本身是个热爱开源的人,我从开源中受益,所以希望尽自己所能让社区的其他同学受益。

好的管理者需要多线程思维,理性与感性并重

管理是一门艺术,是单线思维升级为多线思维交错的产物。

让我从开发者走上技术管理道路的是成为SphereEx联合创始人兼CTO。ShardingSphere开源后,越来越多来自社区的新想法被注入项目。这意味着项目需要更多的研发资源来满足日益庞大的生态需求。因此在2021年,我和Apache ShardingSphere PMC Chair张亮以ShardingSphere为基础共同创办了SphereEx。

做技术管理后,我发现横亘在工程师和CTO之间的不只是对技术思考角度的差异,看待事务的重点、沟通处世的方法也大有不同;同时也要掌握管理的哲学,以及对商业的考量。

在以上维度中,我个人感觉难度最大的是如何做好管理。视野、技术会随着工作经验的增长而增长,但管理能力却是开发者较少涉及的。研发人员每天面对的是能够获得稳定输出值、容易控制结果的代码,十分容易形成固化思维,并且会将编写代码的惯用处理逻辑代入日常管理中。

但人不是代码,人的可变性因素有很多,社交、环境、天气、饮食……一切因素都可能演变为影响效率的或好或坏的因素。如果按照统一的模板和流程管理团队,这些可变因素都会导致无法像编码一样获得固定的输入和输出,肯定会在团队磨合过程中产生各种各样的“漏洞”。

同时作为管理者,培养自身的影响力也非常重要。众行致远,管理者应该做的是让整个团队和公司尽可能走得更远。你的影响力不能只局限于代码,要影响到每一位团队成员,大到观念,小到行为习惯,引导团队向着同一个方向快速前进。

既然人员管理如此重要,那管理者究竟该怎么做才能服众?如何让团队成员认可你的逻辑,按照你想要的方式执行?即使员工可以按照管理者的逻辑尝试,又有多少成功率?事实上,这些都是不确定的,也正因这些不确定因素,进一步加剧了团队管理的难度。

在我看来,CTO在管理层面的挑战不仅要把握公司技术方向,只有统一团队的人心与目标,才是一名合格的技术管理者应该达到的高度。管理是一门艺术,是单线思维升级为多线思维交错的产物。我个人认为,想要做好管理,需要具备四项能力。

第一,丰富的专业知识背景

有了技术背景,才能科学地制定项目规划和团队每个人的任务安排,甚至可以精准预估未来在哪个时刻会遇到什么样的问题,这样就可以提前准备。

第二,行业发展洞察

已经做了技术管理者,就不能再像过去一样完全沉浸在代码的世界中,需要从具体的实践中抽离出来,充分了解行业趋势、竞品发展等,做到未雨绸缪。机会和风口只会留给有准备的人。

第三,强大的沟通协调能力

要保持整个团队的战斗力,管理者与团队成员之间需保持密切的沟通与联系;定时和所有人互通,了解每一个人的状况,关注他们有没有处于我们所期望的运行轨迹中,如果有人不在状态也好及时调整。同时拒绝“一言堂”,积极与团队成员分享最新的产品进展,做好沟通。让每个人了解其他成员做的事情及进度,这些都是需要技术管理者把控的。

第四,让员工感受到成长,这点很重要

将员工个体的目标和公司集体目标契合在一起,给他们更多的发挥空间。在维持个体创造性的同时,将创造成果反馈在公司及产品上。毕竟只有每个人都充满活力,公司的发展才更有希望。

此外,很多人也会好奇在以男性为主的IT圈里,一位女性CTO的管理方法会不会有什么不同。单从我个人经验来看,要说男女之间的管理方式会有多大差异,倒不如说每个人都有各自的特点。每个人的领导风格都不一样,性别只是其中比较好归纳的一个因素。事实上,合格的技术管理者身上会有一些共性:既有很强的思考专业知识的理性能力,也有关注员工成长的感性意识。

开源并非理想的乌托邦,而是关乎实际收益

开源带给我的更多是情感上的依托,是理性和感性的结合。

除了作为开发者和技术管理者,我的另一重身份还是Apache Member和Apache ShardingSphere PMC。从接触开源到今天,在我职业生涯的关键节点中,开源都起到了至关重要的作用。即便是创业,所做的事情与Apache ShardingSphere的结合也非常紧密。长期置身其中,我对开源的价值划分成了理性和感性两个层面。

首先是理性层面,参与开源的明确目的是获得收益。

比如,想在开源社区中锻炼自己,接触到更多、更新奇的事物,或者通过对项目的贡献,参与世界顶级的开源建设,让自己的简历变得更漂亮,为自己的面试加分。这些都是能够直接看到开源所带来的实际收益。

很多人一谈到开源就觉得应该是兴趣使然,是理想的乌托邦。而事实上,我们不能把开源想象得过分理想化,谈钱、谈收益并不可耻。每个人来到社区都有自己的目的和想法,只要不违法、不违反道德常识,通过开源满足自己的正常需要,也是对开源价值的认可。

其次是感性层面,参与开源社区也有隐性的价值所在。具体来说,包括以下三点。

  • 帮助参与者开拓视野。通过开源社区将全球的用户聚集在一起,换一个角度想,相当于把你的朋友圈拉升到了全球范围内。在交流过程中,各地用户可以通过开源更清晰地了解世界范围的技术动态,有利于做出正确的选择。

  • 为参与者带来被认可感。从心理学上看,一个人之所以选择工作,除了养家糊口之外,更多是希望获得成就感。这份成就感往往来自于朋友和社会,这恰恰最能体现开源在感性层面的价值。在开源社区中,当发现自己所做的贡献被别人认可,能够在全球各地应用,成就感是伴随着社区建设的深入油然而生的。

  • 丰富人脉社交。除了线上协作,开源社区也会在线下举办各类活动。开发者并不是大家传统印象中的“闷葫芦”,每当遇到志同道合者或结识行业大牛,大部分开发者还是很乐于沟通和请教的。以我为例,我非常尊重自愿加入开源社区中的各位小伙伴,因为他们中的大部分人都在用自己的业余时间和额外精力来参与开源,因此我也愿意付出同样的价值与他们互动。双方在彼此尊重的基础上交流,这正是开源倡导的“平等”理念。

无论出于热爱,还是其他目的,都代表着开源的价值被越来越多开发者认可。但对大多数人而言,这个圈子说近很近,在GitHub提交“issue”就能加入社区,并积极参与社区活动,也能够自己建设社区;说远也很远,全球性的基金会、开源的核心产品、行业开源大牛,这些似乎离我们遥不可及。

而这些问题如果延伸到女性开发者身上,阻力只会变得更大,这也是开源基金会中女性占少数的原因之一。而面对“女性”这个话题,我也有过相应思考。

女性的开源之路任重道远

通过层层“漏斗”,女性想要入到开源顶端还是任重道远。

在我多年的技术人生中,发现很多人都很关注我的“女性”身份,也会在我的介绍中加上女性标签,如“国内首位女性Apache Member”;参与各类海内外活动时,大家也会对我的女性CTO身份感兴趣。的确,在以男性为主的技术和创业圈子中,无论是Apache Member,还是CTO,女性似乎都是凤毛麟角的存在。

就我本人来说,可能是性格使然,并不会特别在意自己的性别角色。我喜欢编程,也喜欢心理学;喜欢什么就去学、去做,立刻执行。包括成为Apache Member,并不会在做之前想自己作为女性会不会不被认同或遇到更多困难。

但在整个技术行业中,确实存在男女比例失调,女性的存在感相对薄弱的客观情况。就“成为国内首位女性Apache Member”的现象,我也思考了它产生的原因,主要在于“三层漏斗”。

第一层漏斗:职业选择

在互联网研发行业,大家肯定都能感受到周边的女性工程师数量非常少。其中有相当一部分原因是许多女性更偏向于从事社科类工作和研究,而非理工科。因此在职业和行业层面,对女性就进行了第一层过滤。

第二层漏斗:开源筛选

总体人群基数少,愿意做开源的女性则更少。参与这一领域需要契机,也要花费额外的时间和精力,可能需要牺牲周末和姐妹逛街购物的时间。而且开源几乎没有经济收益,人各有志,不能强求牺牲自己的时间参与没有物质回报的项目。所以,这一层又筛掉不少人。

第三层漏斗:长期沉淀

即便突破了前两层的筛选,也不一定能够接触到Apache基金会。相较于平常参与的开源项目,Apache基金会离大家的日常工作更远了一些。在三年前,我也面临同样的问题。当时由于开源在国内还不像现在这么火,Apache基金会在国内的知名度不高,国内也没有太多具备导师资格的Apache Member,我们在很长一段时间内都没有凑齐导师人数,甚至想过放弃入会。但万幸功夫不负有心人,最终还是成功入会,才开始逐渐接触到全球的开发者。

当然,只是进入Apache还不够,我也是通过较长时间对它的理念和文化进行了学习,然后慢慢参与其中,扩大自己在基金会中的影响力,日积月累才成为了Apache Member,开始担任导师的角色。

相信未来一定会有更多的女性加入进来,我非常乐意见到“国内首位女性Apache Member”标签的消失。不过就目前来看,全球范围内女性导师数量是非常少的,要改善这种局面依然任重而道远。

结语:给开发者的几点建议

其实,任何人都是从底层持续成长起来的。在最初的工作经历中,难免会遇到挫折、不公等。在我做DBA时也是一样,可以说那时我才知道什么叫痛苦。

记得初入职场时,有一个业务需要从凌晨一点迁到早晨五点,期间无法休息。又因为当时我跟业务同学配合得不是很好,迁移过程出了问题,可能需要回滚,相当于当天和之前的很多努力都白费了。当时真的非常崩溃,加上一天没有合过眼,三点多的时候真的坚持不住了,我就哭了起来,坐在那说了很多如“这事我不干了,简直不是人干的事,一点价值也没有”等发泄情绪类的话。

但埋怨归埋怨,第二天面临的还是同样的局面,还是要去上班,依然要自己面对这个业务,依然要完成没做好的工作。所以,一定要能坚持。

我在这里想给开发者几点建议。

第一点,希望大家能够有更好的心态和精神面貌对待开发这件事情。我们在给自己身份进行定义时不要自嘲“码农”。无论别人如何定义你,你都要相信自己做的工作应该永葆创作力。我参加海外活动时遇到很多五六十岁的人依然在充满热忱地写代码,他们不仅仅把编程当成工作,更是精神上的实现。

第二点,思维方式要放得开。不要做了哪块业务的研发,其他领域就完全不涉及了。你可以在做数据库的同时做云,开发者应该塑造创造性的技术思维本身。

从技术岗转型管理岗的开发者:首先,要明白人是最无法预知的因素,需要适当抛弃做开发者时的编码思维;其次,你要对整个团队的人和事负责,而不是只要自己走得快,不管他们有没有跟上,这个问题技术人很容易产生;最后,就是听别人的故事,走自己的路,时刻保持清醒。

至于女性开发者,我觉得最重要的是坚定自己,静下心思考你自己的人生,想清楚自己想要的生活。在做职业规划和选择时,你的朋友、亲人或老师,都可能给你不同的建议和指点。即使他们的出发点是真心为你好,但你也要扪心自问,那些可能更加安稳、安逸的选择真的是“我”想要的吗?

本文文字及图片出自 CSDN

你也许感兴趣的:

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注