If you’re going to hire in a freelance marketplace, you have to remember that you’re not only an employer, but also a project manager. There’s nothing more important in a project than visibility. Without visibility, you will not know where you are with your project and this leaves you extremely vulnerable! You will also have almost no way of managing people without this precious visibility.
That’s why Github is the most important thing for a new startup when building an app via a freelance marketplace. Here is a handy list, in case you are unconvinced, of 10 of the best reasons to use Github.com when using a freelance marketplace.
1. Know the results of your freelance developers, daily and in real time.
What’s great about Github is that you can look and see who has modified the code on a day by day basis. Just by reviewing your commit history not only can you see if they are working, but you can judge the volume of work as well.
Truth is, in an freelance marketplace there’s no way to know how effective your hires are performing. It’s not enough just to take screenshots or record hours as many marketplaces tout. What you need to know is how much effective code is hitting your server. The problem with taking screenshots is that you just don’t know if your freelance developer has taken 4 hours to learn or 4 hours to build. Github allows you to look deep. For example, you might learn that that the last 4 hours produced only 4 lines of code. This obviously would raise many red flags and possibly alert you to a skills issue. With visibility into the actual code that is being applied to the server it cuts out all of the ambiguity out of what you are actually spending your budget on!
2. You don’t need to stay out of the kitchen!
Chances are you might know a little CSS or perhaps even some code. If you’re like me, you know just enough to get yourself in trouble. I hate waiting for other people to fix things and so I am always tweaking the front end! Github allows you to do this safely! The great thing about Github is not only can you track your employees but you can also track yourself. If you make a mistake than it is just a simple click of one button and you roll back to a time before you screwed things up. What’s better is that is your freelance developers can also review your work and let you know if you’ve made a mistake.
3. Don’t hire them if they don’t know Github
Today, Github.com is the quintessential authority on retrieving source code for open projects. Any freelance developer that is not currently a member of Github.com is not worth hiring as it demonstrates a real lack of professional proficiency! More importantly they should know how to install Github on the server. This is not a difficult task for somebody who understands and knows code. In fact I, don’t know any code. But I was able to Google and get the proper bash to install it on my own server. This is a great way to screen out serious freelance developers from hucksters.
One thing I like to do is to give new hires absolutely no instruction on how to set up Github. I simply assign them as an authorized user of my Github project. Then I tell them to contact me at the end of the day when it has been set up. If they are unsuccessful I know to move forward. If not, I move on because this task will either demonstrate their ability to follow instruction, deliver work on time or be technically proficient enough to learn Git.
4. Freelance Developers don’t need direct access to your server
What’s great is that you don’t actually need to hand anybody the login credentials to your server. You can simply add them to your project on Github.com. Once they install Github on their local machine they can simply clone your project to their local machine. They work and make changes locally than simply commit and upload to Github automatically. With some simple web hooks Github will then update your server automatically. This makes it very easy to add and remove freelance developers or designers to your project.
If you don’t have Git installed on your server and you require your freelance developer to help you, then you can give them access to do so. They can also set up the hook to automatically update your server from Github. Once this is set up you can change your username and password to your server. Now you will know everything that happens on your server because it’s listed in Github. As well as there won’t be any questions as to who did what, when and why. See this tutorial on how easy it is.
5. Stranger Danger! Increase Your Iterative backups
The truth is the more backups you have the better. A good backup strategy might be to take a server images no less than once a week. Then run backups daily on the server. What is just totally awesome is that Github will back up on an iterative basis. It means that you can rollback any change right down to a single line of code.
Having all of your code changes sitting on Github is a great secondary backup to your daily server backups. Never rely on your freelance developers to do backups for you! You really need to do your homework and learn how to make backups of your server. However, Github is a great secondary backup so if you make any mistakes on your server your entire project will be sitting on Github.
6. Finally, a solution to documentation for the hack and run world of freelance
Let’s be honest, 90% of freelance developers in freelance marketplaces don’t provide documentation with your website unless you pay extra. Since most clients are not willing to pay extra as they don’t know the value of documentation. The nice thing about Github is that it is an entire history of development of your project. You can see exactly what was changed when and even have comments as to why. This is important when using a freelance marketplace because chances are you’re going to blow through several freelance developers during the course of your build or the life of your website. You are going to want to have your new hires get on board and get up to speed very quickly with your project. Github allows you to browse code extremely fast and learn the development history of your project.
7. Newbie clients (you) need help in finding that code
Most freelance developers will have an Internet development environment that can search all the files and find a piece of code. Unfortunately I have a Mac and I use coda which does not allow me to do this. But many clients also don’t have the ability to do this as they just don’t have an Internet development environment installed on their machines. So if the client sees something that needs to be aligned it’s very difficult for them to find out where that file might be.
With Github it’s so easy just to run a search for that CSS selector and have all the files that selector is in appear in the search results. Then by clicking on one of the results you can actually edit that file right there in your browser. This is very easy and clients who might not have an Internet development environment can modify strings, fixed typos and correct minor alignments quite easily.
8. Hiring multiple freelance developers
In a freelance marketplace it’s virtually impossible to hire multiple freelance developers. The reason is because there is no way for these folks to collaborate on any specific project. Maybe your regular freelance developer needs some extra hope help for little while in order to meet a stretch goal. You would be reliant on that person to do the hiring because if you did the hiring the coordination required to complete the project might not be possible. Github.com is a social media platform designed for collaborative development. You can simply create a branch for each one of your freelance developers. When your freelance developers commit their files to the branch you can simply merge all of your branches into the master branch. If there are any conflicts and code, Github makes it easy to identify and correct the conflict.
9. Wow, cost vs work volume by freelancer!
The great thing about Github is it allows you to go back over time and look at the volume of work performed by your providers. You can look at what you’ve paid and compare that to the number of commits to make sure that things match up properly. It’s just one more check when hiring people whom you have never met.
10. Creating a wiki
To tell your freelance developers to contribute to your Github wiki might be hard. However, you should be documenting your functionality in the Github wiki. The great thing about this is that you can spin your wiki into an FAQ for your website, instructions on how to use your website for users or simply a tool to help new freelance developers get up to speed quickly.
Github is the best development tool for freelance marketplace project management that has ever been created hands-down. Github has made open source projects and collaborative development easy. Yes, some freelance developers were resistant to it because it reminds them of SVN. SVN does stink. But Github is awesome. If you’re going to be using a freelance marketplace, Github is an absolute requirement to being successful. And if you take anything away from this, never hire a freelance developer from a freelance marketplace who does not know what Github is, is not a member of Github or refuses to use Github!
Github.com | Courtesy of author