The new gig

In some ways it’s quite horrifying how little thought I put into my first two jobs.  The VIS advert in the university careers service newsletter jumped out at me purely because they were in Dundee and made software (my then girlfriend, now wife, lived in Dundee at the time).  I thought I’d go and take a look, and the “Brave” concept art around the place hooked me in.  Without that chance sighting, who knows what I would have done – not games, I think.

I then stumbled into Realtime Worlds because I wasn’t enjoying certain aspects of VIS, and I knew a few people who had gone up the road. It seemed the best option in Dundee, and we’d just bought a house so moving wasn’t that desirable.

I guess what I’ve described is a pretty common human problem-solving technique: go with a gut feeling, a local, adequate solution, and see how things go. Change your approach if it isn’t working.

But earlier this year, for the first time in my life, I decided to be a bit more deliberative about the search my next job.  I realised that it was time to move on, that I care passionately about what my workplace is like, and that I am not the kind of person who changes job too often.  I asked myself, “if I could work on any software project, anywhere in the world, where would I choose?”

I thought I’d share the process I went through for anyone who’s interested.

The company

I never seriously entertained the thought of leaving software development, but equally, I never wanted to restrict myself to games.  So I came up with three fairly general criteria that I could apply to any developer:

  1. Must produce truly world-class product(s) – recognisable “brand names”.  I know this isn’t necessary for me to enjoy a job – because I know I’d love to work for the right early unheard-of startup – but with a young family, the time felt right for something more stable.  Once I started to look at established companies, I couldn’t face the thought of somewhere whose product was anything less than excellent.  Sub-standard things irritate me deeply and I want to be proud of what I do.
  2. Must be known for being a good place to work – good culture, talented colleagues.  The people I work with, and the types of interactions I have with them, are what make me happy to get up in the morning and go to work.  And I need time with my family, so sweat shops are out, even though some of them do amazing things.
  3. Must be innovative and ambitious, technically and/or creatively.  In other words, the work itself must be interesting.  Otherwise, you could name some rather mundane places that satisfy (1) and (2) – perhaps banks, although I’ve never worked at one, so that may be grossly unfair.  As a specific example, I worked my university summers at Data Connection (now Metaswitch), and they matched (1) and (2) without really inspiring me to go back.

I did not limit myself geographically.  I was most likely limited by my own awareness and knowledge of developers, and perhaps in a variety of subconscious biases, but I tried to search as widely as I could.  I decided to be really picky on all three criteria, and came up with a list of about 10-15 companies to start off with (4 of them were game developers).

The role

The next question was, what do I actually want to do?  After getting semi-accidentally sucked into management at Realtime, I felt that I needed to make a clear choice between going back to programming, or committing to the management path.  I honestly found this a tricky question.  My heart instantly said programming, because I love it unconditionally.  But my head couldn’t help wonder what the other path might hold.  Maybe the possibilities for career growth make management a better long-term option?  And there’s always the classic fear of being an old programmer, articulated here for example.

In the end, I decided on an experiment.  I would apply for management roles with some companies, and engineering roles with others.  I figured the interview process itself would help me to learn about myself and ultimately make a decision.  As a general rule of thumb, I tended to go “management” for the really giant companies, and “engineer” at the others.  I did this on the basis that I’ve already done the thrown-in-the-deep-end-with-no-help thing.  It would be good to experience somewhere that provided clear structure, expectations and guidance to younger managers, and an opportunity to be mentored well.  So I created two drastically different CVs for the 2 roles, and sent my applications off.  What happened next was wonderfully illuminating.

Option A

So the first reply I get is for a management role with a company that shall go unnamed, inviting me to their first-round phone screen.  The questions are slightly unsettling from the start:

“Tell me about a product that’s not electronic or electrical in any way that you absolutely love and consider to be well-designed”.

Ok, um, panic!! … looking around me … ah, my Moleskine notebook is sitting in front of me with a list of questions to ask at the end.  That’ll do.  I manage to give a semi-decent answer about why it’s a well-designed notebook.  Phew.

“Now, consider how you might make use of electronics to improve this product.  Describe your design to me”.

Oh, shit!

Just nothing.  Totally blank.  I half-heartedly stumble through some ideas and the interviewer, taking pity on me, takes one of them and turns it into some kind of portable pen that could scan pages for transfer to a computer.  I admonish them for what is, frankly, a stupid idea.  Ooops!  They point out that it’s just an interview question and leave awkward silence for me to give a better answer.  Eventually I blurt something out about how useful it would be to have a wireless device that could help you locate your notebook if you lost it, if such a technology were cheap enough.  A bit lame, and a bit sci-fi, but at least somewhat useful.

An hour later and I can finally hang up the phone, pouring with sweat and totally on edge.  Lucy asks me why I didn’t choose our cots (we have pretty nice cots).  Built-in baby monitors, toys that make lights and sounds, temperature monitoring … the possibilities for naff but plausible electronics would have been endless!  Damn!

A week later, for reasons I cannot fathom, they let me through to their next round of interviews.  I start sweating nervously on the spot.  Here we go again …

“Describe the design of an iPhone application you’d like to make”.  Great!  I’m in the middle of creating an iPhone game for a bit of fun.  Launching enthusiastically into my game design, they cut me short.  “Could you choose something that’s not a game, please?”

[I can’t face the embarrassment of describing what I came up with.  Let’s just say I finished this interview even more of a wreck.]

Option B

The very next day, I have my first engineering interview.  At this point I’m pretty terrified of any kind of interview, so I start off more or less trembling.

“If I write an empty class in C++, how many functions does it already have?”

I can do this.

“If I add a pointer-to-integer member, and assign a new int to it in the constructor, what else should I do to the class?”

I can do this too.

“If I change this member to a pointer-to-array-of-integers, what changes should I make?”

I suddenly notice that I’m completely, blissfully, relaxed 🙂

“What happens to your code if the memory allocation fails during the assignment operator?”

Doh!  But easily fixed!

“Could you describe all of the casting operators in C++?”

In my sleep.

“What do I mean by shadow mapping?”

I love interviews again!  Ask me more!

And so on.

In short, after an hour of non-stop technical questions, I know I have to follow my heart.  The unnamed giant company call back and ask for another management interview, and I tell them to **** off (nicely), because I am, conclusively, an engineer again.

And the result …

The outcome of all this is that I’m now a software engineer at PDI/Dreamworks.  Working on film graphics seems like a good way to learn something new but also make use of what I already know.  And my 3 criteria are definitely met.

I’ve only been here 2 weeks, so for now it’s still pure excitement.  A considered opinion will have to wait.  But whatever happens, I feel good knowing that I explored my options as best I could.

This entry was posted in Uncategorized. Bookmark the permalink.

11 Responses to The new gig

  1. Chad Austin says:

    Fantastic story, and I’m impressed by how strategically you looked for your next role.

  2. Arttu says:

    Being proud of what you do is definitely important. I totally agree that sub-standard things irritate, and I hate if my employers products are not good quality. It’s never nice to hear people complaining some software and then admit that yes by the way, it’s one of our products. Takes the joy out of working for someone, I want to be proud to tell where I work, not feel sorry about it. Unfortunately this is not always the situation, of which I’m slightly surprised.

    Congrats for your new job and enjoy being an engineer! 😀

  3. FreakyZoid says:

    Really interesting article. I think a lot of people just kind of stumble from one job to the next without really thinking about what they are looking for themselves.

    Congrats on the new job as well.

  4. Sam says:

    Great post! Out of curiosity, does that mean you’re moving to the US or does PDI/DreamWorks have a Dundee office?

    • lukehalliwell says:

      Ha! If they had a Dundee office I might not have put so much thought into my job search!

      Notice the “PDI/” bit on the front. That means I’m at their Redwood City location – they’re proud of their PDI heritage.

  5. Weeble says:

    I’m interested to hear what your Moleskine answer was. I’m always on the lookout for good notebooks, and I can’t help but feel Moleskine is very expensive, but they can afford to charge that because all of their competitors suck. Moleskine is a well-designed product because:

    1. It isn’t destroyed when you put it in your pocket. (Tough cover; no spiral binding; cover is about the same size as the pages.)
    2. It isn’t painful when you put it in your pocket. (Rounded corners; even the hard cover ones aren’t rigid.)
    3. The pages do not fall out after you use it for a little while. (Good binding.)
    4. It is available with blank (i.e., not ruled) pages.

    All the other stuff – bookmark, elastic strap, funny little pocket, removable pages at the back – is really not that important to me. You’d have thought that it might not be much to ask for a product that doesn’t inflict pain or destroy itself, but apparently it is harder than it seems! You know, that reminds me of the conversation about what you want from a bug-tracker. You don’t realise all the basic things that you value in such a product until you have to use something horrid like DevTrack.

    • lukehalliwell says:

      I can’t remember exactly what I said at the time. You’re right though that just finding a product that does the basics reliably is often enough.

      The elastic strap is an important part of not getting destroyed, at least if you keep it in a rucksack. Every other book I put in there falls open, gets something wedged in the gap and then gets its pages mangled when I pack shopping in on top. The Moleskine survives my rucksack better than anything.

      I also like the paper a lot. I use a pen which generates quite a lot of ink, and it soaks through many notebooks. The ones it doesn’t usually have very thick paper. I like that the Moleskine paper holds the ink but is still thin, so you get plenty of pages. I get squared at the moment, I like drawing diagrams on that and it provides some guidance for writing too.

  6. Matt Doar says:


    Good landing! I’ve been consulting there for a while for JIRA work.


  7. sketchseven says:

    Read through your post with interest as I’m an animator looking to get a start in games – just wanted to stick a note on here to say huge congratulations on getting the new job.

    Also, Moleskine notebooks do have a certain something, the quality of the paper, the sturdy design, the little flap for keeping notes in, the history, the pedigree – by far and away my favourite notebook for carrying around with me. I have two; lined for jotting notes and scribbling out ideas, blank for just scribbling and rough sketches. Great little notebooks.

  8. Arttu says:

    Wow, thanks guys for highlighting the Moleskine notebooks. They seem to be just what I’ve been looking for. I also prefer blank paper instead of lined or grid, makes me feel free. 😀 And the paper must be of good quality. I don’t make a lot of notes, so price is not an issue.

  9. John Doe says:

    Your posts are quite pleasant to read. I even picked up a few tips. Looking forward to your upcoming posts. Congratulations on your new job.

Comments are closed.