Why is it difficult to stick to estimates?

Estimation is a big topic and there are many posts to write on it, but first let’s address one confusion about Software Engineering estimates: Estimates are not delivery commitments Maybe that sounds daft or maybe it’s obvious but far too many companies that I talk to are asking their team to estimate in hours, make a deadline at the sum of those hours and then … Continue reading Why is it difficult to stick to estimates?

Dealing with legacy code

At a recent CTO meetup in Edinburgh’s CodeBase we covered the topic of legacy code. Given that this is a common topic and that we had some of Edinburgh’s brightest CTOs weigh in on the topic I thought it would be good to summarise the main discussion points. What is legacy code? We started with a discussion about how you would define legacy code. It’s … Continue reading Dealing with legacy code

How can we ensure fair salaries when growing?

As any company, especially a young one, grows it will have times when budgets are tight and times when they are not, people will likely be recruited in cycles and you will probably want to hire people from a great many different backgrounds. With that in mind how can you strive for fair salaries for everyone in the business? This breaks down into a few … Continue reading How can we ensure fair salaries when growing?

One final achievement for Kotikan

It’s been over a year since we sold Kotikan to FanDuel – it was an emotional journey to move on from what we had spent so many years building. And working in a team with so many great people too. I’m glad that most of my colleagues are still working at FanDuel – they even won another Webby Award this year! But life moves on. Even after leaving FanDuel … Continue reading One final achievement for Kotikan

How can we be agile but still have a plan?

This comes up a lot – usually because a CEO complains “My engineers say it will be ready when it’s ready – they can’t give me a date” or a Project Manager may be concerned that “With time, functionality or quality you can have only 2 – but we won’t flex on quality or functionality and the board need this feature on time”. Clearly these … Continue reading How can we be agile but still have a plan?

How can I improve employee retention?

Engineers are in high demand – it’s no surprise given that software is running more and more of the world every day. With competition for quality engineers being at an all time high it may seem inevitable that you will lose members of your team to better opportunities. To an extent this may be true but it does not have to be a regular occurrence! … Continue reading How can I improve employee retention?

The “I only know people who voted X” effect

Sadly one of the biggest issues with social media and the “relevance” algorithms is that we each only see (for the most part) posts from people who share our own views. What this means is that Facebook, Twitter and the like are (maybe indirectly) more in control of the campaigning than those who are trying to disseminate a message. This makes social networks a very … Continue reading The “I only know people who voted X” effect

What’s with this “20% time” gimmick?

Before pressing on with the fact it’s no gimmick let’s step back a minute to what this is. Google and others have notable had 1 day per week (their 20% time) set aside for every engineer or member of staff to work on a completely different project. Some companies have 10%, some put aside 2 days each quarter. Bottom line is that a vast number … Continue reading What’s with this “20% time” gimmick?