If You Want to be a Developer, Be a Developer

Be a developerA question I have observed on several forums (usually from a newbie programmer) is “How can a new programmer get experience when they cannot get hired due to lack of experience?” If you are first starting out and you are serious about being a developer, be a developer regardless of whether it is for a job or not. That is what a real developer is – someone who has a desire to code and learn and code more – regardless of the language or platform. Learn a language on your own time. Learn it deep. Don’t just read about it but practice it and not just what is in books or “samples” you find on the web. Define a problem and solve it – then do it again a different way. Read, research, and experiment. If you find yourself staying up all night, forgetting to sleep / eat so that you can solve a problem (also known as larval stage ) you have arrived ;)

When I applied for my first programming job I had already been a self-taught hobbyist for eleven years. I started in BASIC (every flavor and every platform I could find) and then taught myself C and then C++ then Java. I joined the Air Force at 17. When I was 19 I automated several of my more tedious job functions using Dbase II. The small scripts I wrote were adopted by a few other units and I won an award for my efforts. This experience I put on my resume at a later date. My first degree was not Computer Science but I found (after three years) that I didn’t like my first chosen profession. I took a few Computer Science courses for the fun of it and decided to find a job doing my hobby. I had two interviews. The first asked me to write some code, which I successfully did. For the second interview I had never heard of the Language (a 4GL called Natural). I was interviewed by the I.T. Director who had some doubt about my ability. I convinced him to let me borrow a book and give me two weeks. He agreed. Meanwhile the first position called and said they wanted to hire me but they had entered a hiring freeze. So I studied Natural for two weeks, sat down in front of the second hiring manager and wrote a short program in Natural. He hired me, albeit at a reduced rate. Within four months I was earning on par with the other developers.

You could look at my story and conclude I was hired with no experience but had knowledge. I would disagree. I gained experience and knowledge through my own explorations. When given the opportunity I applied this experience in a professional situation (my Dbase II scripts). Since I had spent time tinkering with various languages and programming scenarios, when asked to code on the fly I was able. When asked to quickly learn and then apply a language I had not worked with before I was able.

Don’t have experience because you can’t get hired because you don’t have experience (read it again ;) ) – Create or join an open source project. Better yet go home at night and create a program or set of programs to automate a process at work. Demo it to your boss and get him / her to adopt it – experience for your resume – you wouldn’t believe then number of programmers who get kick-started this way.

What makes a good developer? A good developer has well-honed instinct for solving software problems and a demonstrated desire to continue growing and learning. This is not something that can’t be taught but must be developed by the software developer over a period of time. How quickly this develops depends on the natural ability of the software developer and his or her desire to better his or her skills. How do you measure instinct? The answer is, you cannot, at least not directly. In “What Makes a Good Developer” I examine some traits that can serve as hints; basically someone with time and breadth of experience across languages and industries plus a demonstrable desire to grow and learn mark a good developer. To achieve this level requires dedication beyond working nine to five and earning a paycheck. It requires the developer to practice, research, and experiment.

This entry was posted in Programmer's Corner. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *

*


*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>