Wednesday, October 23, 2013

Looking for a job as a software developer? Learn to use Git!

Over the last few years, Git has emerged to become the dominant source control platform in the software development world. Everyone uses Git, from small open source projects to large commercial endeavors dealing with hundreds of millions of lines of code. So you'd think that every software developer, especially those coming fresh out of university, would have a good, solid, complete, understanding of the technology.

You would have thought wrong.

Over the last few weeks, I've had at least 15 discussions with programmers who are  either just out of college or current in their final year. Of those 15 or so people, all of whom are going to graduate and end up in software development jobs, only 5 understood how to properly use Git and only 2-3 could tell me why they should use it over another 'source control' method such as FTP or Dropbox.

These are the developers who are going to be working in your company one day soon and they are going to destroy your source code backups because they have no earthly idea, in many cases, how to even do a basic check-in/check-out. These are the programmers that are going to lose their companies millions of dollars in lost productivity by blowing away source code and wasting other developers time as they learn, on the job, how to use a basic source control system.

Colleges: get on the ball! I understand that you can't cover 'everything' in your programs. But by not teaching your students some sort of source control, you are handicapping them and you are overburdening the companies they will end up working for with the task of having to teach them things they should already know. I'm not saying teach Git specifically, but teach something. Or, at the very least, impress upon them why they need source control.

Programmers: you will be the future of software development and on the tip of the spear of the coolest technologies of tomorrow. Your colleagues are going to hate you if you don't come to the job prepared with the skills you're going to need to be successful. I'm not talking a mild 'I don't really care for the guy' type of feeling. I mean abject and pure hate.  For the love of god, if your school isn't teaching you source control, take it upon yourself to learn it. Go to Amazon and buy a book, go online and read a tutorial, go to Code Academy and take the free course. Whatever you do, learn how not to destroy yours and others work!

This might come across as a bit of a rant. If you think it is, I invite you to revisit this blog post after your fresh new college graduate blows away your source tree that's been years in the making. You'll likely see it differently then.

1 comment:

Khorshed Alam said...

Hey, some of the people are here to light up your path, we will miss Joel, but you are still here. I am grateful. Do appreciate your advice. I want to talk you about Predictive dialer. Genuine 100 % free software (not illegal or stolen copies) comes in two categories: trial ware and free software. With trial ware, the interval of 100 % free use expires after 30 days or so. The main objective of trial ware is to get you to buy the compensated edition once you've had the chance to assess the product. Also get free software of Predictive dialer