Sunday, 6 June 2010

How To Build A Remarkable Career In Computer Programming

image I started to realize the importance of commenting on other blogs about a month ago. Since then, I’ve commented on many blogs daily and the result is my blog has more comments as well as I have more friends online and Oscar Del Ben is amongst them. I was a little bit surprised to read his posts about personal development while he is a programmer. This weird thought flew through my mind: how can a guy who uses the programming language more often than the human language write such great things?

In this post, he shares us his opinions about how to build a remarkable career in computer programming. You can find more about him at oscardelben.com or you can follow his personal development journey at freestylemind.com.

Programming can be a very satisfying job. Every day you have to solve new problems and challenges by creating stuff that others will use.

Unfortunately, the majority of programmers out there are trapped in working on the same old stuff every day, and don't have the opportunity to experiment with new languages and tools.

The problem with working with the same stuff every day is that you don't build much programming experience, and it may be difficult to upgrade your career. But that doesn't mean you can't. You can do many things to build a remarkable career in programming.

Learn

image New programming languages emerges every few weeks. Of course is difficult to keep track of all of them, but every year a few emerges from the crowd. The pragmatic programmers suggest to learn at least one new programming language per year, and they have been proven right. By doing so, you are constantly aware of what's new in the programming world and you have a great opportunity to sharpen you skills.

The trick here is to move outside of your comfort zone, for example if you are comfortable with Java, learn Ruby or Lisp, and if you are comfortable with Ruby, learn Erlang or Haskell.

Every time I learn a new programming language, I have to learn new concepts and understand a new way of thinking. It's difficult at first, but then it becomes easier and easier until it becomes second nature, and that's a huge advantage to have.

Aside from learning programming languages, it's extremely useful to also learn other topics like math or statistics. I'm not suggesting to go back to school or to buy expensive math books. You can start by taking challenges on websites like projecteuler.net and learn as you go. You can do this while you are learning your new programming language if you want.

Create

What do you do with all the things you learn? Simple, you create new stuff. For example you may create a new web frameworks, or a dependency tool for your projects. There are thousands of things you can create, and if you can't think of anything now, try to copy something that was built in another language, and do it better.

Share

Don't keep everything for yourself, share with others. I think I don't have to explain what open source is, but maybe you don't know that when you apply for a new programming job, is a big plus to be active in the open source community because the guys who will be interviewing you can already look at something you have done before.

Having a technical blog can also help, and you can use it as a learning log with time.

Conclusion

The fact that you are working in a job where you are not learning anything, does not mean that you can't learn new stuff in your free time. Learning new programming languages is difficult at first, but it pays huge dividend with time.

No comments:

Post a Comment