Personal KPIs

I’ve spent a lot time reading about daily habits and routines recently. Both Atomic Habits and Routine Machine strongly advocate spending a small amount of time each day to contribute towards your larger goals. I like the idea, after all as an agile geek I fully support the importance of transparency. Otherwise, how can we expect to inspect and adapt?

I mentioned some of my 2021 goals recently. Some of these are perfect examples where I must display if not daily, then weekly behaviour if I’m going to hit them. Donuts and Dragons isn’t going to write itself, I need to put words on the page day after day. My reading goal isn’t magically going to happen, I need to spend a little time each morning listening to audible or perhaps reading in the evening.

To this end I’m experimenting with a Personal KPI spreadsheet. In this spreadsheet I’m tracking various KPIs such as “Donuts Words Written” and “Time Reading”. I’m also tracking various KPIs around health and daily routine. Am I hitting Inbox Zero every day?

My spreadsheet gives me a daily score, however most beneficial I believe will be the weekly rolling averages. I don’t have to write a blog post every day, however I aim to write at least three a week. I don’t have to listen to my audiobooks every morning but I do want to make sure I’m listening for an appropriate time each week to hit my quarterly targets.

Am I on track to hit my personal goals this year? Photo by Lukas on Pexels.com

It may seem like overkill, but I’m hoping that this mechanism will help me stay on track for some of the big goals I’ve set myself this year.

What do you think? Is this overly complex for personal goals? Do you have a similar mechanism and how did it work for you? Let me know in the comments below!

Assessment Centres and Remote Interviews

I’ve written quite a lot over the last few weeks about interviewing and recruitment. Howevever there are a couple of other recruitment techniques I want to mention in an effort to prepare you.

The first of these is assessment centres.

Recruitment takes a lot of time and effort. When you’re recruiting a pool of people, for example a number of junior engineers all at once or perhaps an entire team. It becomes more efficient to combine these into a single recruitment event rather than conducting individual interviews with each candidate.

Assessment Centres are when multiple candidates are invited in together. Photo by ThisIsEngineering on Pexels.com

Aside from the time saving opportunities this also gives the assessors a few opportunities such as seeing how you can undertake a group task and how you interact with people througout the day. Far from being daunting these can be a lot of fun and often give you much more chance to talk to existing members of staff and compare notes with other candidates.

Many people see the other candidates in their assessment centres as the competition, and this is true to a point. After all, there are often only a limited number of vacancies available. However, you should be careful of this mindset. One of the reasons for putting candidates together is to see how they work together and engage with potential peers. If you’re in super competitive mode you’re not going to demonstrate your team work skills to their full potential.

Assessment Centres can take many forms and have many different components. When I’ve run assessment centres we’ve done a presentation to the candidates to tell them about the company and the role, tours of the office, interviews, a written test, a group activity, and a meet and greet where we’ve invited existing employees down to meet the candidates. Try to relax and enjoy the experience as much as possible. It’s a long and exhausting day – but you’ll get a lot out of it.

Another type of interview which has exploded since Covid-19 started rampaging across the globe is the video call interview.

Remote interviews have become extremely common since the global pandemic. Photo by Vanessa Garcia on Pexels.com

With isolation and social distancing the norm today it can be extremely difficult (and unwise) to meet candidates face to face. Because of this many companies are doing video calls to interview candidates.

The rules for a video call are not that different to a regular interview however I will run through a few of the basics for you.

  • Always arrive on time, test technology beforehand if possible and make sure you have a contact number for the company should IT let you down.
  • Consider what you’re wearing. A suit and tie is probably not essential for an interview at home but maybe a football shirt for your favourite team isn’t the best choice either?
  • Consider your background. Imagine you are being interviewed by the BBC (other news agencies are available). Make sure your background is clean and tidy, there isn’t a lot of noice, and you’re well lit.
  • Consider where your camera is. Many people have cameras on a second monitor but remember this is a conversation. You other person wants to feel like you’re looking at them, not staring off distracted in the distance (even if that’s where your screen is). Try to put the camera as close to the interviewer as possible and look into the camera on occasion. For more tips on Non-Verbal Communication remotely check out this post.

And that’s about it. Many of the basics for in person interviewing still apply, but don’t be surprised if you’re not invited to more and more remote interviews as time goes by.

Have you been to an assessment centre or had a video interview? What were your experiences? Drop me a message or comment below and don’t forget to subscribe so you don’t miss the rest of the series.

Introducing Donuts and Dragons

After all the positive feedback I recieved writing Code Black last year I’ve been working on something else.

For those who don’t know Code Black is a business parable novel for DevOps techniques. In other words it’s a story, about a team at a failing IT company who embrace modern software development techniques to produce higher quality software in a much more efficient way.

Writing a book is not easy, it’s never turned into a best seller (although who knows, this post may go viral!) but I enjoyed the process and I learned a lot putting it together.

Deciding to push myself once again I’m dusting off my keyboard and writing Donuts and Dragons.

Once again Donuts and Dragons is a story, this time about Megan who joins a team who are working to develop the next best selling game. Instead of DevOps I’m focusing on agile techniques.

I’m publishing the story on LeanPub, the site (in a very agile manner) encourages you to publish early and often. The word count is going up, slowly and steadily as a first draft. As the story is very much in the early stages I’m not charging for anyone who wants to read it and provide feedback.

As I mentioned in my recent goals post, I’m hoping to finish the book in 2021. To do this I’m hoping to have the first draft completed by June and then I’ll have plenty of time to proof read and listen to your feedback. Why not have a look at what I’ve got so far? I’d love to hear your feedback!

Is The Company Right For You?

I’ve written a lot over the last few weeks about preparing and applying for roles, especially for the junior and aspiring developers who are entering the market for the first time. However, what I’ve not really covered is whether or not you should accept the role you’re offered.

Whether or not to accept a role may not be a straightforward decision. Photo by Armin Rimoldi on Pexels.com

There’s always a balance to be struck when that first offer comes. Ideally you want to have a few to choose between. However, personal circumstances may mean you really do need to take the first offer you get but I want to talk a little about what to look for when deciding whether to accept an offer or not.

Pay, obviously is a factor. If you are presented with one offer that is significantly more than another or if the increased cost of the commute would mean you can’t actually afford to take on a role then you should never feel pressured into it. There is sometimes room for negociation here (see my previous post on negociating salary), but it’s always better to set a clear expectation up front than to have a disappointingly low offer.

The next aspect, especially for people new to the profession is the confidence they have in the team, the company, and the hiring manager. For many young people entering a full time job, especially one as technically challenging as software development is one of the biggest challenges they’ll have faced so far. But it isn’t one they face alone. The responsibility for training and onboarding any new employee lies as much with the manager, team, and company as it does with the individual. No one should be thrown at a job, especially a junior one and expected to “get on with it”. They’re going to need help. What you need to establish during your application process is whether you have confidence that the company have the willingnenss and ability to invest in your over the first few years of your career.

Is your hiring manager someone you feel you could go to if you were struggling or worried about your performance? Have they discussed how they plan to train you? I’m encouraged when someone asks what support there is at the company to help and learn, it shows self awareness. It’s not a sign that the person is too inexperienced and I shouldn’t hire them!

Consider asking questions like:

  • Does the company have much experience hiring junior developers straight out of university?
  • What sort of training plan do you have in place for new starters?
  • When do you anticipate I’ll be a fully productive member of the team?
  • Will I be assigned a mentor for when I get help?

When you’re being interviewed you should always be asking yourself whether the people interviewing you are people you trust to place the next few years of your career with.

Do you have any suggestions of red flags you should watch for when deciding on a company? What advice would you give for someone looking for the right fit? Post in the commends below and don’t forget to follow the blog so you don’t miss out on the next post.

Atomic Habits Book Review

This morning I finished listening to Atomic Habits by James Clear. I picked it up after being thoroughly impressed by John Lamberton’s Routine Machine.

Atomic Habits is a different book, more granular and if you’re interested in personal productivity then it’s a good read.

Atomic Habits: An Easy & Proven Way to Build Good Habits & Break Bad Ones:  Amazon.co.uk: Clear, James: 9780735211292: Books

In the book James first sells the value of habits, discussing how small incremental changes each day are vital to achieving major results. Then he moves on to deconstruct the various parts of a habit including Cue, Crave, Response, Satisfaction. In other words something triggers our habit, then we develop a craving for something, we act in a pre-trained way to satisfy that craving, and gain satisfaction.

In a positive habit this may look like:

  • Every morning when I get up
  • I want to clear my head
  • So I meditate
  • And feel better afterwards

However, in a negative habit this could be:

  • When I’m bored
  • I crave entertainment
  • So I open social media
  • Which entertains me

James then talks about how to hack these habits by eliminating cues, changing rewards, and building commitments so the habits you do want to form stick and the ones you don’t are broken. It’s good, sensible stuff.

As I mentioned above there’s a LOT of crossover with Routine Machine, however Atomic Habits goes far more into the techniques for forming and breaking daily habits. In his book Mark Lamberton focuses on how to point these in the direction to achieve big things. I see the two books as a very valuable pairing because, if I was to raise a criticism with Atomic Habits there’s not enough pagespace dedicated to creating structure so habits point you towards your longer term goals (although the idea of reinforcing identity is a very good one – see “Habit 2” of 7 Habits of Highly Effective People).

I listed my 2021 goals in an earlier post and I think there’s lots that can help me here. Specifically I want to work on the cues and immediate satisfaction of my reading, writing, and blogging. Perhaps putting together a calendar so it’s very obvious which days/weeks I’ve missed.

Have you read Atomic Habits? What did you think of it and have you encorporated any of it’s advice into your daily routines?

Talking to a Recruiter about Recruitment

I have been lucky to work with a number of recruiters over the years. They provide an essential service advertising and pre-screening candidates who come for the roles I’m looking for.

I recently discussed this series of blog posts with Matt, a friend of mine at 4IT Recruitment and he was keen to offer his advice for people looking to get involved in the industry.

Recruiters do a great job advertising roles and preparing candidates for interview. Photo by Polina Zimmerman on Pexels.com

I wanted to know more about the work that Matt and his colleagues do between getting a CV from a prospective candidate and brining them to my attention.


What makes a candidate’s CV stand out to you?

A Simple layout – Name and contact details at the top and easy to find’. Don’t use fancy boxes or colours and there’s no need for pictures etc (unless it’s for a UX role). You should include a a brief but non-generic profile at the top of the page with a bit of insight into your skills and experience. Consider adding a technical skills matrix right at the top where it’s really visible and always start with your strongest development language at the top.

We like to see projects you been involved in and where you used your skills, what methodologies you used, any associated technologies (e.g. if was a full stack role say that it was). Universities and schools should go at at the bottom with hobbies – for graduates you should put all the experience you’ve gained from university modules at the top in place of professional experience and start with any experience you have. Always include details of any placements or work experience opportunities you’ve had. Include details of the technologies you’ve used in the roles.


What advice do you always give a candidate before an interview?

Always research the company and understand what service/ product they offer before you go to speak to them. Review the job spec if you have one and think how you can speak about your skills with regards to the criteria for the role.

Talk about what you have been responsible for delivering personally, rather than listing the achievements of the the wider team and use as many examples with how you have used your skills in the past in ‘real life’.

Try to relax…it is as much an opportunity for you to find out about the company and role as the other way around.

Remember to ask the company questions about the role and about current staff… Why is the best developer you have the ‘best developer’ etc. what do they bring extra than all others to the team?


What do you wish more candidates knew when they went for an interview?

Candidates should always remember that hiring managers’ time is very limited so they should try to give detailed answers but stick to the point and then move on.

You only get one chance to make a first impression so don’t be afraid to be yourself.

Don’t be afraid to ask questions!


Never be afraid to ask for advice before going for an interview. Photo by mentatdgt on Pexels.com

Matt has given lots of great advice for anyone coming to an interview. If you’d like to get in touch with 4IT you either via LinkedIn or email.

Do you have any advice to give candidates preparing for their first big interview? What have you found that works for you – drop a comment below or contact me on Twitter. Don’t forget to subscribe so you don’t miss next week’s post!

Focusing Your Time With Forest

I recently discoved a fantastic app.

Like many people the constant bombardment of notifications, messages, emails, and reminders can be overwhelming. Our brains are wired to give us a little shot of dopamine for every “Like” we get or each time someone sends us a message. The most addictive mobile games capitalise on this by setting short terms goals staggered through the day which encourage us to pick up and play over and over again. It’s fair to say that it turns us all into a bunch of phone zombies.

Mobile phone addiction is real and I’m a sufferer! Photo by Zen Chung on Pexels.com

Knowing I’m especially guilty of “just upgrading that building” or “just reading that email” while I’m trying to work and spend time with my family I was curious when I discovered Forest.

Forest is well aware of all those little dopamine triggers but uses them for good, not evil. The premise is simple. You select how long you want to put your phone down for and plant a tree, if you leave the forest screen to use social media, read your email, or look at pictures of cats then your tree will wither and die. The more successful times you leave your phone alone the more gold you earn, the more trees you can unlock, and the more real life trees which will be planted because of you.

It’s sneaky, but it works. I’ve written this blog post without looking at my phone once (well, except to capture the screenshot). Within a few days I found myself avoiding picking up my phone to answer calls or take photos during my Work or Family time. A far cry from when I’d jump at every text message to reply immediately.

Do you already use Forest (or something like it)? Do you have any other tricks for helping you focus and avoid mobile distractions?

Negotiating Salary

While we may all enjoy our jobs being paid is kind of the whole point (don’t say that in an interview). But it’s extremely hard to know where to pitch when applying for a job. In this post I want to discuss the best approach to talking about salaries.

Let’s talk about getting paid. Photo by Karolina Grabowska on Pexels.com

When a hiring manager posts a job they usually have an upper limit or a salary band in mind. This is hard fought for in a budget conversation. The recruitment agents are usually aware of this figure.

My first piece of advice is to make sure your idea of salary and the hiring managers are aligned before you go into an interview. The reason for this is simple. You don’t want to waste your time (or the managers) if you’re applying for a role which either doesn’t have the budget you’re looking for or is offering to pay far above what you’re looking for (a good sign you’re not experienced enough). Going for an interview often involves taking a day of holiday from a current job or at least taking on some kind of expense. A quick (but sometimes awkward) conversation up front can avoid that.

Next up, there’s a little game recruitment agents (and sometimes hiring managers) like to play. They will often ask you what your current salary is and what you’re looking for. This is often very beneficial all around, it helps them gauge the current market rate for someone with your skills and will help make sure that you’re both looking in the same ball park (the same as I spoke with above). However, if you are being underpaid at your current role this can work against you. If I’m on a low salary and ask for a £20k pay rise I could well come across as greedy or over ambitious. Everyone wants a pay rise when they move roles, but don’t feel you have to give this information away if it will make your application less credible. It’s perfectly fine to say something like “Not enough – I’m really looking for £X”.

Which is where the next point comes in. Do your homework. Many roles don’t advertise the salary expectations on the advert, this is to avoid sharing with internal employees and disclosing other people’s salaries. However, it’s also very frustraiting for the applicant. Especially when one company pays one amount for a Senior Developer and another pays something completely different. Use tools like LinkedIn’s Salary Checker and to get an expectation of what a role is likely to pay. Be aware, this will change vastly by where the job is based!

The salary for a role will vary from city to city, even more from region to region or country to country. Photo by Karolina Grabowska on Pexels.com

There are a few situations where you won’t have a lot of flexibility on salary. If you’re applying for a role in a very structured organisation the salary bands may be set with no room for negotiation. Also, if you’re one of a number of new starters (for example in a graduate scheme) then the salary may be fixed. After all if you’re hiring twenty people to do the same role at the same time it would be highly inappropriate to offer one person more money.

Salary negotiations are not the easiest discussions to have but hopefully I’ve provided some insight and advice. Please get in touch or add a comment below if you have any questions and as always please subscribe and then share this series with anyone you think may find it useful.

The Advantage Book Review

When I saw a copy of The Advantage on the shelf at the airport I picked it up straight away. I read Five Dysfunctions of a Team a few years ago and considered it leadership gold. Learning about organisational health from the same author, sign me up!

I’m disappointed to say that for me, The Advantage just didn’t hit the same high notes. Despite only being 216 pages the book took me around eighteen months to complete and that’s simply because I wasn’t engaged and I felt I had to force myself through the final few sections.

The early part of the book recovers a lot of the same ground as Dysfunctions, I have no problem with that. Creating a leadership team who feel safe and can operate together as a team is no doubt a key part. Then we moved onto organisational values, both desired and acididental. I found that part quite interesting but when we moved onto creating and reinforcing clarity I drifted and drifted.

It’s quite possible I missed the point, the book is highly rated on Goodreads so many people have clearly got a lot from it. Unfortunately, this won’t be one I pick up and re-read again in a hurry. I will however go away and try to define my teams’ values – I grant, that’s a very valuable exercise!

Have you read The Advantage? Do you disagree with me? Let me know either on Twitter or in the comments, I’m always happy for someone to point out something I’ve missed!

The Interview

The interview is the most famous part of any job application process. Some senior jobs require you to go through two or more interviews but nearly all roles require you to sit down face to face with two or more people and answer questions. Even in these socially distance times when interviews are being conducted remotely it’s still an important skill to master.

The internet is full of interview advice (some of it good) so I’m going to try to approach this slightly differently and describe it from a hiring manager’s point of view.

Knowing what the interviewer is looking for goes a long way in an interview. Photo by Alex Green on Pexels.com

I’ve run through CVs and I’ve selected a short list of candidates I want to speak with. I may have had a few phone conversations along the way. Personally I only have two or three people on my interview list at any one time, different people may have different styles here but if I find someone I want to make an offer to I don’t want to have to wait while I interview ten other people before making that offer. I’d rather have a pipeline of candidates coming through the process knowing I can stop and offer whenever the right person comes along.

There’s a lot of time and effort invested from both sides for an interview (usually a good half a day for even a one hour interview) and you may be asking the candidate to travel and take time away from courses or work so I don’t invite someone in on a whim, I only invite people I believe could fulfil the job’s requirements.

Let’s start with the obvious stuff. Don’t be late. I don’t care if that means you have to sit in a carpark for an hour. Don’t be late and don’t get lost. Scout out your route to the interview location beforehand if that helps, if you’re making a more substantial trip then make sure you leave enough time for Murphy. If you are unavoidably delayed then call ahead and get a message to me. Trains break down on everyone, a professional will get in touch and let me know rather than leaving me sitting in an empty meeting room by myself. Believe me, that’s not a good way to make a great impression!

What to wear? I’m far from a fashion guru so I don’t want to give bad advice here. However, over the last few years I’ve been a bit less formal with my dress when I’m being interviewed (in other words I’ve lost the tie). However, I still wear a suit. The best advice I can give is dress how you would if you were representing the prospective company to a client. You want to be smarter than regular office wear but you’re not going to a black tie event. Personally I’d never wear jeans.

Try to dress how you would if you were representing the company at a visit to one of their clients. Photo by mentatdgt on Pexels.com

You’ll most likely be interviewed by two people. This is for a couple of reasons but the most important is to get two different points of view. Don’t try and work out who the decision maker is, if they’re worth working for they’ll take their colleague’s view very seriously. Address anwers to the person who asked them and (I’m sure this is obvious) be polite and repectful to everyone you meet.

In terms of the interview itself I usually try to start simple. I want the candidate to relax and lose a few of the inevitable nerves. I usually ask something about what you’re currently studying or what you’re working on. Remember that I’ve read your CV. Don’t go overboard here, don’t bore me but tell me the interesting bits. Try not to turn a five minute question into a twenty five minute one because of nerves!

At some point early in the interview I’ll most likely describe the company and the role. Again, I’m expecting you already know most of this so the point of this is to give you a chance to ask any questions and to engage in a little light conversation before we move onto some of the more technical stuff.

There will inevitably be some questions coming. These usually fall into one of two camps, either they’re competency questions or they’re skills question.

Skills questions are designed to assess your knowledge in a particular technology. For example, one of my favourites for a C# role is to ask someone the difference between an array of strings, a list of strings, and an IEnumerable of type string. This isn’t an easy question, I like it because a junior will give me one answer and a much more senior will give me another – but they could both be correct. However, the real question here is what to do when you’re faced with a skills question you don’t know?

What can you do in an interview when someone asks you a question you don’t know the anser to? Photo by Andrea Piacquadio on Pexels.com

That’s easy. You should simply say you don’t know. Or (assuming it’s true) tell me that you are having a mind blank and can’t remember. We’re engineers, we’re not search engines. We look things up and use intellisense. You may know more about garbage collection than I do, I may know more about IoC than you. The point of the skills questions are to get an idea of your technical strengths and weakesses. I don’t want to hire someone who will simply doesn’t possess the skills I require of them. For entry and junior roles I’m assuming you won’t know everything, it’s ok not to now!

I’m sure it goes without saying, but please don’t try to bluff me. Not only will it not work (I’ve hired a lot of engineers) but it won’t help, all that will happen is you’ll find yourself in a role which won’t suit you.

The second type of question you’re likely to encounter is the Competency Question. A competency is something like Problem Solving, or Personal Development. You can often work out which of these you’re going to be faced with by looking at the job advert. If the job description says that I’m looking for someone with A Proven Ability to Learn, Problem Solving Skills, and Resilience then there is a fair chance I’m going to have a question for each of those asking you how you’ve demonstrated them in the past.

For example, if I may ask you to describe a problem you had no idea how to solve and how you overcame it. Or I could ask how you’ve recovered from a severe setback. These are not easy questions to answer but with a little up front planning you can think of the answers you’re going to need through well before the interview. The best answers give a good example and don’t waffle. For example if I was asked about a problem I didn’t know how to overcome I could describe who I sought advice from, or how I wrote down fifty ideas and selected the best five, or I could talk about the time I needed help with my disseration and I asked my professor for advice.

It’s important to note, especially with junior roles that I’m not expecting you to be able to walk in and do the job. What I want you to persuade me is that if I made you an offer you’d be able to grow into the role. That’s why these questions are really important. Fail to prepare at your peril!

Most interviews for junior positions will last around an hour although some may last longer, especially if they involve technical tests (which I’ll cover in a future post) or form part of a larger assesment centre (again, hopefully a future post).

Towards the end of the interview I will usually offer the chance for the candidate to ask me any questions (although there’s no reason they can’t raise them before then). Honestly, I’ve heard them all. My suggestion is that you focus on questions about the role and the company and show interest in the opportunity. For example “Can you describe what the team are working on now?” is a better question than “How many days holiday do I get?”

One final point, despite what you see on TV it’s very rare to be offered the role in the interview. Don’t lose faith if it takes a few days.

I hope this has been of some help. Please feel free to get in touch if you have any questions. What are your best suggestions for good interviews? Remember to subscribe and follow me on twitter so you don’t miss out!