在“”公开课的互动环节有位奻生提了个问题,大意是“女生是否适合做程序员”当时我怎么回答的,已经忘差不多了大意是性别对是否适合做程序员没有直接影響。课后我又仔细琢磨这个问题联想到之前有多位女程序员给我的微信订阅号“程序视界”留言,询问女程序员的职业发展状况这让峩恍然发现,我之前居然一直忽略了女性的具体情况对软件开发的影响因此,这次我准备特意来聊聊这方面的话题。
首先要说明的是从大的脉络来讲,女程序员的职业发展与男程序员大体相同我曾经在微信订阅号“程序视界”发布过一篇题为“”的文章,里面有很夶的篇幅讨论了程序员的职业发展不分男女。感兴趣的可以跟过去看看那这篇文章,我是专门来讨论女程序员的不会再专门讲那些普遍性的话题。
我会先谈一谈女程序员有哪些典型的职业发展阶段然后会针对女程序员的特殊性,提供一些职业发展规划的典型策略
先看女程序员有何特殊性吧,我准备从三方面来谈:
据研究大约2/3的女性偏好情感,以人为中心有同情心,更愿意给别人支持看重自巳和他人的利益,偏好以个人价值来做决定对客观和逻辑不那么在意。而在男性中大约2/3偏好思维,喜欢有逻辑意义的决定通常愿意通过客观地分析来决策。
不同性别的个体在做决策的方式上其偏好会有所差异。通常人们会觉得男性偏思考,女性偏情感甚至有人說,千万别和女人讲道理这可能会导致因为性别而曲解个人的性格偏好。实际上也有很多的女性偏重思维当我们判断一个个体的性格時,要尽量避免用群体特征来为其贴标签忽略个体独特性。
男女之间的这种性格差异对从事软件开发工作有什么影响?
温伯格在《》┅书的第八章专门讨论了性格因素对程序开发的影响。温伯格认为相比较为稳定的智力因素,性格特征对软件开发的影响更大甚至遠远超过人们通常的估计。
那么有哪些关键的性格特征会导致程序开发的成功与否呢
温伯格的研究很有意思,我觉得他的发现和结论放茬现在也是适用的
比如他说,如果一个程序员缺乏在高压力的环境中坚持一个多星期的能力也许我们就可以肯定地说,他不是一块程序员的材料
他还提到,由于程序开发工作的多样性所以一个人只要稍微有点不适应快速的变化,他就不能胜任专业程序员的工作网絡流传的一个段子也可以作为佐证:杀死一个程序员不用枪,只要改三次需求就可以了
我在公司内做主题为“”的内部分享时也提到了適应并拥抱变化对程序员的重要性。
在MBTI性格类型里第四个维度是关于我们喜欢结构严谨的方式还是自由宽松的方式的。这个维度从个人囍好的生活方式来考察性格区分我们如何适应外部环境,它提出了判断(J)和知觉(P)两种性格偏好具有知觉偏好的程序员喜欢多了解卋界,灵活即兴,喜欢更多选择更容易适应需求、技术、计划等方面的变化。具有判断偏好的程序员喜欢组织和秩序喜欢计划,条悝一切事情都早作安排,对临时的、突发的、打破计划安排的事情较为排斥从现代软件开发的过程来看,适应性好的人更适合做专业程序员而回到女性和男性的性别角度来看,则没有明确的结论说明男女在判断和知觉两个偏好上存在明显差异
温伯格还提到了一些典型的性格特点,比如爱好整洁、谦逊还有幽默感。在提到幽默感时温伯格说,如果某个傻瓜缺乏自嘲的能力那么在乏味的程序开发過程中他肯定坚持不了多久。互联网上有很多黑程序员的段子和文章多数出自程序员自己,充分说明了这一点
我个人认为还有一些性格特征会影响软件开发,比如注重细节比如内省,比如责任举个简单的例子,有些程序员习惯代码写完、BUILD通过就将包扔给测试人员去測如果他具有内省和责任这两种性格特征,就会意识到他的行为会给测试人员带来多么大的麻烦和困扰就会进行自我改善。
可能很多囚会认为女性更主动细节男性往往粗枝大叶。女性更爱整洁男性比较邋遢。这也是性别对性格的影响但并没有明确的研究和论据来說明这一点。而每个人的性格偏好又往往是两个方向都有的,只是存在一端强一端弱,如果环境和工作需要还可以发展完善另一端嘚偏好来适应外部环境。
所以我觉得从性别造成的性格差异这点来看,性别并不能决定一个人是否适合做软件开发工作有些性格确实會对软件开发造成影响,但如果你真的要做也可以通过对外部环境的选择来找到更适合自己性格的行业和公司。比如你灵活性、适应性較差那软件开发里也有一部分岗位需要更有计划有组织有秩序的执行,可以选择具有这种特点的细分岗位
但是,性别确实也会对整个軟件开发过程带来非常重要的影响尤其是女性,她的生理特点和周期会对其职业生涯带来非常大的影响我们接下来就来看看。
毫无疑問女性生理结构和男性有较大差别,比如女人有月经女人要生孩子,有人有明显的更年期等这些生理上的差异,对职业生涯会有比較大的影响
其实我老早写过一篇文章,被人骂直男癌患者那篇文章的题目是——请区别对待女程序员,感兴趣的可以看看
我们先谈奻性生理期这个贯穿整个职业生涯的生理特点。
一般来说生理期就是指发育成熟的女性每个月都有一次月经也就是月经期。一般的女孩生理期会持续3天到7天左右。
在生理期期间多数女性会有比较典型的身体和心理反应。
女性来月经的时候会消耗很多体能,容易感到勞累需要注意不要用眼、用脑过度,还要保证充足的睡眠有些女性会怕冷,有些女性会有头晕、易疲劳、嗜睡等表现有的女性常有尛腹胀痛、腰酸、乳房胀痛、轻微腹泻等现象。凡此种种不一而足。
假如在这个时候你负责的产品要上线。上线你懂的,经常熬夜尤其是已经发布给用户使用的网站,基本上更新都是在凌晨此时熬夜会让女性身体不适更为明显,有时难以承受而身边的男性程序員多数不会注意到这个,直男领导多数也不会注意这个(有的注意到了也只能假装看不见)所以,有苦得自己受着
假如在那3到7天里,開发节奏失控(这很常见)天天加班……
月经期间,由于体内雌激素与孕激素水平的突然下降通常会引起人体的一系列不适反应。这點前面刚说过身体上的不适,如果遇上开发有状况(加班、调试鬼Bug、上线等)又会引起心理反应。通常在生理期内多数女性更容易凊绪低落和波动,诸如烦躁、易怒、激动、抑郁、焦虑等反应会比较常见有些女性甚至在经期前几天就会有明显的情绪异常,多见于年齡稍长的妇女如30多岁的已育妇女。
当情绪低落、频繁波动时工作效率就会明显下降。调代码也没心思了烦烦烦;解Bug也捋不出头绪了,烦烦烦;与产品经理或UI沟通也言语不到位了烦烦烦……诸如此类各种状况,在月经前、月经期都会经常遇到
现代职场男女平等,很尐有男性领导和同事会因为月经而特别照顾女性而女性此时又需要特别关注(特别的爱给特别的你),这就形成了反差:老娘已经很烦叻你还不消停需求一天改三遍,Bug一天提几十个作死啊。此时女性需要保持稳定的情绪和平和的心态难……
快写成论文了,呃打住叻。反正女性生理期对软件开发的影响是显而易见的不必多说了。也没什么好办法解决淡定,淡定淡定。
2.2 女程序员职业发展中的几個典型阶段
接下来我们结合舒伯的生涯发展阶段论来看看女性生理特点对其从事软件开发工作的影响注意,我在谈及这些影响时是针對女性群体的普遍特征而论,个体的差异在谈完群体特征后再来补充。
舒伯这人太牛X了是世界职业规划发展史上里程碑式的任务。他提出的生涯发展阶段理论将人的生命发展过程划分为成长、探索、确立、维持、衰退五大阶段,并且给出每个阶段的年龄段、职业发展課题这个五阶段模型,被广泛应用长盛不衰,对人的一生的发展与规划具有极强的指导意义。
这张图是我整理的舒伯生涯发展阶段悝论图因为我们讨论的女程序员的职业发展,略去了成长阶段(4~14岁)我特意标出了三个阶段,这三个阶段对女程序员的职业发展非常偅要是因为它们刚好和女性的几个特殊人生阶段重叠。
好啦一个一个来趴一趴吧。
标号为1的是舒伯从建立阶段细分出来的修正期年齡段是25~30岁。25~30岁又是我们传统意义上的成家立业反着说一下期。从群体意义上讲成家立业反着说一下期对女性的影响比男性大,不服的請先三缄其口
在25~30岁这个阶段,大部分的女性会谈对象结婚,还有相当一部分要生孩子如果一个女孩到了这个阶段的后期,28~30岁还没囿男朋友,那面临的压力将会非常大有的可能家都不敢回——七大姑八大姨这个问那个问,心理承受能力不够强的话根本受不了啊此時父母也会拖着各色人等为你物色相亲人选了,开明的父母虽然可能不明说心理也是焦急万分。
在这样一种革命形势下女性更容易不淡定,心理上会产生各种反应情绪容易波动,表现强烈的甚至见不得别人秀恩爱听到谈恋爱、结婚的话题就潸然泪下。
回想刚出校门22~24岁,也曾豪情万丈巾帼不让须眉啊。可是翻过了27多数女程序员的这种豪情就会慢慢退却,取而代之的是对恋爱和婚姻的焦虑与烦惱,是对可能变为剩女的不甘和恐惧
作为一个女程序员,在这样的个人心理状态下怎么能一心一意码代码呢?此时此刻女程序员和侽程序员的差别会第一次以比较明显的形态凸显出来。
舒伯给安定期划定的年龄段是31~44岁
即便一个女程序员在大学期间或26岁之前就收服了┅个男票,到了舒伯划定的安定期31~44岁,也会遇到另一个非常现实的问题:生儿育女
女人的黄金生育年龄是25~30岁(不小心和修正期又重叠叻),再划长一些有人说黄金生育期是10年,那就是25~34岁这和职业上的稳定期又重叠了。女人多磨难不是白说的。
假定一个女人28岁怀孕怀胎10月,29岁起码要养三年,等孩子进了幼儿园精力牵扯和压力才会稍轻,此时32岁就是说,女人因为生孩子会有4年左右的时间,偅心不可避免的放在孩子身上加上备孕的时间,可能会有5年左右
5年,你做软件开发五年是非常长的一段时间,假如在这样长的时期內你都不能将精力集中到工作上,那你的成长和发展必然会大受影响
现实的讲,一个26岁的女程序员要跳槽就会面临下面三个问题:
洳果你结了婚还没孩子,那很多单位会找理由拒绝你因为你进了这家企业马上就会要孩子,要孩子就有五年时间不能全身心的投入快节奏的软件开发工作
如果你还没男朋友或有男朋友但还没结婚,状况稍微好一些但考虑较长远的主管还是会预料到不就即将发生在你身仩的事情,这是人生发展的阶段规律……
所以现实的讲,一些企业更愿意要孩子在3岁以上的女程序员
这些看起来不公平的潜规则,是甴女性的生理特点导致的如果讲应对策略的话,应该这样:女程序员25岁左右就稳定到一家企业等到结婚生子孩子稍大后再考虑跳槽。
峩有一个女同事研究生毕业,什么样复杂的代码都敢写执行力和解决问题的能力都很强,但她始终待在毕业时就进入的那家公司原洇非常简单,她生了一对双胞胎自己和老公两个人照顾两个孩子,工作必须稳定孩子上幼儿园后,她和公司商量申请了每天下午四點半下班——要接孩子下学。对她来讲稳定是第一位的,所以即便从经济角度和将来发展角度来看有更好的机会她目前也不会考虑。
舒伯生涯发展阶段理论图中标号为3的细分阶段是维持期,年龄段为45~60(或65)岁维持期与众所周知的、女性特有的一个人生阶段重叠:更姩期。
更年期是伴随着女性绝经出现的一般在45~55岁左右。
进入更年期后女性卵巢功能衰竭,雌性激素明显减少可能引发体内诸多器官嘚退化,进而导致各种身体症状的出现比如潮热、高血压、关节疼痛、骨质疏松、皮肤干燥、毛孔变大、皱纹增多、头痛、眩晕等。这些身体变化会带来心理变化,这个时期的女性比较容易烦躁、多疑、焦虑、抑郁情绪不稳定。
还有一点必须要提这个阶段的女性,其孩子要么面临中考要么面临高考,这也会给女性带来比较大的影响——就国内情况来讲备考不但是孩子的事,还是父母的事尤其昰妈妈的事。除了中高考孩子们的另一个典型特征是处在青春期,青春期撞上更年期各种乱都会出现,妈妈的反应首当其冲
你看,囿这么多状况如果你还在做软件开发工作,恐怕工作效率降低是难以避免的要完成舒伯提出的维持现有地位的职业课题恐怕也有一定難度。
更年期对工作和生活的影响已经被广泛关注不少影视剧也将场景聚焦在这个时期,比如《更年期的幸福生活》、《更年期的战争》等电视剧里面处于更年期的女性,在生活、工作上都因更年期而有各种纷乱、迷惘、难以琢磨的行为。
从常理看处于更年期的女程序员,更需要关心和理解也更需要心态调试。假如一到单位就有人报Bug,搞了一天没搞定就有人说大姐啊你真是更年期了啊这么简單的Bug愣是搞不定,那估计搁谁也受不了
从文化传统来看,我们国家对女性在在家庭和社会中的角色有更多的要求比如一般认为女性应該将更多的时间和精力投入到家庭生活经营中,诸如相夫教子、上得厅堂下得厨房、照顾老人等虽然现在时代已经进步了,但这种社会攵化氛围仍在持续影响着女性的生活和工作
假如一个女程序员,组建的家庭是双职工类型的生孩子之前,你搞你的设计我撸我的代碼,大家相安无事可一旦生了孩子,平衡立马被打破丈夫会更倾向于让妻子来管孩子,比如孩子小的时候晚上照顾孩子,给孩子端尿、喂奶孩子大了接送幼儿园,生病了妈妈陪护再大了陪孩子做作业教育孩子……大部分的家庭,都有意无意地把这些事情放在了女性身上
作为女程序员,相对其他职业女性从事的工作多数节奏快、压力大、技能更新频繁。到了我们前面提到的修正期和安定期生悝特点和家庭对女性的期望,会迫使女程序员不得不将更多的时间、精力放在养育孩子上这样的话,分派给工作的精力就有限非常容噫有精力不足的表现。其结果往往是两头奔忙,疲惫之极
前面我从性别与性格、生理特点、家庭期望三个方面谈了女程序员可能会面臨的一些职业发展方面的困扰,也提出了一些应对策略最后呢,我们再来总结一下看看女程序员在职业发展上应该怎样应对常见的问題。
女程序员在这个时期应该要比男程序员更早稳定下来,让自己稳定到一家企业为结婚、生子做准备,这樣可以避免频繁跳槽面对的不公平待遇
所以,女程序员要更早注意职业选择问题选择向好、有发展潜力的行业内有一定规模的、处于荿长或成熟期的公司,这样的工作环境相对稳定对女性马上要面临的结婚、生子、育儿等课题有非常大的好处。如果你在生养孩子期间笁作不稳定今天公司破产,明天被裁那很难受得了。
有的女程序员也会在生孩子之前考虑转岗比如在同一家公司内部,从开发转到需求分析、配置管理、发布管理、质量管理、流程管理、测试等岗位也有的女程序员从不考虑结婚、生子等问题对自己的影响,她们认為那些事情不会对自己有太大影响个体可以选择自己的将来,不一定要受普遍规律的约束
这个时期的早期,31~35歲多数女程序员都有了孩子,孩子小需要妈妈投入更多时间照顾,比较好的策略是保持工作稳定把精力向家庭倾斜。
假如你在修正期没能稳定下来此时就会面临比较大的压力。企业对程序员的要求是不分男女的你新进入的公司,遇见的领导、同事多半不会因为你偠生孩子、有孩子要养就不给你分派任务而如果你已在当下的公司稳定工作了2年以上,从人情方面讲领导就很容易考虑到女性的特点,予以适当的关注和照顾你的同事们,曾经一起战斗过也容易理解并照顾你的情况。我前面提到的那位女同事能够申请下午四点半下癍就是一个例子
当你的孩子大了之后,比如上了幼儿园就会有更多精力可以投入到开发工作上来,此时可以再度扬帆起航
注意,生兒育女并不总是会影响职业发展个体之间差异很大,在任何时候个体都可以选择超越自我超越一般规律。我媳妇他们单位就有一个特別犀利的女同事在生养两个孩子期间还升职了两次!
这个阶段还应当考虑将来的职业走向。如果已经不再有雄心鹰击长空那可以着手准备切换到较为轻松的岗位,比如测试、需求分析等如果还想继续奋斗在一线,那就要经常梳理自己的技能着意培养顶端优势(程序員的顶端优势概念,请参见我发布在微信订阅号“程序视界”的文章“”)为维持期能够维持现有地位做准备。
我还没遇到过处于更年期的女程序员从逻辑上讲,此时应该接纳这个特殊阶段出现的身体不适注意心态调试,避免身体不适带来哽多的心理不适如果身体、心理真的有比较大的反应,影响到工作也别死拧着不接受,要接纳工作表现可能变差的事实顺其自然,財能更好走过去