我们在Nulogy不断发展,最近我们将产品开发团队分为两部分。 我已经成为原始团队的开发人员将近三年,并且看到它发展到了九个人。 拆分之后,我所在的新团队只有两个开发人员。 这是一个问题。
过去,我们的主要学习方式是在大批经验丰富的开发人员中通过配对编程进行学习。 此外,庞大的团队规模提供了各种各样的想法和指导。 现在,我们主要依靠自己,必须控制自己的增长。
当然,这在软件开发中并不是什么新鲜事。 但是,在Nulogy中,我们并未在团队级别上开发出习惯于学习的习惯和习惯。
对职业停滞的恐惧
在我们的第一次开发人员回顾中,我们讨论了职业停滞的风险,因为我们两个人的专业水平相似。 自从我们紧密合作了两年以来,我们已经分享了大部分已知的知识。 不仅如此,而且我们只是原始团队规模的一小部分,这意味着由于缺乏结对旋转而导致较低的速度和较低的代码质量。
我们认为,“障碍就是道路”,因为可以利用挑战来促进增长。 我们想以此挑战为契机养成新习惯。 因为我们在Nulogy拥有如此多的自治和信任 ,所以我们有勇气在那段回顾中问自己:我们该怎么做才能克服盲点? 我们如何以新颖的方式吸收新信息? 我们可以采取哪些大胆的举措来克服这些挑战?
我们思考:
我们 将 如何 继续学习?
问题
我们使用戴夫·胡佛的学徒模式作为我们在Nulogy学习的基础。 在书中,他建议通过不断阅读来学习经典。 他将经过考验的书籍优先于博客文章,因为它们可能会提供永恒的课程。
但是,许多软件开发人员仅凭阅读这样的书就可以证明, 内脏的翻筋斗正在冲洗他们:

我们需要一种致力于学习的方法,尤其是在阅读一些厚实的书时,例如:
- 实施域驱动设计(如上图)
- 干净的代码
- 通过测试引导不断发展的面向对象软件
- 设计模式
- DevOps手册
我们还需要一种方法来保留我们提取的知识……
解决方案
在Nulogy中我们已经有读书俱乐部,但我们想要一些更常规,更轻巧和有趣的东西。 我们需要一种新的组织习惯,因此我们设计了一个名为“ 第一番茄”的实验。 命名的选择来自于决定将我们当天的第一个番茄投入到学习之前-站起来之前。

Nulogy的开发人员通常使用Pomodoro技术来预留不间断的结对编程时间。 我们通常以25分钟为周期进行编码,然后以5分钟为中断/冥想/洗手间休息/休息等时间。
我们决定花费我们的第一个番茄酱专门用于提高生产能力。 然后,像往常一样,我们将与我们的团队举行简短的站立会议,然后在剩余的时间内进行生产。
第一次番茄的相关步骤
因此,这里是第一番茄的分类。 我们互相询问以下两个问题,并通过活动进行跟进:
- 你昨天学到了什么?
- 您想今天学习或应用什么?
- 保留检查(通过 间隔重复进行 加固 )
因为如果您不久之后就忘记了学习,那有什么好处?
间隔重复
当我们分享前一天学到的东西时,我们就有机会将其写在一张提示卡上。 然后,我们将其收集到我们的个人堆栈中。 在“保留检查”期间,我们会拿走对方的提示卡叠,并用它进行测验。 测验的目的是进行间隔重复; 一种在学校教授的技术,并且是一种有效地加强学习的技术。 根据答案的错误程度,我们将所有正确回答的卡移动到堆栈的背面,并将所有错误回答的卡移动到堆栈正面附近的位置。


需要明确的是: “第一番茄”不在我们读书的地方。
我们每个人都在自己的时间阅读本书:在家中或上下班途中。 第一番茄会是我们分享经验的地方。 “当一个人教书时,两个人就会学习。”分享的行为是强化我们已阅读内容的有力方法,讨论和测验帮助我们俩人保留了知识。
习惯循环的重要性
我们希望这种习惯保持粘性,因此我们使用了元学习方法,即查尔斯·杜希格(Charles Duhigg)的《习惯的力量》中的习惯环,这也是我们的第一张提示卡:

提示是我们开始第一款番茄的时间。 该例程包含三个步骤。 奖励 ,好吧,我们不知道该怎么办。 但是在开始的时候,我们知道我们需要一些东西来练习First Pomodoro。 我们决定在白板上写出我们在两个堆栈中所拥有的不同提示卡的当前数量。 当我们学习新事物并添加卡片时,我们会在“第一番茄”结束时每天增加数字。 因此,奖励是一种视觉上的“进步感”。
我们为什么不只自己在家完成整个事情呢? 好吧,您知道,真正养成这种习惯的是一种信念意识,即我们作为一个团体来做会得到。 即使只是与另一个人在一起。 我们可以独自做到这一点,但我们不太会坚持这种习惯。
初步结果
最初,这只是我和我的团队成员,我们暂时不会聘请新的开发人员。 在那段时间里,我们比以往任何时候都更加学习。 每天早晨就像一场比赛。 我们很高兴分享前一天所学到的知识。 每次我们做第一把番茄时,我们都会充满活力和高度投入。 而且,软件开发甚至还没有开始!
因为我们知道我们都在学习什么,所以我们变得非常结盟,并且能够在组织内有效地应用这些概念。 在我们的跨团队DevOps会议中,我们能够快速使用《精益变更管理》一书中的影响评估模型,这本书是我们一个人上周阅读的。
我们衡量“第一番茄”成功与否的一种方式是,反思其在我们团队中产生的成功合作和技术进步的故事 (如上述)。 我很高兴在以后的博客文章中深入分享更多这些故事!
缩放第一个番茄
几个月后,我们有了一个新的开发人员。 我们很兴奋,而且我们没有失去我们的第一次番茄练习。 为了扩大规模,我们开始增长三倍。 顺时针前进 ,一个人会向旁边的人问“你昨天学到了什么?”,然后那个人会向旁边的人重复这个问题,直到完成第一步。 对于新开发者而言,这是一种有价值的入门实践。 除了为她提供一个在入职期间分享她所学知识的地方外,它还证明了我们对Nulogy重视的学习和成长文化。 在这里,我们都谦虚地学习,好像我们都在上学。
我们可以想象,如果我们要让另一个团队成员加入我们来参加First Pomodoro,我们将会配对。 这样,我们将能够在25分钟内完成它。 每当有一个奇怪的人时,我们将使三倍。
超越地平线
经过第一批Pomodoros,我不敢相信我们以前没有这样做。 现在对我们至关重要。 我个人已经学到了很多东西,以至于我现在拥有的思维模型正在极大地改变我的软件开发方法。 如果这只是几个月的影响,那么一年后我会有什么不同? 我将在软件开发事业中走得更远吗? 我什至无法想象。 最重要的是,这种习惯的真正奖励是每天与团队学习新东西的感觉。
在一起学习感觉很好。

结论
去年我们分成两支球队时,我们遇到了几个障碍。 由于担心停滞不前,我们养成了一种称为“第一番茄”的组织习惯,用于日常学习。 我们花了好几个星期才解决所有问题。 现在,这已成为我们团队文化的重要组成部分。 通过分享我们的故事,我们希望“第一番茄”将在我们的组织内外传播。