An unbiased look at revenue streams every programmer can use to boost their income
Photo by Kyle Glenn on Unsplash
As the world of tech develops, the value of people with software development skills increases. The internet has given us an incredible number of opportunities without borders. With a little bit of programming knowledge, access to a computer, and the internet, literally anyone can start making some money online, provided one has the right mindset.
Before I jump into the nitty-gritty of how to go about actually generating your first dollar online, I just want to put this out there. This piece is not about making money fast. It’s about actionable things you can do daily to generate an alternative revenue stream. What the stream will be is entirely up to you. Getting into the alternative stream game is about playing the long game and realizing early on that there is no such thing as a free lunch. Before you embark on this passive revenue stream journey, keep one thing in mind: Follow through!
If you examine the lives of people around you or online who have achieved some degree of success, there?s a high probability you?ll find a story of dismal failures ? not one, but many ? somewhere along the way. To quote IBM?s founder, Thomas Watson,
?If you want to succeed, double your failure rate.?
With this equal opportunity provider called the internet, anyone can make some money online if they?re consistently diligent to the cause. The internet is the greatest common denominator, where wealth is not exclusively reserved for the few. To succeed in generating some kind of revenue stream with your programming efforts, you must understand that the idea is to fail quickly, learn to pivot when something does not seem to work, and move on to the next thing. For some it will be easy, for some it will be hard. That’s how things are. Everyone?s path is different, and there is no one definitive way of taking this passive online income journey.
Let?s jump into the list of things you can start proactively looking into today.
1. Freelancing
Freelancing is a great way of making some side income while still holding down your day job. Or perhaps, if conditions are right, it could potentially become a full-time job. Though freelancing sounds great on paper, it requires a lot of discipline and effort to find clients and projects. One thing you need to keep in mind is freelancing only works if you possess the ability to self-regulate. If you lack this ability, then honestly, there is no point in starting down the freelance path. Instead, a nine-to-five job would be best suited for you as it provides order and structure.
Without digressing and regurgitating the same content you?ll find online, I want to give you a different take on what has worked for me. One thing I learned early on is that you shouldn?t follow the herd. Carve your own unique path that sets you apart from the rest of the pack.
Platforms like Upwork or Fiverr offer a lot of opportunities but can easily turn into a perpetual rabbit hole you might not want to go down. The rates are pretty low if you don’t have a name, so I would only recommend them if you just want to dip your toes into the water for the first time or are satisfied with a little bit of additional income. This, of course, doesn’t mean you can be successful on them.
A better strategy would be to work on your LinkedIn profile, contact recruiters and past clients from your network, go to conferences and meetups, and look out for platforms that match up remote workers with companies.
Take advantage of and leverage Facebook groups. There are dozens of Facebook groups that are designed specifically for freelancers. Programming-based groups are other places that teem with opportunities for freelance work. These are probably a better option than sourcing leads in places like Upwork and competing with C-grade, $5 programmers. Facebook groups also allow you to showcase your work and garner support, make friends, and expand your network and connections. Below is a list of groups to get you started in your pursuit of finding that extra dollar.
- Guavabean Freelancer Group
- Remote and Travel Jobs
- Freelance Incubator
- Remote Tech Jobs
- Remote Jobs, Work Anywhere ? Inventive Hub
- Remote Jobs & Projects for Developers
- Jobs for Front-End Developers
There is no shortage of Facebook groups you can join and explore. Go ahead type ?remote jobs? or ?programming jobs? ? or be creative about your search terms. You?ll be surprised at how many groups there are.
Here is some professional advice from one software developer to another: Do not ? I repeat, do not ? burn your bridges when you leave your current day job! There are exceptions, of course, to this rule. Sometimes it?s ethical to burn bridges, e.g., when your boss is a horrible manager who treats employees like dirt and rips off your customers or deliberately acts in ways that go against your ideals and principles.
In the event that you have nothing against your employer, I would urge you to keep in contact and plant little seeds to keep doors open once you resign. Seed planting is the idea that you periodically reach out, not seeking work but to maintain that ongoing rapport. Let your former employer know once in a while that you?re open to new creative pursuits. As long as they have that idea, it’s easier to ask for freelance work in the future. It does help if prior to leaving your previous job, you excelled and built a reputation as the go-to guy.
I encourage you to take some time out to read my other piece on hard truths about being a freelance programmer. It?ll help you navigate this uncharted territory.
Hard Truths About Being a Freelance Software Developer
It?s not all big-ticket clients and big-money projects
medium.com
2. Bounty Programs
Software failures affected $1.7 trillion in assets in 2019. According to the survey, these failures were found at 314 companies and affected half the world?s population. These are some facts we can’t ignore.
In hindsight, most of these incidents were probably avoidable with proper QA best practices. If there?s one thing in life you can always count on, it?s that developers make mistakes. This brings us to the bounty program, a good opportunity to make some passive income online for you.
Hunting for bugs, or what?s called bug bounty hunting, is the process of being paid to find vulnerabilities in software, websites, and web applications. The act of crowdsourcing means a company can tap into a pool of collective intelligence. The more people who work on a problem, the higher the probability of finding flaws in applications. Most companies do not have access to a full-time, dedicated security team nor do they have the money to invest in dedicated resources for such efforts. So some of these companies reach out to private contractors like you for help or, better yet, just open-source this to the public.
Some programmers make tens of thousands of dollars a year on side-hustling via bounty programs. Below is a list of websites you can start looking into to find some good paying gigs to build up your passive revenue stream.
- HackerOne
- Bugcrowd
- Vulnerability Lab
- Fire Bounty
3. Coding Contests
If this is your first time learning about this, then yes, you can make some pretty good change from this endeavor. There is, though, a big but you need to be aware of: Programming contests are not everyone’s cup of tea. You really need to know your craft for this to work.
That said, doing online coding contests has so many other rewarding benefits beyond the opportunity to win cash prizes. One of the key things that one derives from doing programming contests is that such contests provide a platform for you to showcase your creativity and learn new ways of doing things. There’s also an opportunity to network with like-minded individuals.
For those of you who might be running out of project ideas to work on, this is an alternative way you can spark your creativity. The by-product is that if you do succeed, you can earn money. Or perhaps you can earn yourself a full-time position in a company that can pay you well, maybe even skipping the interview process entirely.
For those who would like to get started, there are dedicated platforms that organize programming contests for real prize money. One of the biggest is Topcoder, with more than a million members and a lot of competitions. They have three main focus areas: design, data science, and development.
You would work on real projects initiated by more than 2,000 companies or in single matches against opponents. Fun is guaranteed, so is a fast learning curve. If you like challenges, this might be something for you.
Below is a list in no particular order of websites you can start looking into to practice and participate in coding contests with monetary rewards. This way of making money online is not for everyone, and there is no guarantee you?ll win.
I would also recommend looking into hackathons that require you to build an application based on ideas. These tend to be less stressful compared to the algorithm-based, problem-solving coding contests. Project-based hackathons are always fun when done with friends as the experience is more engaging.
Here are some of the top sites that host contests as well as provide platforms to exercise and prep your mind for future contests.
- Topcoder
- HackerEarth
- Coderbyte
- Project Euler
- CodeChef
- Codeforces
- Sphere Online Judge (SPOJ)
- Google Code Jam
- CodingBat
- Codility
- HackerRank
- InterviewBit
Competitive programming for income is not exactly the best long game you can play as it?s very difficult to maintain consistency. There is no guarantee of future revenue, but it does serve as a platform for other online opportunities and to showcase your portfolio and your experience, which could lead you to other money-making opportunities.
4. Become an Online Instructor
Becoming an online instructor is killing two, if not three, birds with one stone, and here is why. As an online instructor at one end of the spectrum, you get to do what you love (i.e., code) while reinforcing your knowledge by teaching others. It has the side benefit of earning some semi-passive revenue while you?re at it, depending on the approach you take.
By ?the approach you take,? I mean:
- Create a course, upload it to a marketplace, sit back and let the marketplace do all the marketing (the hands-free way).
- Create a course, host it yourself on a content management platform, and market it yourself.
- Conduct teaching sessions that foster face-to-face interactions with students. These could be one-on-one or in a group setting. They could be offered via marketplace platforms or over conventional video conferencing or as webinar-style sessions. This approach can be carried out through the marketplace or by self-promotion.
The reason why I call this semi-passive is that, depending on the route you take, the instructor business can be something that might take up a lot of your time initially. The process of creating courses, editing your content, and preparing lecture material and homework exercises can be quite a bit of a time investment. It could take you anywhere from one to three months’ worth of work (at least from my personal experience getting started from scratch) because technical subjects are hard.
Do not believe the BS you see online about ?How I made my course in 5 days and made 10k USD.? The large majority of those courses are not technical programming courses. Secondly, those people have invested years. They?ve accrued a large following and already have a large target audience when they hit the Publish button. It?s a known secret, but yet very unknown.
While course creation is great, something to keep in mind is that you have to pay your taxes or the taxman will come knocking on your door.
Most platforms such as Udemy are profit-sharing marketplaces and take 50% commission. The U.S. government imposes a 0 to 30% tax deduction for purchases made by U.S. citizens ? that’s if you do happen to be an instructor who?s a non-U.S. citizen. If your country has a tax treaty, then your tax applied will be less than the maximum 30% on your profits.
Above is the harsh reality view of how things are, but this should not be a deterrent to your success. I am a big advocate of instructor-based teaching as a passive revenue stream. I am personally a Udemy instructor and have gone through the birth pains and seen success.
Below are platforms you can start to look into to sell or teach online to generate some semi-passive revenue. Take note that most of these are open to everyone regardless of which country you come from. There’s always PayPal and Payoneer to help facilitate your transferring your profits.
- Udemy for creating and publishing your own online coding courses. The profit-sharing is high at 50% but Udemy brings to the table millions of students and an audience you can directly tap into when you hit the Publish button.
- YouTube for publishing your own video coding tutorials. Revenue is generated through an ads program.
- Amazon Kindle Direct Publishing for creating and selling your own books
- BitDegree is a Udemy alternative for creating and publishing your own online coding courses.
- Udacity is another alternative to Udemy.
- Skillshare is also an alternative to Udemy.
There are other platforms like Frontend Masters, Lynda, or Pluralsight that are on the high end of the spectrum. They are by invite only, but worth the time investment to get into as they have a large audience and some of the best instructors you can get to learn from.
I don’t mean to make things sound easy; they aren’t. Making consistent high-quality content is what will set you apart from the rest of the pack. Competition is high, and part of the game is marketing. The best instructors constantly update their courses to stay relevant and at the top of their game. The beauty of creating courses is that once you build traction, it?s an endless stream of passive income.
5. YouTube Channel
YouTube still has massive potential for you as a programmer to make some pretty decent passive income through the YouTube Partner Program. In 2019 alone, YouTube made 15.1 billion in profits. That’s enough cash to go around for everyone.
The barrier to entry is a bit high if you’re trying to join the partner program, though. It requires that your channel have an aggregate total of 4,000 watched hours of video over 12 months and at least 1,000 subscribers, which is no small feat when you?re getting started and you?re a nobody.
There are alternative ways of generating value from your channel, even if they?re small, like blogging or article creation. You need to leverage this platform as a lead and audience generator.
Find something you?re really good at. Make sure it?s also something related to programming that you genuinely enjoy teaching others. Find out what beginners are struggling with in that area. Then record short videos of yourself solving those problems. This doesn?t have to be anything too fancy. You can screencast and see how your viewers respond.
Figure out a logical learning path that you?ll guide your viewers along. Once you have gained some traction, content created on your channel can link to articles or ebooks or whatever digital material you would like to sell to your target audience. To make some money, you need to build that social proof, and that usually requires you to give something for free in return, such as the valuable content you?ll be creating for your YouTube channel.
6. Build an App You Can Sell
Here is the strategy that requires the most work of the bunch: Make your own piece of software in order to sell it. It?s no easy feat, but can be incredibly rewarding. One of the things we programmers suck at is understanding how to market our craft. You need to come up with a business plan and strategy of how to monetize your application. You can devise models that are subscription-based, pay per license, or outright ?build once and sell once? (including source code and documentation). This means relinquishing your ownership rights.
Build a software product that the market needs or that helps other people solve their problems. The first steps are to find a problem and solve it with software. This can be as simple as walking down to your local store and having a conversation with the owners to see what pressing issues they?re struggling with, and then providing a solution.
7. Blockchain Grant Money
With cryptocurrency and blockchain businesses working towards adoption, there’s never been a better time to start developing on top of blockchain technologies. In 2018, we saw cryptocurrencies crash in a massive sell-off that caused the market to drop by 80% from its peak in January 2018, mainly due to speculation and greed. The by-product of the crash was that weak startups were weeded out. Those that remain provide real, tangible value. Now that the market is smarter, people have learned and are now focusing on the real value that blockchain technology provides.
Though this technology is still in its infancy, there is a real opportunity to build on top of the blockchains that survived the market crash and to build distributed trustless applications that will drastically change the way conventional applications and finance works.
Most blockchain technologies run on incentive structures. Incentives are what encourage communities of participants to cooperate and create the value that will ensure the success of their platform. Keep this in mind. That’s where the grant money idea comes in.
Grant money from blockchain startups is an out-of-the-box way of generating money. Grants are typically awarded on the basis of need and generally do not have to be repaid as long as you meet all of the obligations and milestones set out.
Since these blockchains run on incentives, they need developers to build applications on top of them. If the application gains adoption through the incentive structure, then more money can be generated. Thus, if the blockchain company awards, for example, $100,000, that’s money that can easily be recouped. So from the blockchain companies’ perspective, it’s a worthwhile investment to get you, the developer, to generate ideas of applications you want to build on top of the blockchain. Think of it as a marketplace: The more online sellers, the more money the owner of the marketplace makes. It?s a volume game.
In order to understand why blockchain startups award grants, you need to understand the nature of the blockchain itself. Each blockchain has its own incentive structure. Below is a list of blockchain startups that offer grants to build on their platforms. So think of it as free money with strings to deliver.
ConsenSys
ConsenSys is a gateway for funding open-source Ethereum projects. Projects built must benefit the whole ecosystem. Funding: dispersed in amounts of $10,000 and $25,000 via GitCoin
Aion network
The Aion network is a multi-tier blockchain network designed to support a future where many blockchains exist to solve unique industry problems. Funding: $5,000+
Waves
Waves Grants is a program aimed at startups and individual developers interested in building new products based on Waves technologies. The funding amount depends on the proposal. Funding: anywhere from 800 to 3,000 Waves tokens.
Zilliqa
Zilliqa is the first blockchain platform that uses the technology of sharding to enable increasing throughput as the network expands. Funding: around $20,000 up to $50,000
8. Don’t Write for Cash
Wait?I wrote, ?Don?t write for cash.? What does that even mean?
For every coder out there who knows their craft, there are more than 100 more who are just getting started, hungry for knowledge, or chasing the Silicon Valley dream. Where do most of them start learning? Online, of course.
Making money writing without an audience is hard. Having a preset mindset to write for money equally makes it difficult to sustain consistent writing momentum. Hence, it’s important to not write for cash but to share knowledge. The by-product is money. It?s important to do the seed planting first.
Below are some things you can do if you don?t have your own audience and you would like to get started, but don’t want to end up creating content that will end up in a void without anyone reading it.
- Join the Medium partnership program and start creating content.
- Sitepoint is another website that pays developers to write technical tutorials.
- Contribute to UX Booth. Uxbooth does not accept fully written drafts. Instead, they pair authors with editors in order to collaborate throughout the writing process.
Overall, the by-product of writing every day is you get to own your craft. It opens up new opportunities as you constantly have to learn and showcase your expertise on the subject matter. One of the first articles I ever put online was written 15 years ago, before I graduated from university. Fast forward to today: I?m still at it, and it?s been quite a rewarding experience.
9. Sell an Ebook
Ebooks, and books in general, deserve a place of their own as this type of writing is more extensive and more time-consuming. Writing a book can be a great way to market yourself and even make money. By writing a book, you can build your brand and generate leads for your business (consulting, speaking, etc.).
You can also make a few bucks selling ebooks with coding tips. You can publish and sell them through different forms of media, including social media, your website, or Amazon. It sounds easy in practice, but it does take an incredible amount of patience and follow-through to get started. Personally, I?m still in the middle of creating one. What matters is that you take the first steps.
10. Make a Plugin or Theme for WordPress
One of the best ways to generate money online by playing the long game is to build plugins and themes for WordPress. WordPress is now the dominant content management system on the market. WordPress has 60.8% market share in the content management system market and powers 14.7% of the world?s top websites. The WordPress Plugin Directory features 55,000+ plugins.
The market may seem oversaturated, but think for a moment about the number of plugins or apps that haven’t been built yet on WordPress. Or the number of restaurants and businesses opening up around your neighborhood that still do not have an online presence. To get started making money with your plugins, you can start posting to various online marketplaces, such as:
- Themeforest
- CodeCanyon
- TemplateMonster Marketplace
- Mojo Marketplace
- ThemeSnap
- Creative Market
- Codester
- WordPress.org
You can choose to make your plugins and themes premium. Or you can charge perusers, use ad-driven monetization, or accept donations through Patreon. You can also give your plugins and themes away free, to build social proof. Like all things, if no one knows who you are, sometimes it?s good to showcase a few freebies.
This Doesn?t Fit Into the List
There’s one side gig that doesn’t seem to fit into the list as it falls into the category of idealism. That?s open-source sponsorship. GitHub recently announced its Sponsors platform, a way for companies or individuals to sponsor (i.e, tip) developers working on the projects they love. It?s the same way Patreon is used by some open-source developers.
As software developers, we?re all aware that building anything and ensuring it stays relevant and maintained is quite challenging, more so if it’s done for free. Getting incentives to keep pushing forward is one way to strike a balance. This is something you may be inclined to look into.
Final Thoughts
There are numerous ways to make money online as a programmer. You can create a full-time income with these methods, all from the comfort of your home. However, just as in any other job, you need to put in the time and effort and to develop a keen sense of business. The notion of truly passive income does exist. However, the amount of work that one needs to do before reaching that level is equal to or so much more than the amount in your nine-to-six day job.
There is no such thing as fast money. If deliberate steps are taken and you take action, making money through programming can be immensely lucrative. It?s a road paved with adversity, rejections, and failures. But one doesn?t need to win all the time; one needs to strive to find one thing that works. Don’t get distracted. Focus on a few, then one, and curb your desire to chase the next shiny thing.
Always make sure to check with your employer’s contractual policy to ensure you are not violating any contract when performing things like freelancing for other clients, especially if you?re working with clients in the same domain as your employer. Doing so could be a breach of trust and possibly end up with you being terminated prematurely.
Some of the best programmers that I have come across got good at what they did due to the amount of freelancing hours logged. Though some employers may feel intimidated by the prospect of you generating revenue elsewhere because it may seem more of a distraction to them, it’s always good to have a conversation with your employer about it. Some employers, if they see tangible benefits they can derive from your extra extracurricular activities, may adjust company policies for you.
If you found this piece helpful, pass it forward to the next developer.
Please feel free to drop me a line in the comments below! I?d love to hear how your journey is going and things that have worked for you.