Key basic points to be a good developer

There is this notion in our developer circle that there is this person call super developer that knows every single thing that is to know on how to solve a problem, if you care to dig further you will find that same person does not know all that you think he/she knows. I’ve come across these kind of individuals in my professional life, initially I thought the same like others that this person knows a lot of things but after few conversations and debates with him I notice that he does not know the depth of things we were debating about, he just know the skin. Apparently a lot of so called super developer knows a lot from reading but lacks the experience needed. I’m a very strong believer that in order for you to become a good developer there are few things that you need to have:

1. Passion – this is the first and foremost important thing that you need to have in order to succeed. You must have this trait in order to stand out of the crowd, this traits exist in all the well known open source developers in the world like – Rod Johnson, Rob Synder, James Stratchan, etc. These people are not super developers they don’t know everything there is but because of the passion that they have they want to learn something new and able to come out with something spectacular that are of benefits to other people.

2. Smart – you don’t have to be CUM LAUDE (no pun intended) or have a GPA of 3.8-3.9 to be smart. This topic is very subjective but what I meant by smart here is that an individual will be able to complete a task regardless how long it takes, or to come up with an idea or solution that can tackle a problem. Each one of us are smart nobody is stupid, it’s just a matter of understanding how you understand yourself and your strength and build on that. All developers have their strength and weaknesses, take myself for example – I suck big time in UI design, but I can test your UI as a user and try to improve it.

3. Sharing – in our industry we learn by sharing there is no way you will be able learn everything without sharing, the more we share the more we learn and the more we learn the more smart we become and the better we will be as a developer. Sharing can be anything from sharing tips and tricks with your fellow developers all the way to developing code or creating documentation for your favourite open source project. The easiest way to share and at the same time learn things is to get involved in your local user groups, join a few user groups that you can learn from outside your domain – for example if you are a Java developer join a database user group (eg:- Oracle, MySQL) where you can learn more in detail about database architecture, performance, etc.

4. Practise – software development world is about experience and experiment, the more your experiment about things the more experience you will be able to gain. Back during the days before internet most of the old timers we do our own practises with bunch of friends to create something to practise our skills and knowledge, but now anybody from high school kids to ol’ mainframe developer can just go to the ‘net and start practising as everything is now available easily on the ‘net. Keep on experimenting and see if you can use something useful for your project at work or even for your own personal pet project.

5. Time – spend your time wisely and plan things accordingly. Time is something that you cannot buy, if you can buy time let me know I’m willing to fork out money for it. Developers who have family (including myself) we are in dire needs to really sit down and plan things properly, but sometimes things happen beyond your control, but nevertheless it gives us an insight what we need to achieve and how long it will take. I’ve seen developers who does not have any family commitments really waste their time doing things that has less importance compared to learning something new for their work/career, and that same developers tell me that he/she wants to be an architect in 3 years time, well my answer is Good Luck !.

The above are the main key basic points that can help you guide to become a good developers. Don’t thing that everything is easy and you don’t have to invest in anything, like any other thing in life if you want to achieve something you have to invest in something, and in this case you have to invest in yourself and get the return on it as soon as possible, as time is ticking and you are not getting any younger.

4 Comments so far

  1. Eduardo on September 29th, 2008

    You are totally right in your post!
    Check out this post about the same matter that may complement your one:
    http://www.inter-sections.net/2007/11/13/how-to-recognise-a-good-programmer/

  2. Tranquiliser on September 29th, 2008

    Totally agreed. Good post.

  3. admin on September 29th, 2008

    @Tranquiliser
    Thanks appreciate your feedback

    @Eduardo
    Your blog post was spot on

  4. Selva on September 29th, 2008

    Nice post.

Leave a reply