Val 谈 Jane Street 的软件工程与协作

原标题Val on Software Engineering and Collaboration at Jane Street

一位伦敦开发者介绍同事如何帮助新人学习、审查生产代码,以及跨团队协作。

VaVal讲者 · Jane Street
频道
Jane Street
发布
2023年5月10日
视频
3:48
阅读
3 分钟
原文
英语
在 YouTube 打开
往下滚动阅读时,视频会缩到右下角继续播放。字幕跟随阅读语言。
阅读语言共 2 种语言可读
由 AI 从英语原文翻译。打开“对照原文”可以逐段核对。
摘要

30 秒看懂

Jane Street 伦敦办公室的软件开发者 Val 讲述了她加入公司的经历,以及开发者在工作中学习的知识。她解释了实习中的双向考察、代码审查中的共同责任,以及社交联系如何帮助工程师跨团队协作。

  1. 1基础知识与在职学习Val 认为计算机科学学位对她有帮助,但并非必需。开发者需要了解一些数据结构和算法,而同事帮助她学习了自己没有学过的知识。
  2. 2不需要金融背景Val 入职时既不懂金融,也不懂 OCaml。她说公司会教授员工所需的知识,包括基本金融概念。
  3. 3实习是双向选择实习生会体验能够展现 Jane Street 真实工作情况的场景,从而决定是否想从事全职工作。
  4. 4代码审查中的共同责任大多数代码由一人编写、另一人审查。审查者通过称为 seconding 的流程签核,与作者共同承担责任。
  5. 5跨团队联系作为桌面开发者,Val 与交易员密切合作,也使用其他团队的库和应用。工程师可以向库的作者寻求帮助或请求审查,社交联系让协作更加容易。

要点建议

  1. 计算机科学基础很有用,新开发者尚未掌握的技能可以向同事学习。
  2. Val 加入时既不懂金融也不懂 OCaml,在公司学到了所需知识。
  3. 实习既让公司考察候选人,也让候选人评估全职工作。
  4. 代码作者与审查者通过审查和签核流程,共同承担生产代码的责任。
  5. 工程团队之间的非正式关系让提问和互相帮助更加容易。
全文

按章节阅读整理后的全文

只看原始文稿
01

背景与学习

Val 介绍自己的软件开发工作,以及计算机科学背景如何帮助了她。她讲述了如何向同事学习不熟悉的技术和金融概念。

我是 Val,在 Jane Street 伦敦办公室担任软件开发者。我于 2018 年加入公司。

我在大学学习计算机科学,这为工作打下了不错的基础,不过我认为这并非绝对必要。Jane Street 的开发者需要掌握一些知识,比如数据结构和算法。每当我遇到大学里没学过的东西,这里的同事都愿意教我。

加入时我没有任何金融经验,这也没关系。我们通常会教大家工作所需的知识。我入职时既不懂 OCaml,也不懂金融;即使你不知道一家公司的一股股份代表什么,或者不了解其他金融基础知识,也没关系。

02

实习是双向选择

Jane Street 希望让实习生真实了解工作情况。候选人由此可以决定全职岗位是否适合自己。

安排实习时,我们会尽量让实习生体验能反映 Jane Street 真实工作情况的场景。我们不把实习仅仅视为在一个夏天考察候选人、决定是否聘用他们的过程。这是双向选择:实习生也需要充分了解全职工作的情况,才能决定自己是否真的想做这份工作。

03

审查生产代码

Val 介绍代码审查和审查者的签核流程,即 seconding。作者与审查者共同对结果负责。

代码审查是我们确保生产代码正常运行的主要方式之一。大多数代码由一人编写、另一人审查,还要经过一个叫作 seconding 的流程,由审查者签核,表示自己认为代码没有问题。因此,审查者和作者共同承担责任。

04

跨团队合作

Val 与交易员密切合作,也使用其他团队的软件。非正式交流和社交关系有助于开发者提问与合作。

作为桌面开发者,我与交易员密切合作,他们是我的最终用户。但这并不意味着我远离其他开发团队:我会使用公司其他部门的库和应用。直接找到库的开发者,问他们怎么用,或者询问能否扩展这个库、请他们审查你的代码,都是再正常不过的事。

我们也会和其他开发者社交,经常一起吃午饭。你可能会看到来自不同团队的五位开发者坐在一起聊些日常话题,未必是代码。在工作之外认识同事,会让大家更容易提问、主动帮彼此解决问题,也更愿意一起合作。

同频道的其他文章

1:48:29EN → 简体中文
JSJane Street· 2026年10月16日AI 如何改变编程:John Krazit 与 Ron Minsky 的对话Ron Minsky, John Krazit · Jane StreetJane Street 的 AI 工具负责人和 Signals and Threads 主持人探讨智能体基础设施、安全、代码审查,以及软件开发体验的变化。编程智能体Developer productivity评估+2
1:36:37EN → 简体中文
JSJane Street· 2026年9月23日Aaron Bauer:在 AI 时代教授软件工程Ron Minsky, Aaron Bauer · Jane Street当模型能够生成代码时,学习目标、主动练习和编辑器设计如何影响工程教育。AI in EducationSoftware engineeringEducation+2
9 张幻灯片1:05:45EN → 简体中文
JSJane Street· 2026年9月11日Cyrus Omar:实时编程与人与 AI 共享的计算公共空间Cyrus Omar通过 Hazel 演示,探讨即时反馈、结构化协作和精细权限如何帮助人类与 AI 智能体共同工作。Programming LanguagesHuman-AI Collaboration开发流程与测试+2
1:25:00EN → 简体中文
JSJane Street· 2026年9月2日Eric Mannes:如何将杂乱的外部数据用于交易研究Ron, Eric Mannes · Jane Street从商品期货和 Excel 风险系统,到时点数据集和 AI,Eric Mannes 解释 Jane Street 数据工程背后的领域知识。Data quality & curation开发流程与测试Investing+2
7 张幻灯片1:16:29EN → 简体中文
JSJane Street· 2026年8月26日Grant Sanderson 与 Alok Puranik:从群论看位置编码Grant Sanderson, Alok Puranik · 3Blue1Brown从注意力机制的假设出发,他们推导矩阵指数,并将旋转、衰减和 Jordan 块与 RoPE、ALiBi 联系起来。Transformers & attentionMathematics机器学习基础+1
27:39EN → 简体中文
JSJane Street· 2026年8月21日3Blue1Brown 与 Jane Street 谈交易、机器学习和文化Grant Sanderson, Nitya, In Young, Craig, Alok · 3Blue1BrownGrant Sanderson 与 Jane Street 的同事讨论做市、共享算力、研究,以及他们加入公司的不同经历。Machine LearningFintechCompany Culture+2