February 19, 2025
So, you’re building an AI application on top of an LLM, and you’re planning on…
6 years ago, I decided to open-source my Python code for a personal project I was working on, which led to numerous career successes that followed. Not just for myself but for some of the folks I met and collaborated with. It was a different era in tech back then, but I learned some things about open-source tools that helped me land my dream roles and build my career. These learnings are even more relevant today in this experimental age of GenAI, so I will share them with you in hopes they help other early career folks build their dreams, too. In this article, I’m going to let you know how you can also get involved in the OSS community today and start building your dream career in AI, including:
I’ll start with a quick story about how I started contributing to OSS tools. Before COVID-19 and before the GenAI boom, I was living in Denver, Colorado, and working remotely ahead of the times for Trunk Club, a personal styling company using Data Science to curate a personalized styling experience for their customers. At this time, I was obsessed with recommender systems. Why? Because I’d finally found a way to apply my mathematical skills to the fashion industry. It was finally the merging of my hobbies and technical skills that I didn’t think was possible but was lucky enough to discover.
As I was working on these algorithms, I was approaching them with a slightly different mindset than most Data Scientists because I didn’t just want to optimize the model’s accuracy metrics for revenue; I wanted to help people truly discover and express their unique style because good style is something I’ve always believed helps folks lean into their own unique, authentic energy and achieve their greatest potential. It’s something that has helped me overcome imposter syndrome. Look good, feel good, work good. :-)
But as I dove into these projects, I noticed a gap. These ranking algorithms have nuances in terms of accuracy, and often, a single metric is not enough to understand how that model is affecting your customers; you need a whole suite of metrics. I needed metrics not just for precision and recall but also for surprise and coverage to get a sense of how truly personalized these recommendations may appear to the customer.
So, I wrote some metrics in Python to use across my projects. I started sharing them with a few friends and team members, and I ported the code around from notebook to notebook across my work and personal projects.
Then I had an idea. What if I could just open-source this? Not only would it be easy for me to share these metrics with my team and re-use them across my projects, but I’d even get some help maintaining the code and developing additional metrics. If I was feeling the gap of not having a Python library for these metrics, other people may be too. So I created recmetrics, my first open-source contribution, and eventually worked with Comet on Opik – a fantastic tool for LLM evaluations with a much broader reach!
Figure 1. My first open source project – recmetrics
But it wasn’t the Open Source library itself that built my career. It was actually the connections I made while building it and the coding experience I got that helped my resume and portfolio shine in the job screening process.
Today, we are in an experimental phase of AI. Many AI projects may fail, but some will succeed. Some will even become the next big thing. But as we tinker with new projects, we are testing the edges of where this new technology can and should be applied. As we tinker, we need to do it informally so our research is reliable and reproducible. Not only do we need to deeply understand the mathematics behind the AI algorithms so we can anticipate their ideal application areas and limitations, but we also need to be resilient and work openly and honestly during this process. Open Source projects are the main mechanism for this. It allows us to experiment with and build new tech while receiving peer reviews and contributions to improve what we’re building. Most importantly, open research and tools can be scrutinized, verified, reproduced, and built upon by the wider community. By contributing to open source projects, you can be part of this before landing your first job, and you can use the experience you gain to open doors that could lead to your next career move.
When you first graduate and embark on your job search, everyone faces the same problem—most jobs, even those listed as entry-level, require some form of experience. Sometimes, they even require several years of hands-on coding experience. Yikes. How are you supposed to gain years of coding experience without having a job first 🤷? While I always advocate for working on personal projects (learn more about the keys to creating a great AI personal project from my tutorial), creating or contributing to open-source tools is another powerful strategy that I haven’t talked about yet.
Imagine a hiring manager reviewing your resume. It looks good: great school, impressive skill set, relevant project work, maybe you even organized your school’s chess club. But they’re wondering if you can actually code since the role requires delivering high-quality, production-grade code that can pass peer review from their principal engineer.
Well, what if you’ve already passed peer reviews by contributing to open-source repos on GitHub? Your code is published, so the hiring manager can go directly to your GitHub and see perfect examples of your coding style. They can see you following coding best practices—proper documentation, clean code structure, comprehensive test coverage, and thoughtful PR descriptions. Maybe your name is even on popular repos. Even without years of professional experience, that hiring manager will feel much more confident about your application now that they’ve had a chance to examine your code. They know if they bring you in for a coding challenge, you’ll likely impress the interview team.
Coding challenges are usually part of the interview process, and these exams can be intimidating. There’s nothing more difficult than trying to remember the correct Python syntax while someone watches over your shoulder—or worse, through an awkward Zoom window. But if you can code under that kind of pressure, you can code anywhere!
Contributing to open source codebases gives you regular practice in writing code under review and receiving constructive feedback. I found this invaluable preparation for any technical interview.
Another thing hiring managers look for is professional references—people who can speak to your working style, teamwork skills, and code quality. So, you need to build a network of people with enough experience collaborating with you to comfortably serve as a reference and accurately speak to your work. As a fresh graduate or someone pivoting into AI from another field, it can be difficult to build a good set of references like this who can truly speak to your technical abilities in a professional setting.
By contributing to open-source tools, you’re inserting yourself into a community and creating opportunities to meet and work with industry leaders who may be willing to act as references for you.
In my case, after open-sourcing recmetrics years ago, I hired someone who initially contributed valuable improvements to the codebase. Their contributions demonstrated their coding skills far better than any resume could.
In another instance, another early contributor later appeared on my podcast and inspired me to pivot into Developer Advocate work, where I can leverage my technical and community-building skills! Both of these connections wouldn’t have been possible without that initial open-source collaboration, which led to career growth and opportunities for me and others.
One last pitch for growing your career through open-source contributions: I’ve noticed that while individual projects are impressive, we all build better when we build something together. Contributing to open-source projects allows you to learn from other contributors and build something that may have real traction. What might have remained a simple utility script on my laptop evolved into a tool that benefits a community—and built my career in the process.
So this all sounds great, but you might be asking, how do I find the right Open-Source tools to contribute to? There are two approaches. One is to create your own project, and the other is to find an existing project that is meaningful to you. I personally love both approaches.
To identify a good OSS project, consider gaps you’ve noticed while looking at Python libraries. Do you have reusable code sitting in a notebook that others might want to install with pip rather than coding from scratch? Is anyone else asking for it on Stack Exchange? Start there and seek contributors.
Once you have a solid idea, you’ll need to build a bit of a community around it. Building your network and encouraging contributions is going to be key to the success of your project. Here are a few tips for doing this:
If creating your own project feels overwhelming, consider contributing to established repositories. Here, there will already be a community of developers you can engage with. To identify the right projects to contribute to, think about the Python libraries you are already using. Is there anything frustrating you as you use it? Do you notice any gaps in the functionality? Are there bugs? Go fix it!
Figure 2. I’m currently involved in building Opik at Comet!
To help you get started, check out Comet’s open-source library for LLM Observability, Opik. We have an active developer community already involved there, and on the issues page, you will find some low-hanging fruit that a quick PR could address. If you do create a PR, let me know. I’d love to review it and don’t forget to star the repo ⭐! https://github.com/comet-ml/opik/issues
I’m excited to see what you build! 🚀