Challenges and opportunities: working as an in-house web developer

In the first part of this blog series, I outlined some of the benefits of adding a web developer to your digital team. In this part I'll cover some of the key differences for a developer working in house versus in an agency.

Working as an in house web developer can offer a different perspective from being in an agency. For an in house developer, there can be challenges and opportunities in equal measure, and I think an in house digital team can be a great environment to work in.

First up, it’s probably worth saying something about what I mean when I say developer. One thing about working in house is that regardless of your official job title, you’ll most likely be wearing a few different hats. Whatever it might say in your job description, there’s a good chance that some people will just get to think of you as the ‘web guy’ or girl and you’ll end up doing a lot more besides writing code. Let’s take developer in this instance to mean someone who’s looking after the technical side of the organisation’s digital channels.

Getting started

Development is probably not going to be the main focus of the organisation’s work. Someone has seen the benefits of recruiting an in house developer, but you might need to put in a bit of work with other teams to get them to understand the role. If you’re lucky, it might be an existing role and there would have been a predecessor who’s already fought some of those battles for you

As a developer joining an in house team, one of the first hurdles you might have to get over is getting a machine you can actually get your work done on.

Unfortunately, you might not have the latest shiny new Macbook to work with. To start out with at least, I’ve always been given a bog standard Windows laptop exactly the same as somebody in finance gets to do their spreadsheets on. If I was really lucky I might get a bit of extra memory thrown in, but that’s probably about the best I could hope for.

One of your first tasks will be making friends with the IT department. Getting them to understand why your requirements are a bit different from their typical office computer can take a bit of time, but is definitely worth it.

There’s a lot that could be said about where Windows falls short as a platform for development, but if you’re in a company that’s working in a Windows environment you might just have to suck it up and live with it. You can definitely make working on Windows a less painful experience though.

If you don’t have admin rights for your machine, it can get tedious pretty quickly if you’re constantly coming up against Windows’ user access control every time you want to do anything.

Luckily, it’ll be just as tedious for the IT helpdesk if every time that happens you’re on to them to let you do what you need to. They’ll probably tire of that pretty quickly and might begin to take a different view about whether or not you need admin rights to your machine.

I've been in the situation before where I've finally got a development environment up and running, having jumped through all of Windows’ hoops to get there, only to come in the following week to find that IT had made a remote change to all the organisation's computers which had completely destroyed the virtual machine.

If you’re able to have the conversations early on about what you need, and why you need it, it’s easier for your colleagues to understand the implications of any potential system changes. When you don’t have complete control over the tools you’re working with with, backing up early and often is especially important to avoid the risk any unpleasant surprises. The closer working relationships you can build with colleagues as an in house developer mean that when problems do come up, you’re much better placed to deal with them.

Stretch yourself

On the plus side, with all those challenges, being the only developer in a company has meant that my system admin skill set has come on light years. Coming from a design background, the command line used to seem a scary and intimidating place but after regularly fighting to get a development environment working reliably on a half locked down Windows laptop, it’s become a second home.

And that’s one of the great things about working in-house, especially as part of a small team. Your role can be really varied and full of different directions you can stretch yourself in. There are plenty of areas that you can learn about and improve in if you're interested.

You can code like the last 20 years haven’t happened - nesting tables within tables within tables to create some beautiful HTML emails; get into number crunching, analytics and A/B testing; and somebody somewhere will inevitably insist that you should be developing an app for some reason or other so if it’s not a completely hair brained idea you could even think about doing that.

All the while, you'll likely be juggling so many competing demands on your time that your project management is going to be up there with the best. And it'll need to be.

Add some variety

If you're in-house, you're going to get really good at managing and supporting your organisation's sites and systems, but you might feel as if you're missing out on the variety of work that someone in an agency has. The rate of change in our industry can sometimes feel overwhelming and if you're working on the same site or sites all the time, it can be especially easy to feel that you're struggling to keep up with the latest developments.

There might be opportunities in your everyday work to inject a bit of variety and mix things up a little, but you can always use side projects to expand your experience in directions that you can't fit into the 9 till 5.

As long as it's not interfering with your full time job, I've always worked in organisations that are happy for me to have side projects on the go. I think that's a really important factor in your own development. Ultimately, the organisation benefits from the learnings that come out of those projects, and having something a bit more varied to work on can reduce the risk of you getting disengaged during those times when the day job can feel a bit of a drag. Like all of these things though, it's important to make sure you keep a reasonable amount of life in the work/life balance, to reduce the risk of getting overloaded.

In the last part of this series, I'll cover one particularly important aspect of being an in house developer - the times when you need to collaborate with external agencies.

You can listen to the lightning talk which this series of blogs in based on over at Boagworld.