One of the tenants of the Agile methodology for software development is the Retrospective. Essentially, the Retrospective is a time when a team can look back on the last body of effort, and ask themselves the some variant of the following three questions:
- What did we do well?
- What did we do not so well?
- What can we do to improve?
I must give some credit to Ben Griswald at JohnnyCoder.com for the idea, but it seemed quite relevant at the end of the year to apply the principle of Retrospective to my career as a software developer. Moving forward, I will try to post a Career Retrospective on at least a quarterly basis.
What did I do well in 2010?
My first instinctive response was simply “I stayed employed.” I don’t mean to suggest that I have a hard time holding down a job, but more so acknowledge that in the current economic state of our country, there are a lot of software developers who do not have jobs.
Further, in 2010, I got a new job, which means at the very least that I successfully stood out from other candidates in the eyes of my new employer.
I started this blog. As I mentioned in my inaugural post, my hope is that this venue will let me talk about the craft of software development and the things that are important to me in that space.
I launched a new product. The second iteration in the HomeSpot line is HomeSpot AgentPro, which went live this month. There will (hopefully) be many posts in 2011 about the outcome of that effort.
What did I do not so well in 2010?
I’ve been thinking through this question a lot. It’s always hard to find negative or imperfect patterns or trends in one’s own life. That I am willing to be introspective at all is somewhat significant.
In light of all my work in 2010 being as a contractor, I have found that I lacked a certain passion about the work to which I was contributing. Contractors are by nature transient, and while I did not hold any specific fear of arriving at the office one day and being shown the door, I always held the job to be temporary. When coupled with my own venture taking time in the evenings, I think the net result was my job became one of duty, not of passion.
I know that I cut corners in some of the coding and design I delivered. Sometimes it was due to time constraints. Sometimes because the client had simply not asked for what I felt was the ‘complete’ solution to a problem. But either way, as one who stands up to say that the craft of software development is rooted in quality and pride, taking shortcuts is not the pattern I want to find myself adopting.
What can I improve in 2011?
I have always considered myself a goal setter. Perhaps not always as much of a goal achiever as I would prefer, but it is in my nature to establish a target outcome and work to move towards it.
Thus, in identifying areas of improvement for the year ahead, I certainly look first to those spots where I didn’t do so well – namely passion and quality.
For Passion, I need to move past thinking of a ‘day job’ as a necessary evil while I do other things. Rather, every opportunity to get my hands on code – no matter who wrote it, what it does, or who it is for – should be embraced. I have always believed that all learning is cumulative – that we do not unlearn. Consequently, every chance to see, critique and improve code serves me as an education. Rather than trying to muster passion for my particular employer or client, my passion should reside in becoming the absolute best software developer I can be. From there the excitement about some client’s particular issue will inevitably flow.
Secondly, in as much as I have time and opportunity, I want to expand my particular skillset. The simplest approach this can take is learning a new language, but even within my area of primary proficiency (that being the .NET platform) I know there is a great deal more I can learn and master. One approach I have considered to this end is working towards earning a professional certification, not so much for the credential, but rather as a structured way to move towards mastery.
Finally, in 2011 I want to be more deliberate about participating in the larger community of developers, namely through participation in my local user groups, but also through venues such as Stack Overflow, Linked In Questions and other forums. Putting myself around other like-minded individuals will benefit me as a developer and professional in many ways.
And so, here’s to 2011 being a new year of quality, passion, community and progress.