Open Source Made Me $10K Working Part-Time for 30 Days
Jacob Herrington (he/him)

Jacob Herrington (he/him) @jacobherrington

About: I used to work on this website! https://bsky.app/profile/jacobherrington.dev

Joined:
Aug 19, 2018

Open Source Made Me $10K Working Part-Time for 30 Days

Publish Date: Aug 16 '19
697 54

Cover Image: Eyeglasses in Front of Laptop Computer by Christina Morillo
I give a lot of career advice. I mentor interns, juniors, and random people on the internet, usually drawing on my own experience or the stories shared on devpath.fm.

This particular set of advice comes from my own experience, I don't advise that everyone takes the same path I did (because it wasn't sustainable), but I do currently have evidence that I could spin up a quarter-to-half million-dollar consulting business if I felt inclined, which is pretty nice to know.

The story starts back in June of 2018 with a Pull Request on GitHub that changed a few lines of markup:

A screenshot of a GitHub Pull Request

@jacobeubanks and I made this Pull Request to Solidus.

It was modest, but for us, it felt like an achievement. We were both pretty new to Open Source, and neither of us had really contributed to a project that was actively being used like Solidus.

Getting that PR merged really struck a chord with me, so I started looking for other ways to help out around the project (which is hard on a 10-year-old codebase).

Before long, I had a handful of commits mostly around documentation and small UI bugs. I'd also gotten involved in the project's Slack channel and asked the maintainers how I could be most helpful.

I had some great opportunities to get involved because I was invited to weigh-in on the Solidus Stakeholders committee and also attended a community conference in Memphis.

Between the direction offered to me by one of the project's Core Team members, Alberto Vena, and the bugs I found on my own, I was able to get my name fairly well-known within the small community.

One thing leads to another and eventually, Alberto extends an invitation to the Solidus Core Team.

As an aside, here is my advice for contributing to an Open Source project when you're afraid of rejection or unsure of your own ability to contribute:

Do boring tasks. They have to be done, and no one rejects a pull request that fixes tests, documentation, UI bugs or improves CI configuration.

This allowed me to contribute even more. I could review PRs, troubleshoot and sort issues, share my thoughts more effectively in the community, and merge new improvements.

I would say, this was a six to eight-month time investment. But the experience alone was worth that investment. I benefitted by learning more about Rails, making new friends and connections, and building a small Open Source portfolio.

Fast-forward to June 2019. I receive an unsolicited DM from a founder working with Solidus:

Chat interaction with some details redacted

With zero outbound marketing, I was able to sign a client that would pay me over $10,000 USD a month for less than 20 hours a week chiefly because I was on the Core Team of the project.

This kind of exposure is incredibly valuable. I'll be the first to tell you, I'm not the most experienced or qualified developer in the Solidus community (that'd be those other people I recommended), but this founder saw my name on Solidus.io, so they reached out to me.

Here is some advice for reproducing this kind of thing:

1. Contribute to Open Source

Besides being great for your technical skills, your people skills, and the developer community, it's also great for building your professional network and brand. Being an Open Source contributor on a handful of projects is a no-brainer.

2. Be vocal and useful

Put your name on things you care about (like I did with Solidus). Look for opportunities to help others, it is the right thing to do for the developer community and it also helps you expand your professional network. This is super-duper important.

3. Find projects with a direct correlation to paid work

This is a really good idea if you're looking to turn Open Source expertise into a paycheck. With Solidus, this is obvious; people use Solidus to build businesses. There are business connections for many, many Open Source projects, especially if you want to go the consulting route. Contributing to literally any framework or infrastructure tool is highly marketable to the people building businesses with those tools.

4. Be open to opportunities

I literally never ignore an email, DM, or phone call. Yes, I see a lot of annoying spam, but I also see stuff like this because people know I am someone to reach out to when you have questions. There are varying degrees of this, what I do is not sustainable after a certain critical mass, so find a system that works for you. Just be sure you're not making it difficult to get in touch with you.

5. Find a healthy balance

I chose to spin this work down after one month because I was doing this consulting while also helping to build a startup. It was not sustainable in any way, so I stepped away from an opportunity. You cannot be available for these kinds of opportunities if you aren't balancing your workload.

Regardless of whether or not you can emulate my path or if you have the same amount of privilege or luck that has put me in the position to capitalize on opportunities like this, there is one piece of advice in this article that I will swear by until I die:

Be useful on the internet.

I'm pretty sure Ben Orenstein told me this when we were recording for my podcast (still working on that episode), but it rings true and encompasses all 5 of the tips I just gave.

Ideally, this gives you some insight into how Open Source work can turn into a job offer or a business.

I'd love to hear about other experiences with this same kind of thing or advice for getting into Open Source in the comments 👇

Comments 54 total

  • William Boakye
    William BoakyeAug 17, 2019

    Hey, thanks for writing this. It was a really insightful read.

  • vinodchauhan7
    vinodchauhan7Aug 17, 2019

    Hey Jacob, thanks for such a wonderful article and guiding us. Truly inspired by your story.

  • Michaela Greiler
    Michaela GreilerAug 17, 2019

    Thanks for this inspiring article. As I'm looking for good ways to contribute to open source, this has been an interesting read.

  • Christine Pinto
    Christine PintoAug 17, 2019

    Hi Jacob,
    that's a great article. Thanks for creating and giving such amazing tips for contributing to open source projects. Looking forward to reading more and also to contribute more to open source projects.

    • Jacob Herrington (he/him)
      Jacob Herrington (he/him)Aug 17, 2019

      Hey! Thanks for reading Christine. 🤠 Hopefully, this is useful to you in some way. I think if I had this information earlier, I would have started working on Open Source earlier in my career.

  • patrick karanja
    patrick karanjaAug 17, 2019

    "Be useful on the internet" - this is a powerful advice and i will endeavor to live by it.

    • Jacob Herrington (he/him)
      Jacob Herrington (he/him)Aug 17, 2019

      In my experience, it makes you feel good and it also tends to result in great opportunities; it's a win-win.

  • YuanHao Chiang
    YuanHao ChiangAug 17, 2019

    Hey Jacob, I always thought about doing small contributions to open source projects and have done them, but I always felt it was insignificant -- although the authors were always very happy to see me contributing! I should keep doing it :) amazing and congratulations on your well-earned money! 🎉

    • Jacob Herrington (he/him)
      Jacob Herrington (he/him)Aug 17, 2019

      As a maintainer -- I'm never unhappy when someone makes a small improvement. I especially love documentation updates because that is a huge driving force for adoption.

      One of the first things I do when I'm looking into a new Open Source project is trying to fix typos and unclear documentation. It forces me to read the docs, and I can be helpful!

  • Stefan Dorresteijn
    Stefan DorresteijnAug 17, 2019

    I think more than anything, this shows how important branding is for senior and freelance developers. If you want to get the good, high paying jobs, you need to show your skills. Open Source contributions is only one of the many ways you can do that. Being on Dev.to and writing about what you know is a great option too!

  • Chris Achard
    Chris AchardAug 17, 2019

    Ben Orenstein is where I originally heard the quote "Be useful on the internet" as well. Good words to live by! Life is just generally better when everyone is trying to help everyone else :)

    • Jacob Herrington (he/him)
      Jacob Herrington (he/him)Aug 17, 2019

      He is a smart guy. I think he told me that he got the advice from someone else, but I can't remember exactly.

      I've found it's a great way to live.

  • Max Ong Zong Bao
    Max Ong Zong BaoAug 17, 2019

    Hmmm that's a intresting perspective on contributing to open source

    • Jacob Herrington (he/him)
      Jacob Herrington (he/him)Aug 17, 2019

      There are a lot of reasons to contribute to Open Source, this is just one example of why I recommend others contribute.

      In general, it's just a great idea to try and contribute to the projects you like. 😉

  • Jef LeCompte
    Jef LeCompteAug 17, 2019

    Heck yeah, dude! This has been my thought process. Glad to see that it panned out well for you. Also reaffirming what I have initially done. Thanks for sharing.

  • Andrew Brown 🇨🇦
    Andrew Brown 🇨🇦Aug 18, 2019

    The way I broke into the web-dev industry was contributing two full weeks to an open-source codebase called Teambox and then I became their CTO overnight. I've never held less than a CTO position since.

    Open source is the egalitarian's dream for career progression.

    I contribute to Dev.to codebase and the AWS Docs when I can.

    I have to begrudgingly contribute to a few ruby gems since all the 10x ruby developers sailed out to Valinor, the Undying Lands, across the sea to the west.

    I just had a wonderful Zoom call with Ben, Jess and Nick tackling a big old and ugly ticket.

    github.com/thepracticaldev/dev.to/...

    If you ever want to show you have good team skills, Open Source a strong qualifier.

  • Divyesh Parmar
    Divyesh ParmarAug 18, 2019

    Hi Jacob, this is an inspirational one. Since few weeks I have been trying to learn how can I find projects with react.js, redux only because that's what I have been working mostly and I want to see the standard code that such high profile developers write. So in the process I documented naive tricks that helped me, here dev.to/oathkeeper/finally-found-a-.... This way I could find projects which are open source documentation like dvc.org and a game title website that people are building.

    I am really hopping to grow my career and find such opportunities, but when I start reading code it gives those thrills inside at the same time I feel soothing looking at so pure, fresh, non-hassling code. Thus, my majore thing turn more towards learning such approach. Thank you for sharing this info, I guess 1.5 year I'm in my career and its still not late to keep doing this thing more. Thanks for sharing!

  • mrpcpete
    mrpcpeteAug 18, 2019

    G'day Jacob, your article has resonated something I've longed to articulate, and it's your innovative approach that has inspired me to commence on a path with certainty for which I am grateful. Perhaps this was one of the many reasons that convinced you to share this with the world. Watch this space. You deserve the gratitude thanks

  • Mahesh K
    Mahesh KAug 18, 2019

    Apart from PR, is there any way we can help open source and also benefit in monetization way?

    • Jacob Herrington (he/him)
      Jacob Herrington (he/him)Aug 18, 2019

      Some projects (like Solidus) allow you to contribute with your wallet. In exchange, you can be advertised as a preferred agency or consultant. That can be useful. Otherwise doing community management or helping to troubleshoot issues can have the same effect as contributing code

  • OnionTwister
    OnionTwisterAug 18, 2019

    Great write-up, thanks for sharing!

  • Zerophase
    ZerophaseAug 18, 2019

    I'd say your title leans a bit towards clickbait, as you need to get a client in the first place, and practice web programming. Would have been nice if you would have focused on getting yourself onto one of the major projects payroll.

    • Jacob Herrington (he/him)
      Jacob Herrington (he/him)Aug 18, 2019

      I agree with the title being clickbaity, I've been experimenting with different titles lately.

      However, getting the client was kind of the point of the article. I didn't do anything to get a client, they came to me because of my Open Source contributions to the tool they were using.

  • Mr-Lizard
    Mr-LizardAug 19, 2019

    Great article, I enjoyed reading it. However, I am part of the Grammar Fourth Reich !!

    "One thing leads to another and eventually, Alberto extends an invitation to the Solidus Core Team."

    Did you mean literally that, or rather that Alberto extended the invitation to you, to join the Solidus Core Team ?

  • Brian De Sousa
    Brian De SousaAug 20, 2019

    First off, great story. Inspirational and some great suggestions on how to get involved in open source for those who haven't, like myself!

    I have a similar (but not as cool story). I've been been running a personal blog for a few years but I'm not a frequent writer by any means. I take pride in posting quality content about topics that I have expertise on and ensure my articles are very thorough. For me, it was just a fun past-time and opportunity to share my knowledge with the larger developer community, until one day when a content manager from Logrocket.com found me. Although I didn't have a ton of blog posts in my portofolio, I believe what I had caught his eye because of quality. Since then I have been writing for the LogRocket blog and getting paid to do so. It's been a blast so far!

  • leob
    leobAug 20, 2019

    Great article, but how did you become involved with Solidus to begin with - how did get to the point of making that first PR? Were you using Solidus on a project?

    Your advice is great but the point for many people is which OSS project they should pick to work on, if there isn't something obvious that naturally presents itself (best choice is of course to contribute to a project that you're using and benefiting from).

    • Jacob Herrington (he/him)
      Jacob Herrington (he/him)Aug 20, 2019

      In this case, my employer is building a product on top of Solidus.

      However, my employer didn't actually ask me to work on the project, I was just looking for an OSS project to work on and that one made sense!

      • leob
        leobAug 20, 2019

        Right! Yes that was a perfect opportunity then, and as always in life, one thing leads to the other. Thanks for the great story and the great advice!

  • Aditya M
    Aditya MAug 20, 2019

    Hi Jacob, thanks for the helpful post! Could you talk about how you ran into Solidus in the first place? I remember looking for substantial, open source Rails codebases containing fully functional apps, a while ago. Aside from dev.to itself (which is how I found this site!), I didn't find many. Even awesome-rails does not feature Solidus in its listing... so I'm curious :D

  • Robert Laverty
    Robert LavertyAug 20, 2019

    I like your content, but not a fan of the click bait title 🙄

    • Jacob Herrington (he/him)
      Jacob Herrington (he/him)Aug 20, 2019

      Haha, I'm actually just experimenting with titles right now.

      Although, this particular title is pretty accurate imo.

      It would help me though if you could propose a better title for this article.

      • Robert Laverty
        Robert LavertyAug 23, 2019

        It is accurate indeed.

        As long as the opening paragraph isn't shilling some shit-coin or whatnot I'd say it's groovy smoothie. 👍

  • Troy Johnson
    Troy JohnsonAug 20, 2019

    Great article! We need more solid human beings like you.
    You just motivated me to get involved. You state some excellent advice for junior or senior programmers by the way. Please keep giving back to the community.

  • durga
    durgaAug 20, 2019

    Hi All - I am CTO & Co-Founder of Macrometa. Happy to help (ex: like provide visibility, reference, hiring etc) for any one interested in building open source / demos on our globally available geo-distributed data platform. The platform is a multi-model (KV, Graph, Doc, Streams) geo-distributed streaming database with local read-write latencies. You can see more at macrometa.co/macrometa-in-2

    You can reach me at dg@macrometa.co. No spam please.

    Regards,
    Durga

  • Brett Stark
    Brett StarkAug 20, 2019

    Hello - Thanks for the article. Really enjoyed. What is your favourite guide / getting started for getting into Open Source?
    thx

    • Jacob Herrington (he/him)
      Jacob Herrington (he/him)Aug 20, 2019

      I don't think I know of many guides, but I do recommend codetriage.com to people pretty frequently!

  • Joshua Briefman
    Joshua BriefmanOct 30, 2019

    Thanks for sharing your story! 😄

  • csharplove
    csharploveFeb 1, 2020

    I got a question Jacob ,how can you join the open source community and also what language are requiere to start helping ...

    Is there an specific programming languages for the world of open source ?

    Also why people are saying java is dean I hear that for long time now like java is gonna be dead I couple more years ..., but I love c#..

    • Jacob Herrington (he/him)
      Jacob Herrington (he/him)Feb 1, 2020

      Java is definitely not dead. It's everywhere! Spring is a popular framework, and Java is used for a huge percentage of Android development (with Kotlin). C# is also a wonderful programming language, I think it's actually getting more popular!

      Personally, I first started getting involved by finding a project that we used heavily at work. For me, that was Solidus.

      DEV is also Open Source, so if you want to work on a friendly project, that's a fun one!

      • csharplove
        csharploveFeb 1, 2020

        Thank you great for your answer ,so interesting

Add comment