Developers: You are part of the solution or part of the problem
August 15, 2009 Leave a comment
This entry came from a conversation I had with a friend today about the state of development. Part of the conversation was on out of work developers catching up on Oprah and another on how few books the average developer buys (a "best seller" in the computer world might sell 50,000 copies) and even some on how many developers just do enough to get by and never step out.
We got into this conversation because he asked if I could help a friend of his with a simple form. I fell asleep last night realizing I had forgotten and got up a bit after 1 AM wide awake with a "I forgot" conscience crisis. Byu 1:23 AM, I was back in bed with two versions of the form (DataSet and LINQ) returned. He stated something about how quick I could get things done and I stated:
In life, you are either adding value or taking it away.
This is like the age old saying "You are either a part of the solution or a part of the problem", but it fits nicely with development. Either you are doing something to improve the business you are in, or you are making it worse. When I first stated this to another friend, he answered “but what if I am simply leaving it the same?” Then you are making it worse, as they are paying you to get things done.
Let me explain. When you go to work, whether it is a full time job or a contact, you are being paid for something. If you simply leave things exactly the way you left them, and make no improvement, then the business has not really gained anything from your employment. Yes, they might have gotten work out of you, but you are probably way over paid if you have not added value.
Where I find this most true is when people take on a code base for “maintenance” and ignore the fact that the code is really bad. Rather than take a bit of time to understand the flow and refactor the code a bit, they leave it as is and simply bolt a few more parts on top of the application. This goes on through group after group of developers until someone finally comes along who takes it on himself to understand the code rather than simply bolt something else on it. this person finally makes a difference.
There are some people who wonder why certain consultants get paid so well while they are struggling. In general, it is either due to a lack of confidence or a lack of initiative to add value to the business. Once you get a reputation for adding value, the hourly rate goes up tremendously. You should make it your mission to always leave a place better than how it was when you found it. If not, you are simply part of the problem.
What can you do if you are not adding value? Either spend time figuring out how to improve yourself or pack up and go home. Here are some suggestions
- Spend time reading. Even if you only get one new thing out of the book, that is one technique you now can use.
- Learn to Google very well. There are so many answers out there at your fingertips if you will only learn how to find them
- Avail yourself of developer blogs. Use the RSS features in your mail program so you are alerted.
- Watch tweets from frequent bloggers. Many will let you know when there is something new you can try.
- Play with betas, albeit in a safe enivornment and not your production box.
- Practice code kata when you have downtime at work or, better yet, learn the business
- Find ways to give back to the developer community: open source, answering questions in forums, newsgroups and even stack overflow are great ways to cement knowledge and possibly even learn something new
- Take a moment to learn the code you are editing and figure out how to improve it. Sometimes management will not let you, but try to add value when ever you can.
- Donate some time developing applications/sites for non-profits. You will learn and give back.
- Don’t be afraid to leave a job where you cannot add value.
Someone asked me once if I would really leave an assignment I was not adding value to. The answer is yes. I left a contract once due to the fact I had already completed the work necessary to get the job done. I made sure there was an employee who could take over the management duties and left. I would like to say the manager was grateful, but it was a state agency and it was necessary to keep the position filled to ensure a higher budget the next year. Your tax dollars at work. But I still think I did the right thing. 🙂
Peace and Grace,