Please describe your job! What does a Developer actually do?

So, I’m a developer, what does that mean? I make stuff. I basically write a list of commands to tell a computer what to do. Personally, I use a variety of languages on a day to day basis. Node.js or PHP for the server side programming, defining how a system might work. MySQL or mongo for database interaction, storing and retrieving data. HTML & CSS to define how visible content is displayed to the user, and javascript to define how the content becomes interactive.

I make all kinds of things, I’ve made mobile apps, web apps, websites, even hardware projects, mainly using Arduinos or Raspberry Pis.

Whereabouts do you sit within the organisation? Who do you report to?

My personal situation is very different to many, as I actually run the business that I work for. So I guess I report to our customers, they are the people I attempt to please. Fortunately I can’t directly lose my job, but I can lose our clients, which in turn could mean that I indirectly lose my job. Thankfully our customers are often very happy with the work we deliver.

In many situations a developer would report to either the lead developer, technical lead, or product owner, depending very much on what thing they are making, and what the situation is.

What kind of skills do you need to be effective in your role? 

The principles of programming are reasonably straight forward, it’s all logic and problem solving. Programming is basically an extension of algebra. You remember that whole a+b=c stuff at school? well yeah, i do that all the time, it’s just that the b, may be a ‘function’ which could be, b=x+y, c=b+a. Therefore c=x+y+a.

Contrary to a popular belief, programming is actually a very creative process. It may not be visually creative, but finding the most efficient solution for a problem is pretty creative.

So because I also run We Make Awesome Sh, I have had to teach myself various other skills along the way, including marketing, sales, and other ha ha business bits.

Tell us about a typical working day…

I work from home, which means I often work funny hours. You’ll find that there are a lot of developers that work better outside of ‘standard’ hours. It’s not necessarily because of the time of day for them, it’s mainly due to the time of day for others. Unfortunately during ‘standard’ hours, there are often many interruptions and distractions. While programming you are often trying to solve a large problem, you can’t just drop in and out of the problem, so it’s not a case of once the distraction has happened you can continue exactly where you were just before you were interrupted.

In the past I have heard programming being compared to that of a dream. You are focused 100% on the task at hand, someone comes along and disrupts you, it’s hard to get back to whatever it is you were doing. This is one of the main things non developers often don’t realise. They presume you can jump straight back in. Unfortunately it doesn’t work that way.

So for me:

9:00 wake up have shower get dressed etc etc etc

10:00 coffee, coffee, more coffee

10:01 emails.

10:30 more emails

10:59 log into our company IRC so that I can communicate with the rest of the team.

11:00 faffing about online, on the twitters, catching up on any tech news, read hacker news etc

11:30 more emails

12:00 “organising” emails, which mainly means turning my one inbox, into 5 inboxes, and still not getting any nearer to the fabled inbox zero

12:15 “meh, I’ve done nothing productive”

12:16 open development tools

12:17 “wait, what was it i was meant to be doing?”

12:18 open trello

12:20 start coding

13:30 bang head against desk, “WHY DOES THIS NOT WORK???”

13:45 consider throwing laptop out of window

13:50 spot typo, realise why it didn’t work

15:00 “oh crap, i forgot about lunch”

15:01 lunch at desk

15:05 emails, twitters, hacker news, repeat

15:45 “ah yes, i was meant to be programming”

15:46 start coding again

18:20 bang head against desk, “WHY DOES THIS NOT WORK???”

18:21 consider throwing laptop out of window

18:22 read over code and tweak

18:23 repeat above

01:00 finish coding

01:01 faffing about online and twitters and emails etc

02:00 bed

What kind of goals do you have? What are the most useful metrics and KPIs for measuring success? 

Goals is an interesting one, I’m not entirely sure what my goals are. My main one is that We Make Awesome Sh continues being successful, so that we can all continue doing what we enjoy doing.

Metrics and KPIs: shipping projects on time and on budget, making people happy, putting smiles on peoples faces.

What are your favourite tools to help you to get the job done?

My Mac. I struggle on other machines and I have it set up just how I like it.

I use Sublime Text for my coding, it’s a really simple extensible text editor.

Git. I couldn’t live without Git. Git is version control, it means i can make changes, but easily revert to an older version if i break things.

What do you love about your job? What sucks?

I love making things that other people enjoy. I honestly believe there is nothing better than putting a smile on someones face.

I would be coding anyway, thankfully I also get paid for it, I have a hobby that I get paid for… mental… *pinches self*. Yup, still not a dream.

What sucks? Annoying bugs that are often stupid silly mistakes that I have made. Oh, and technology, technology sucks.

How did you get started in the digital industry, and where might you go from here? 

I have coded in one form or another since I was young. I then studied Computer Science at Cardiff University, which gave me a better foundation on the principles of computer.

Where might I go from here? Wow, I have no idea. To be honest I am making things that weren’t possible only a few years ago. It’s one of the things I *love* about technology, it all moves so quickly, we have to keep learning new things.

Do you have any advice for people who want to work in the digital industry?

Keep learning, things change at such a rapid pace. Have fun, but then this relates to any job. You will spend the majority of your life working, you might as well enjoy it.

As Confucius once said (and I had to visit Google to check who said this): “Choose a job you love, and you will never have to work a day in your life.”

Which brands do you think are doing digital well?

I’ve always admired Red Bull, and its all-round marketing efforts. I think it is outstanding. But that’s not just across digital, that’s across everything.

I’ve also *loved* the latest Oreo campaigns. Especially the splitting machine…

I’ve always loved Rube Goldberg machines. When I was a kid I loved marble runs… hell, even now I love marble runs. One day I would love to make a Rube Goldberg machine, anyway I digress. Yeah Oreo, right now, it has got it spot on.

One of things we’ve been described as recently is content creators. I never really thought of it like that before, but it’s spot on. In this day and age, people don’t want advertising, they want cool content, brands splashed over it is fine, as long as the content is fun. There are still a lot of brands doing digital badly, far too badly.