Cat out of the bag18 March 2015
Although I intended to keep it under wraps until the end of the month, I see little point in keeping it secret: I have formally accepted a job offer for a new company. As per usual the identity of my new company will not be publicised, but what I will say is that although the new company is bigger, the project I am on involves fewer and smaller teams. It is also a move back to the type of work I did at my prior (i.e. pre- New Zealand) company, rather than anything similar to what I am doing at my current one.
BackgroundWhen I started at my current company, the only thing I had in the country was the job offer. No accommodation and no bank account, both of which were an ordeal to sort out, which meant several weeks of living in hotels and B&Bs on the credit card. As a result I spent a lot of time writing about my thoughts, because in short there was little else for me to do. It was three months before I really established a proper base, and probably around another six before I really got settled in. My thoughts were therefore well-documented, although the somewhat pessimistic tone of the writing was hardly the fault of the company. I was in the process of building myself a new life at a time I was already mentally drained following the end of my New Zealand expedition, yet even getting basics sorted out was unnecessary difficult.
During the interview for my current company, what became apparent was that they made very heavy use of tools and procedures, something that was a stark contrast with what my prior company was like. Remembering those frustrations is what made me accept the offer, and it was clear from a very early stage that actual experience of the whole Agile/Scrum & Continuous Integration work-flow was doing me a lot of good, even though I thought many aspects over-rated. I did have a long-running concern over whether the actual development side of the job was sufficiently mentally stimulating, especially early last year when I was putting a lot of spare time into learning GTK# programming, but at that time I decided that a stress-free professional life is what I needed.
Time to goAlthough pin-pointing the turning point is not easy, in my mind it is nevertheless clear when several concerns I had been thinking about finally came to a head, and that was my annual appraisal. On the form was a section concerning how personal strengths could be of benefit to the company, and I came to the conclusion the only honest answer was that my specialist background in computer networking was not being used. The main skill-set for what I was doing was really system configuration rather than what I considered network programming, so background such as my Ph.D knowledge was basically going to waste. I simply could not visualise what I was doing at the company aligning with my intended career trajectory.
A big concern of mine was that I was running the risk of getting typecast as a Python DevOps programmer, which would make it very difficult to get back into low-level networking and C/C++ development. It was coming close to the point that I had spent more time away from my prior company than I spent working there, and for what I wanted to do staying at my current company was not chalking up much if any relevant experience. Before I got the offer, I suspected that my new company would probably be my last chance, which is why I accepted despite several significant disadvantages.
The financialsBack in 2013 one of my post-New Zealand priorities was to end the money-burn by getting back into work, and part of this was being less than adventurous in my declared salary expectations. Regardless of the rights and wrongs of this, it is now 18 months down the line, and research I did after my annual appraisal revealed how below market-rate I was working for. This was simply not acceptable, and the final straw was my post-appraisal salary view not taking account of this. If a small company operating in the depths of the credit crunch could give me a 7% rise and a 7% bonus after only 9 months, then it is a piss-take for a medium-sized one that has unfilled positions and a back-log of work to give only 4% and no bonus. Jumping ship got me 25%. No brainer.
One of the ironies of all this is that my current company was in the process of phasing in an entirely new appraisal system, but by then I had also developed the conclusion that if I was to maximise my earnings, I needed to fix the supply & demand mismatch between what I had to offer and what the company I worked for actually required. This is why I did not pay much attention to all the Python jobs that kept pouring into my inbox. In any case a naked attempt at a salary bump attempt would look too obvious, especially of the scale I was really after.
The new companyThe initial screening interview felt trivial even by telephone interview standards, to the extent that I suspect it was about filtering out dodgy agencies & complete time-wasters rather than an attempt to measure ability. Then again I was so rushed at the time due to having ran back to my flat my mind was probably playing tricks on me. The first part of the on-site interview was much the same with a somewhat chatty mix of company & role details, which then moved onto me explaining possibly controversial views on things such as Agile/Scrum vs. Kanban vs. Joel Test, although from my end I threw in various bits of information that Joe Average would probably not know. I only had a few questions, as all the things I really cared about seemed to be covered, and most of the questions I actually had were asked inline rather than at the end.
Later on the on-site interview turned into a grilling when the second interviewer turned up, although when it came to explaining a core part of my Ph.D I am not sure if it was planned inquisitiveness or actual curiosity. Either way it was a challenge as explaining it all to networking academics pre-graduation was challenging enough, never mind to a non-domain expert several years since I last even properly read my own dissertation. Towards the very end was when anything close to programming knowledge came up, and it was pretty much a question in finding out if I knew how C function calls are run by CPUs. I was also asked a question or two about performance of basic data-structures, although I felt it prudent not to mention that at my last interview, I was required to give average- & worst-case O-notation for custom algorithms.
Immediately after two hours of interviewing, I was given an on-paper set of C programming questions, and later that day I became convinced that what they were really after was what my C knowledge was like after I had been worn down. The first question was clearly about whether I knew the XOR swap trick (I did) which was probably intended to wrong-foot me, but the remaining ones were a broad cross-section of Unix C knowledge. It was probably a reflection of my mental state that I misidentified sequence points as inflexion points, and for a multiplication bit-shift I got the value wrong because I was thinking about corresponding bit values of the equivalent multiple. Oddly enough, my post-interview feeling was that I had not got the job, which was partly down to realising the mistakes I made on the test. Then again I was pessimistic in the aftermath of the interview for my current company. I deliberately try not to read post-interview body language, partly because by that stage I would likely be a bad judge anyway, but my anecdotal conclusion is that when interviewers try to end on a high note, it is often a bad sign.
Looking backBack in 2013 I had a different set of priorities. My current company's mode of operation is the complete opposite of what was in operation at my prior company, and my view at the time I joined was that the non-development aspects of the IT industry is what I needed to gain experience of. I had long-suspected Agile et al were over-rated, but now I have the experience to back it up. I also now understand what it is actually like to work in a regimented atmosphere, rather than being the lone wolf who is trying to introduce good practice against the flow.
However with my objectives obtained, I had to ask myself what I expected to gain from staying with the company, and I concluded that there was not a lot left that I was really interested in. The prognosis for my motivation was clearly poor, and there were a few days I felt my work ethic was on the slide, although it was very different to the burnout-induced motivation crash I went through at my prior company. Even though I was still a long way from questions about my performance coming up, I knew my heart was elsewhere.