Overview of a Developer’s Career – What Software Development is not
As I mentioned in the first post, some of the people who asked me how to become a Developer gave me the impression of having the wrong expectations. To avoid disappointment, it’s a good idea to have a look at what not to expect from a career in SD.
It’s not a “get rich quick” career
IT seems has been in a state of constant growth for many years now, and it seems it’s only going to get bigger. The market offers plenty of opportunities for a skilled Developer, and, due to the high demand of such professionals, salaries are fairly high. However, you must not expect to become a millionaire. Even if you aim to become the best Developer in the world, you won’t become rich just for that.
If your main goal is making a lot of money, I’m afraid you’re on the wrong path. You should be learning business and marketing instead. In fact, the founders of Google, Facebook, Microsoft and so on were not such great Developers at all. What made them successful were excellent timing and business skills.
Of course, you can always learn those skills as well, but the hours in a day are limited and chances are that you will have to choose something to leave behind. The truth is: Software Development doesn’t bring money. Sales bring money.
It’s not always fun
There will be moments when you’ll ask yourself why you didn’t choose another job, or simply didn’t work in your parents’ farm, instead of dealing with yet one more frustrating issues. Even if you spend sleepless night to make sure everything is perfect, you’ll always have someone in the team who will screw something up. And that person may be you, since you didn’t sleep for so long. The best thing you can do is to accept that issues are normal, and be ready when they arise. Take it easy, your passion must not be a reason to destroy your health.
It’s not an easy discipline
This is probably one the reason why so many “Developers”, to put it clearly, suck. SD is complex and it requires you to have at least a basic knowledge of other fields, such as System Administration, Networking and Design. You then have to put the pieces together, and make sure they run smoothly. Even from a pure coding perspective, you have to learn best practices, know when to use them, learn how to do proper testing, and get used to the fact that you’ll work on the same thing over and over until they are complete. Finally, you have to cope with the fact that the only projects that you’ll ever close are the ones you’ll abandon. All the others will, hopefully, in constant evolution and you’ll work on them for years.
There would be much more to write about becoming a Developer, but I covered some of the most important points. At least, you should now be able to evaluate your priorities and see how they would fit a career in Software Development. If you think it’s your future, I hope I’ll keep having you amongst my readers and I’ll do my best to help you.
In my future posts, I’ll write about the concepts of working smart, constructive laziness and effort investment, from a Developer’s perspective. See you soon!