Principal Systems Developer: That’s the position title of my new position, starting March 5th 2012.
Back in December 2009, the reasons I left my employ at the time were fairly extensive, the main ones being:
- Work on teams following agile processes
- Learn more about building high volume websites, as I felt it was basically the last area I hadn’t worked in to date in my career.
- Not have to juggle numerous tasks given by different directors, all having to be done ‘now’, as well as the normal responsibilities of Software Development Manager
- Work with a team more experienced with OO principals and in general more nerdy and less 9-5. More like me.
- Get more of the stuff I thought I loved: Hands on development, and less of management
- Work less hours.
I was immediately happy with my new employment and position. I had a good team of guys and following a good development process. Although I did for the first few weeks feel very much out of my comfort zone when it came to frameworks I had never used, such as ExtJs and even extensive Javascript. I had also not been exposed to the pain of cross browser support, having previously only developed web applications for Intranets on SOE’s that we controlled and that meant IE6.
What I did realise early on was that while I missed hands on development when I was managing, now I was developing with no other responsibilities and I missed the management, the architectural decision making, and working on overall department quality, engaging with customers more.
It wasn’t long before I was out of the team I thought I’d be working in, and working on or leading projects of my own, based on off-the-shelf CMS solutions including Umbraco, Kentico, and Sitecore. This was definitely something different, as prior to working here I’d heard the word CMS and knew it stood for Content Management System but that literally was as far as my knowledge went on the topic. I’d never seen a CMS back office before or knew how content documents were made or structured in a CMS, or of any of the capabilities a standard CMS should possess.
That made my first, and only, project lead challenging, as for a good while I really had no idea what I was doing let along felt I had the authority to make technical decisions for the team. The worst was that I lacked the confidence to voice the direction I thought we should go with particular implementations. In hindsight (it really is 20/20) my thoughts back then I believe were still correct, and now I’ve had a good 14 months with implementing systems in those three CMS’s I mentioned earlier, I’d not have changed my initial thoughts.
The Kentico CMS project was certainly rewarding insomuch that I was learning new things daily, even if it wasn’t what I thought I was getting in to. It was also challenging because the customer’s project manager and main stakeholder went on maternity leave the week implementation began, so our business expert was removed from our agile process and I was left to make decisions and assumptions instead. It became rather stressful and my days were back out to 10 hour days and my nights were spent worrying about work. A few of the reasons I’d left my previous job. In reality the position over the 2 years I worked it was pretty darn laid back and undemanding as a whole, so it balanced out. I knew that’s the nature of software development: Some times are flat out busy and others are quiet, too quiet.
The last 6 months of last year, while enjoyable as a work environment was not enjoyable on a professional level. I’ve spent my time doing basic HTML/CSS/Javascript work and little backend work. My only backend work, where I could get creative with patterns and software/class interactions was at home on my own projects.
Software Development is like any muscle: if you don’t work it regularly it atrophies. Thankfully, like a muscle, it only takes a short period of re-use to get back to the old performance level, provided the absence isn’t too great.
In December a workmate and friend resigned. Given that I was working in a team of one, my work life became rather solitary. It was rare to have more than a total of 5 minutes of conversation with everyone per day. I made the decision to actually look for more work in mid-December. The week before the Christmas break I submitted two applications, one for Software Development Manager and one for Principal Systems Developer.
For the Software Development Manager position I got through the first round of interviews , into the second round, which was to be a video conference with executives based in Canada, but after talking it over with my wife I withdrew my interest. The remuneration was only 20%-30% better than current while the workload was a 50%-60% more and I could expect to be overseas 3 months of the year. Still, it would have been an extremely challenging and reward role, and also extremely and probably too stressful.
The other job, of Principal Systems Developer, pays 3% less than now but the Super is 17% versus 9% and I get flex-time. I’m also leading teams again and working on business applications, rather than websites, which is where my expertise (and dare I say my heart) lay. On top of that it’s a permanent position within the government, so it is extremely safe. Now that my wife is pregnant with our third child, I need that stability. To top it off, my wife works the floor above me, so we can share transport to and from work: A good thing, particular as she grows in size.
I am sad to be leaving my current employer and I enjoyed the time I spent there. Overall I feel I’ve satisfied the reasons for starting in the first place, as well as made some new friends, and learnt a lot. I also think being around a bunch of other smart and passionate developers has changed me for the better. I do wish them all the best and great success.
What do I want from this new position?
I want to feel empowered again and I want to again feel passionate about software and about mentoring less senior developers in developing quality software. I want to engage with clients and I want to be responsible for great solutions to problems. This feels more like what I was doing and how I was feeling a few years ago. And I like it. I want to get more experience with large enterprise and with dealing with high levels of bureaucracy.
Update
Last night I had farewell drinks with the guys. I was surprised by the turnout, as I honestly didn't expect more than a few people. I'm also humbled by the number of guys that stayed on drinking into the night and the kind words everyone had to say about me. Sometimes I had wondered just how I was performing in job. I assume, like most people, I like to do good work and I like to know both when I'm not and when I am.