This is the first post in a weekly blog series where I’ll be documenting my journey as a Software Engineering Fellow at MLH. Getting into this program has been a huge milestone for me, especially because I applied last year, cleared both interviews, made it to the waitlist… and then didn’t get in.
But I didn’t give up.
This year, I reapplied, and I’m thrilled to say I made it!
I’m writing this series because when I was applying, I was desperate to get a “backstage pass” to what the fellowship was really like, what do fellows actually do week to week, what’s the structure like, and what kind of projects are involved? But there wasn’t much out there. So I figured I’d create the blog I wish I had when I was trying to get in.
What is Week 01 all about?
We officially kicked off the fellowship this week, and like most programs, it started with onboarding. Here’s what that looked like:
- We read through documents on open source best practices, working in teams, and time management.
- Completed a few interactive GitHub training modules to learn how to contribute to open source the right way.
- Got introduced to our “pod”, a group of fellows that you collaborate with throughout the program.
- Scheduled 1-on-1s with our pod mates and pod leader.
Each pod has around 10–15 people and a pod leader from MLH who acts kind of like your team lead or manager. We have standups three times a week (Monday, Wednesday, Friday), each lasting about an hour. These are where we share updates, unblock each other, and stay aligned. There are multiple projects within each pod and pod members are assigned to the project that they would be working on.
My Project
I’ll be working with two of my podmates on Apache Airflow, which is a platform to programmatically author, schedule, and monitor workflows. We’ve been given a project scoping document that outlines what we’ll be building, and we’ll also be meeting the maintainers of the project soon, which is super exciting.
The Orientation Project
As part of week one, we all contributed to an open-source orientation project, a simple Flask API (literally one file of code LOL), where we had to complete at least three issues by submitting pull requests. The goal here wasn’t to write complex code, but to simulate a real open-source workflow:
- Raising and linking issues
- Submitting and reviewing PRs
- Collaborating asynchronously
- Dealing with merge conflicts
Even though I’ve been through all of that before, I think it’s a great intro for those new to open source and GitHub-based collaboration.
Do fellows work with other companies?
When I wasn’t a fellow, I used to see people posting about how they got into the MLH Fellowship and were working with companies like RBC, Meta, etc. I always wondered, what does that even mean?
Now that I’m part of the program, I can explain it.
Let’s say you’re a company using an open-source tool like Apache Airflow. You run into issues or bugs that need to be fixed quickly because they’re impacting your business.
One option is to fork the project and have your developers maintain your own version. But while you can make local fixes, it’s tough to keep your fork up-to-date with the original repo. Projects like Airflow are updated multiple times a day, and staying in sync while maintaining best practices and alignment with the project’s direction is a ton of work.
Another option is to assign your developers to contribute directly to the open-source project. But that can be a heavy lift, you probably don’t want to allocate your devs’ time away from internal projects just to maintain something like Airflow.
That’s where MLH comes in. MLH partners with sponsor companies (in my case, RBC, funny enough, I also work full-time as an SRE at RBC). The company shares the bugs or features they want prioritized, and the fellows work on them.
In my case, RBC is currently focused on migrating from Airflow 2 to 3, so the fellows (including me) have a lot of freedom right now to work on whatever we want. That might change later, and I’ll definitely share updates in future blog posts.
We’ll also have a mid-program demo with RBC, where we’ll present what we’ve worked on. Should be fun, I’ll be writing a blog about that too.
Wrapping Up
I’ll be updating this blog weekly with everything we’re up to, challenges, wins, lessons, and progress. So stay tuned for a full behind-the-scenes look at the MLH Fellowship.