Meilisearch 如何在 42 计算机科学学校的协作方法基础上构建
您一定听说过“团队中没有我”这句谚语。 在 Meilisearch,我们认为构建可靠产品的最佳方法是彼此以及与我们的社区协作。 我们在 42 学校学会了协同工作,并继续在这个基础上发展。

您是否知道 Meilisearch 的第一个迭代版本是在 42 学校组织的黑客马拉松期间创建的? 我们认为无论如何 Meilisearch 都会找到存在的方式——我们太喜欢我们的快速搜索和公司文化了——但 42 是 Meilisearch 蓬勃发展的完美框架。
42 是一所法国计算机科学学校,互助合作是其一切的基石。 42 的特别之处在于协作是其核心:没有老师,因此学生需要组队才能完成他们的项目! 在 Meilisearch,我们不认为优秀的人才只能来自传统的工程学院。 这也是 42 的核心:它不仅具有强大的协作性,而且该学校还免收学费,并向 18 岁以上的任何人开放,这确保了不同背景的健康融合。 顺便说一句,我们也不认为优秀的人才必须来自 42。 由于我自己没有去过 42,这篇博文很大程度上是在 Charlotte 的帮助下完成的。 她经历了 42 的冒险经历,并为这篇博文提供了她的见解。
42 是我们创始人在协作工作方面的首次体验,并且对我们的公司文化产生了巨大的启发。 在这篇博文中,我将分享我们真正想从 42 保留什么,以及我们如何将其适应 Meilisearch。
学习如何学习
如果 42 没有老师,您可能会想知道技能是如何教授的。 可惜的是,学生们不会喝下神奇的药水来解锁关于生命、宇宙和一切问题的答案。
相反,学生们面临着他们期望完成的项目。 通过询问之前在那里的其他学生,自己搜索资源以及反复试验,他们最终发现新的技术,使他们能够取得进步。
这种非常注重实践的方法使人们能够培养最终的技能:学习如何学习。 学生们不断开发自己的特殊工具箱,以应对新的挑战和项目。 过了一段时间,他们就知道如何获得他们需要的技能。
Meilisearch 迈出了它的第一步(aww 🥺),这个原则非常贴近我们的内心。 我们在实践中学到了很多东西——而且我们仍在学习! 例如,在集成团队中,Amélie、Bruno 和 Charlotte(工具集成的 ABC)处理着 35 个以 15 种语言编写的存储库。 虽然对不同语言和编程范例的扎实理解至关重要,但他们工作中最重要的技能是吸收新的上下文并快速适应不同的上下文。
当我们招聘新人时,我们寻找有好奇心的学习者,他们有能力成为各自领域的专家。 然后,为了让每个人都能茁壮成长并追求自己的兴趣,我们开发了一个职业发展框架,以指导和支持好奇心和成长。 例如,随着经验的积累,有些人可能想成为经理; 有些人可能想深化他们的专业知识,并在他们原来的角色中进一步专业化。 无论我们每个人选择什么,职业发展框架都会帮助我们保持好奇心并不断学习新事物!
不要误解我
1831 年,数学家埃瓦里斯特·伽罗瓦在一本杂志上撰写了关于科学教育的文章(链接指向法语 PDF 文档):“[学生们] 什么时候才能有时间思考这些知识……为什么考官只以复杂的方式向考生提问? 似乎他们害怕被他们质疑的人理解……我们认为科学太容易了吗?”
191 年后,为了奉承自我而混淆知识仍然很常见。 我们认为,在期望员工相互竞争的公司中,自负和自以为是的人格是一个反复出现的问题。 虽然潜在的目标可能是留住“最好”的人并抛弃其他人,但这种精英主义纯粹是把关——我们确信这总是对产品质量的一种损害。
在 Meilisearch,我们的目标是被尽可能多的人理解。 我们在 42 的经验表明,只要人们可以自由访问学习该行业所需的知识,来自各种背景的人都可以在 IT 领域工作。
这就是为什么文档从一开始就成为 Meilisearch 的基石。 我们希望让所有开发人员都觉得他们可以理解和使用 Meilisearch,无论他们是刚开始还是有多年经验。
学习 > 自我
然而,骄傲是一种非常自然的人类情感,而且很难放下它。 (我故意避免写“let it go”,这样你就不会想到特定的歌曲,但我恐怕效果现在已经失效了。 对此感到抱歉。) 例如,可能很难接受建设性的反馈,特别是当它触及我们认为非常重要的东西时。
在我们的经验中,热爱学习新事物非常有效。 如果你用更强大的东西取代你自己的自我和骄傲,例如学习新事物带来的难以置信的快乐,那么开始更容易接受反馈!
从不同来源学习新事物使我们的工作变得更加愉快。 我们不断地被新概念所吸引。 有时我们的同事给我们提供新的想法,有时我们偶然地发现了它们,有时我们只是在试图解决难题时简单地寻找它们……无论来源和最终结果如何,我们都热爱这个过程。
集体负责
如果您在摆脱自我的追求中感到孤独,请不要担心! 这很可能是最难实现的事情之一。 我们都希望觉得自己有好的想法,并且我们的工作得到赞赏!
这是 42 方法有帮助的另一个方面。 42 背后的理念是,同行对项目的成果负有集体责任。 这意味着我们都在一起,并承认所有的胜利(和所有的失败)都是集体努力的结果。 您的同事可能编写了一段关键代码,但如果没有您的支持,他们将无法做到。
这种支持是什么样的? 很高兴你问了这个问题。 一个人可能是他们正在从事的项目的负责人,但他们的同事是判断项目是否一切顺利并准备发布的评判者。 这意味着人们在审查时必须非常严格。 您的项目质量也是他们的责任! 我们关心代码质量,作为回报,我们将全世界的注意力都放在您的个人使命上。 即使在 Meilisearch 中的个人项目也是集体的,因为对我们中的一个人有用的东西对我们所有人都有用——我们是一个团队,如果有什么东西可以让您更好地工作,我们所有人都会工作得更好。
我们的新员工很快适应了这种工作方式。 与同事进行建设性的对话比一直与他们竞争更舒适和愉快。
持续反馈
在 42 学校,反馈与状态的不断变化齐头并进:一个人今天审查一个项目,明天将被审查。 由于审查者和被审查者总是轮换位置,学生自然会成长为既能提出深思熟虑和建设性的意见,又能认真对待反馈,无论反馈来源如何。 当批评来自我们认为经验不如我们的人时,我们的偏见可能会错误地引导我们无视批评。 集体责任制可以使人们根据评论本身的优点而不是提供评论的个人来接受评论。 当然,这并不是说所有的批评都是相关的,或者专业的专家是错误的,初学者总是正确的,只是我们不应该在生气时过于草率地驳回重要的反馈。
作为一家公司,这种思维方式对我们非常重要。 我们希望在 Meilisearch 工作的每个人都能表达自己的意见并被倾听。 我们在给出的反馈中培养耐心和友善:这是一个双赢的局面,因为每个人最终都会在不同的时间给出和接受反馈——是的,即使是创始人和经理也是如此!
这培养了一种内在的主人翁意识。 人们感到集体参与我们所做工作的质量。 这是我们想保留在 Meilisearch 核心的东西,因为它对我们如何处理我们自己的项目以及我们从协作中获得的快乐和满足感产生了巨大的影响。
在 42 学校,如果优秀的个人表现者不能在团队中工作,如果他们没有与他人很好地相处,他们将无法通过 pool(为期 4 周的强化编码,以选拔将加入该学校的人)。 这与我们产生了共鸣:Meilisearch 是一个团队,我们认为作为一个整体,我们更强大。 虽然渴望成为英雄并拯救世界是非常人性化的,但这实际上是不可持续的、低效的,也不是产生最佳代码的方式。
我们正在不断地在我们对 42 理念的经验基础上发展。 我们现在在一个更结构化的环境中运作,这使我们有必要的自由与更大的团队在不同的时区进行协作。
作为一家开源公司,我们的贡献者和社区是我们工作的核心。 在内部遵循相同的原则是有道理的:能够依靠我们的同事,反之亦然,这意味着我们可以继续在安全的环境中学习和实验,同时确保我们的工作经过了彻底的测试和评论。 然后我们可以真正地说,Meilisearch 大于其各部分的总和——并为此感到非常非常自豪!
附言:您是否想知道这篇文章是否是协作工作的成果? 当然! 非常感谢 Charlotte Quentin Ferdinand 和 Morgane 审阅这篇文章,尤其感谢 Gui 撰写了您刚刚阅读的许多句子。