发布于 2026-01-05 0 阅读
0

申请MLH奖学金:技巧与窍门 什么是MLH奖学金?🤔 阶段 🚗 我的时间线 ⏳ 申请MLH奖学金 📝 彩色日历 面试 👨‍💼 2021年春季统计数据 📊 总结

申请MLH奖学金:技巧与窍门

什么是MLH奖学金?🤔

阶段🚗

我的时间线⏳

申请MLH奖学金📝

彩色日历

面试👨‍💼

2021年春季统计数据📊

结论

那是一个星期二的早晨,我破天荒地早起了。我拿起手机,翻看邮件,希望能找到MLH的邮件。令我惊喜的是,它终于出现了——我等了一个多月的录取通知书!啊,那种感觉真是太棒了!😊

我被MLH Fellowship的开源项目录取了,成为2021年春季第二批学员!🎉

什么是MLH奖学金?🤔

简而言之,MLH Fellowship是一个为期三个月的全球远程实习项目。入选者将被分成8-10人的小组,根据他们所选的项目(探索者、开源项目、实习项目)进行协作,并参与实际项目。此外,他们还将获得经验丰富的软件开发导师的指导,全程参与项目。项目期间会举办许多有趣的活动,例如CTF挑战赛、黑客马拉松、研讨会、成果展示会、游戏之夜(例如Among Us、Skribbl等)。所有学生以及非学生专业人士均可申请MLH Fellowship。

MLH Fellowship 的网站可能解释得更清楚:💻 https://fellowship.mlh.io/

MLH会为被录取的研究员提供生活津贴。该津贴不能替代全职工作,但可以帮助您在项目期间补贴部分生活和学习费用。津贴金额取决于您的研究方向以及您在项目期间居住的国家/地区。

在这篇博客中,我将分享我申请该奖学金的经历,从填写申请表面试。我也会分享我对MLH在评估申请时关注点的看法。

让我们开始吧

目录

阶段🚗

以下是您的申请流程各阶段的概要:

  1. 申请审核:审核您的简历、论文题目以及项目的其他部分。
  2. 代码审查:查看代码示例,确保其质量足够高。
  3. 初次面试:了解您并了解您为何想加入该项目的机会。
  4. 技术面试:通过代码示例展示您的技术技能的机会。
  5. 最终审核:选出最佳申请者并发出录取通知书。

我的时间线⏳

  • 申请日期:2020年8月17日
  • 评测开始日期:2020年11月27日 (历时3个月零10天)
  • 请于2020年12月5日 (8天后)发送邮件安排初次面试。
  • 初次面试:2020年12月9日 (4天后)
  • 请于2020年12月9日 (当天)发送邮件安排技术面试。
  • 技术面试:2020年12月13日 (4天后)
  • 已接受:2021年1月19日 (历时1个月零6天)

2021 年春季入学申请截止日期为2021 年 1 月 4 日,课程将于2021 年 2 月 1 日开始。

申请MLH奖学金📝

要申请,请前往MLH Fellowship 网站,然后点击“立即申请”

专业提示:如果您想在不提交申请表的情况下查看申请表上的所有问题,只需在表格中输入随机数据并不断点击即可Next Page

我建议至少在申请截止日期前1-2个月提交申请。临近截止日期时申请人数可能会非常多,所以越早申请,你的申请就能越早得到审核,面试也能越早进行。

让我们一起来看看申请表中的一些重要部分。

程序

您需要从以下3个程序中选择一个:

  • 探索者:通过小组合作,参与一系列类似黑客马拉松的短期冲刺,来构建你的个人项目组合并尝试新技术。
  • 开源:通过为全球数千家公司使用的主要项目做出贡献,学习如何成为一名优秀的开源公民。
  • 实习:通过与真实公司和政府合作伙伴合作开展项目,体验解决现实世界软件工程问题的感觉。

如果您选择开源项目,则需要选择以下方向之一:

  • JavaScript / TypeScript
  • Python(Web)
  • Python/Julia(数据、人工智能/机器学习)
  • 红宝石

我选择了开源项目和 JavaScript / TypeScript 方向,因为我喜欢 JavaScript,而且我的大部分项目都使用了 JavaScript。

PS:更多节目即将推出。
更多节目

我应该选择哪个项目?

“探索者”项目非常适合那些缺乏个人项目或渴望探索新技术的人。在“探索者”项目中,你将积累个人项目作品集并尝试新技术。每两周(一个迭代周期),你将与 2-4 位新成员组成团队,共同开发一个全新的实际项目,并将其添加到你的简历中。每个迭代周期都有不同的主题(例如作品集、开发工具、游戏、社会公益等),旨在激发你探索自己的兴趣。你将有机会与行业专家和创始人互动交流,了解他们每天面临的实际挑战。

开源项目非常适合那些拥有丰富项目经验或在公司实习过,但缺乏大型开源项目贡献经验的人。在开源项目中,学员将有机会参与 React、Jest、Flask、Julia、forem、scikit-learn 等大型开源项目。项目开始时,学员会被分成若干小组,称为“pod”。每个 pod 由 8-10 名学员、一位专业导师和 2-3 位开源项目维护者组成。在整个项目过程中,pod 内的学员将合作完成各自的项目。

对于那些希望解决实际软件工程问题,并积累与真实企业和政府机构合作项目经验的人来说,实习项目是一个绝佳的选择。实习生将学习如何从构思到产品发布,不仅能提升技术技能,还能培养客户调研等商业技能。

注意:实习机会主要面向已获得美国工作许可的人员,因为大多数合作公司都位于美国。不过,MLH 正在尽力与世界各地的更多公司建立合作关系。如果您不符合实习资格,我们将自动考虑您是否适合开源项目,请不必担心。

时间投入

接下来,你需要选择兼职(每周10-20小时)还是全职(每周30-40小时)。我因为是全日制大学生,所以选择了兼职。👨‍🎓

编程语言

这里会有一个“开发者体验”部分,你需要选择你最擅长的编程语言。👨‍💻

理想情况下,您应该具备所选编程语言的中级或高级水平,并拥有使用该语言参与各种项目的经验。技术面试中,我们将评估您使用该语言的熟练程度。

代码示例

我认为,代码示例在整个选拔过程中起着至关重要的作用。最好能有一个解决实际问题并展现良好软件工程实践的代码示例。它可以是你参加黑客马拉松时创建的项目、个人项目,或者你做出的重要开源贡献。

注意:如果您申请的是开源项目,则您提交的代码示例必须使用您最擅长的编程语言编写。

选择一个你最引以为豪、最能代表你编程能力的项目。它不必过于复杂,但也不要过于简单。如果你有多个优秀的项目,请选择创意独特的那个,因为它能证明你不可能从网上抄袭。

请避免提交 Jupyter Notebook 项目。正如Swift所说:

“他们并没有真正展现出解决问题的实际能力,他们的文章读起来更像是博客文章。”

以下是一些直接摘自申请表的代码示例要求:

代码示例要求

展现良好的软件开发实践是一项巨大的优势。以下是一些项目中值得借鉴的要素:

  • 编写良好的文档
  • 一份简洁易懂的README文件,解释了项目的功能以及使用方法。
  • 模块化代码。不要把所有内容都放在一个大文件中,尽量将其拆分成多个文件。
  • 一致且清晰的变量命名
  • 一致的压痕和间距
  • 避免在代码中使用大段注释。
  • 必要时使用环境变量
  • 单元测试

PS:如果您了解更多信息,请在评论区留言。

这是我提交的项目:

GitHub 标志 PawanKolhe /彩色日历

📅 一个可自定义的日历 JavaScript UI 小部件/组件库,能够显示事件。

标识

彩色日历

npm 版本 npm 下载 尺寸 jsdelivr 点击量 执照

CircleCI

一个可自定义的事件日历组件库。请查看演示 1演示 2演示 3。

彩色日历

🚀 功能

  • 零依赖
  • 将事件添加到日历
  • 对日历日期更改执行某些操作
  • 内置月份和年份选择器
  • 可用主题
  • 完全可自定义,可通过 CSS 变量、在创建日历时传递选项参数或覆盖 CSS 来实现。
  • 请求更多功能……

📦 入门指南

CDN

JavaScript

<script src="https://cdn.jsdelivr.net/npm/color-calendar/dist/bundle.js">
Enter fullscreen mode Exit fullscreen mode

也可在unpkg上找到。

CSS

根据你想要的主题选择一个 CSS 文件。

<link
  rel="stylesheet"
  href="https://cdn.jsdelivr.net/npm/color-calendar/dist/css/theme-basic.css"
/>
<!-- or -->
<link
  rel="stylesheet"
  href="https://cdn.jsdelivr.net/npm/color-calendar/dist/css/theme-glass.css"
/>
Enter fullscreen mode Exit fullscreen mode

字体

从Google Fonts获取字体

<link
  href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600;700&display=swap"
  rel="stylesheet"
/>
Enter fullscreen mode Exit fullscreen mode

检查一下……

论文题目

这部分是申请中最重要的部分。请慢慢撰写作文。✍️

总共有5道简答题:

  1. 请简要描述这段代码示例的功能。(限200字)
  2. 请简要描述您在编写此代码示例的过程中学到了什么。(限200字)
  3. 你为什么想成为MLH研究员?(限250字)
  4. 学习是MLH奖学金项目的首要重点。如果您被录取,您最近学到了哪些知识,并希望与其它学员分享?(限250字)
  5. 还有什么我们应该了解的吗?(限250字)

在问题 1 中,我谈到了该项目的功能、适用范围以及我使用的技术。

在问题 2 中,由于这是我第一次构建 JavaScript 库,所以我解释了在创建库的过程中遇到的挑战。我谈到了我用来构建项目的构建工具,特别是 Webpack、Gulp 和 Rollup,以及我使用它们的原因。

在第三个问题中,我谈到了这个奖学金项目将如何通过让我接触到真实世界的项目,帮助我弥合大学与产业之间的差距。我还表达了我对终身学习的热爱以及与他人分享知识的意愿。

在第 4 题中,我谈到了我在第 2 题中提到的构建工具,以及云和 DevOps。

在第 5 题中,我谈到了我的志愿服务经历和我的职业目标。

“你应该着重讲述你独特的经历,以及这些经历如何让你显得有趣或引人注目。最优秀的申请文书会讲述一个与申请机会息息相关的、独一无二的个人故事。对我们来说,这类文书通常会讲述申请人如何爱上编程、黑客马拉松或计算机科学社区的故事。”
——威尔·罗素,MLH Fellowship社区经理

正如威尔所说,第一印象至关重要。

来自 Will 的 Discord 消息

还有一点,如果你英语不太好,最好请朋友或家人帮你修改作文。语法和拼写错误会非常影响阅读体验。

来自MLH首席执行官的建议

以下是Code for CauseMike Swift(Major League Hacking 首席执行官)的一次信息量很大的采访:

滚动至 34:10 时间戳


面试👨‍💼

如果你的作文题回答得当,代码示例也足够优秀,我们会邀请你参加初步的(非技术性)面试。邮件中会有一个 Calendly 链接,你可以根据自己的方便安排面试日期和时间。请务必准时,并提前检查你的音频/视频设备。

初次面试

一旦您的申请审核流程开始,通常需要最多 10 天的时间您才会收到安排初次面试的电子邮件。

初次面试

面试开始时,面试官会确认你在申请表上提到的细节,例如你申请的课程、所需时间、你是否年满 18 岁、你居住在哪个国家等等。

这是一个简短的10分钟面试,目的是核实:

  • 如果您符合条件
  • 你对这个项目的热情有多高?
  • 如果您的音频和视频质量达到标准
  • 如果你善于与他人沟通,因为这是一个全球性项目。

这次面试中我被问到的两个主要问题是:

  • 你为什么想成为MLH研究员?
  • 请您简单介绍一下您提交的项目以及您从中学到的东西。

面试结束时,你可以向面试官提问,我强烈建议你在这里提问。因为我的面试官曾是MLH的研究员,所以我问了他一些关于他作为研究员的经历。

初次面试后不到两小时,我就收到了安排技术面试的邮件。🥳 请注意,根据申请人数和申请时间,有些人可能需要更长时间才能收到回复。

技术面试

技术面试中,面试官会评估你的技术能力。面试时间严格限制在15分钟以内,所以务必合理安排时间。确保你对项目了如指掌,并且清楚项目中每个文件的功能。👩‍💻

安排技术面试

面试开始时,你需要简要介绍一下你的项目(务必言简意赅)。之后,你需要共享屏幕,并引导面试官浏览代码库,解释其工作原理。面试官会不时停下来提问。他们可能会问你为什么在项目中采用某种特定的方法,以及你所使用的编程语言的一些概念。

我觉得我可能为技术面试准备得太多了。😅 我以为面试官会问一些关于 React、Express、Vue 之类的问题,这些都是我在 GitHub 上其他项目里用过的技术,但结果并没有。

面试官只问了我提交的项目相关的问题。我完全没想到15分钟会过得这么快。我本可以减少解释项目功能的时间。

面试官更想了解你对项目中代码的理解程度,以及你是否能够解释项目中某些决策背后的原因。面试官也想了解你对所用编程语言的掌握程度。

注意:技术面试中不会要求您编写任何代码。

在我的项目中,有人问我为什么使用 Rollup 而不是 Webpack 等其他模块打包工具,以及为什么使用 Gulp 执行某些任务。我还被要求解释我在 JavaScript 代码中使用的基于原型的继承模式。

幸好我做好了回答所有问题的准备。虽然一开始我花了太多时间解释我的项目是做什么的,但最后我在技术知识方面表现得相当出色。

技术面试结束后,需要耐心等待,因为申请的最终审核通常会在申请截止日期临近时进行。录取通知书预计会在奖学金项目开始前两周左右陆续发放。

录取邮件

专业提示:务必查看垃圾邮件文件夹,以免错过任何重要邮件。

2021年春季统计数据📊

  • 已确认有4968人申请
  • 约有1000人接受了采访
  • 所有项目共录取125名研究员。

录取率为2.5 % 。

注意:春季申请人数较少,因为某些地区春季实习机会不多。预计夏季和秋季的申请人数将大幅增加。

结论

实际上,你并不需要有开源方面的经验才能加入开源项目。事实上,大多数入选开源项目的人都是开源新手。

我申请时除了贡献过一些文档之外,没有任何参与大型开源项目的经验。但我有很多个人项目,一个活跃的 GitHub 账号,以及在一家创业公司的实习经历。💪

务必展现出你终身学习的热情、良好的团队合作能力以及对技术的激情。在申请文书和代码示例中融入个人特色,将是让你脱颖而出的绝佳方式。

祝你好运! 😇 希望你能收到录取通知书!

如果您觉得这篇文章有用,请分享给您的朋友,并在LinkedInTwitter上关注我。👍

等我的研究员项目结束后,我会写一篇关于我的经历的文章。

文章来源:https://dev.to/pawankolhe/applying-to-the-mlh-fellowship-tips-tricks-1jc1