Open source software and technology have historically been associated with volunteer work. Tim Berners-Lee did not charge users when he contributed HTML code to what eventually became the modern Internet. However, open source development has come a long way since then. Canadian programmers and software developers can now participate in open source projects voluntarily or for a fee.
The Commercial Open Source Software Development
Early advocates of open source software development intended it as a progressive way to produce programs and promote freedom of speech on the internet. However, even these early advocates did not foresee the potential commercial interest open source development could present to companies.
The most glaring advantage of open source development is its ability to bring together hundreds, and even thousands, of developers and get them all working towards the common goal of making the software better. If a company wanted this amount of manpower to perfect a program, that would cost millions of dollars. When you become an open source software developer, you are essentially an independent entity. Companies are more than willing to pay you a fee as a freelancer in return for fixing a bug or adding a useful line of code. It costs the company less than hiring a full-timer, and you get paid for work you would otherwise freely contribute.
Ways to Earn Money as a Canadian Open Source Software Developer
The beauty of the internet is that you can work from anywhere, anytime and make money. Just because you are a Canadian doesn’t mean you are barred from working on open source software licensed to an American company. You can basically work on any piece of software open to the public that your level of expertise can handle.
There are five main ways a freelance developer can earn money by working on open source software:
1. Get Paid by a Company
The best known way to get paid for open source development is to work on software made public by a company. The biggest example of this is Linux, the world’s most famous open source OS. The Linux Foundation depends on developers that volunteer their services for a fee to fix bugs and patch problems in the Linux source code. Likewise, there are plenty of other companies—like IBM, Novell, and Mozilla—that pay software developers for working on their open source programs.
2. Charge for Extra Plugins or Features
Some companies want open source developers to create additional plugins and features for their products. It’s a marketing tactic as well as a great way to reduce labour costs. If you are skilled at creating addons, you can work with a company that pays for them. You can also create extras for open source software and accept donations. For example, the developer of the original adblocker extension for Mozilla Firefox, itself an open source web browser, accepted donations for developing the software.
3. Accept a Fee for Providing Tech Support
Most software needs continuous IT support to function well. Companies like to cut IT support costs by taking software out to the public and depending on open source developers to provide the support. Some even want open source developers to train staff and engage with customers. This may not be how open source development technically works, but it’s a way to earn money as a free agent.
4. Earn Money by Tweaking Code
Plenty of companies make software open source so that they can continue to have the code customised to meet changing demand. You can get involved with such a project to tweak code and get paid.
Making an IT Career out of Open Source Volunteerism
While you can use the above methods to earn money as an open source software developer, you will need to do some other things to build a career out of it.
For starters, you will need to continuously engage with open source development projects. Don’t completely stop working for free. The aim should be to garner recognition and attract attention to yourself as a skilled and dependable open source software developer. When you are well known as an open source software developer, the paid work will easily come to you.
You should also secure a trustworthy payment mechanism for yourself to accept money from people you don’t know. You can use a payment gateway like PayPal or OpenACH, an open source credit card payment gateway, to have your fees deposited. You can also link your local bank account for which you have credit cards registered. That way you can easily use your credit card online and have the bills paid on time.
Don’t hesitate to create a LinkedIn profile for yourself as well. Uploading your resume and work samples online will also help your profile attract a steady workflow.