Mistakes I’ve made in my career (so far)

For this Rails Girls London. It seemed like an idea (still not sure it was a good one) to look back on my career to date.



I’ve been doing this software stuff professionally for a while now. Cough, twenty years, cough. It hasn’t all been plain sailing. I thought listing a few of the things I would like to have done differently could be useful to other and as a reminder to myself.

Doing work for exposure
I’ve done lots of work for free:

  • Volunteering is rewarding and something I’d recommend doing if you have the chance. I’d include Open Source contributions with this.
  • Little projects to learn a new framework or language.
  • Things for family or friends.

But I’ve had offers to do work for people to “build my portfolio”. Call me a capitalist but I don’t think working on a commercial project for someone else for free makes sense. We can have a conversation around how much I’ll charge but zero isn’t an option.

Didn’t use version control
I wasted so many hours trying to get programs back to a working state after trying something that didn’t work out. Saving multiple copies helped. Once I switched to using version control those experiments became much less stressful. Once you add working with a team, version control is essential.

Not getting offers in writing
In interviews I’ve been promised profit shares, bonuses and pay reviews after six months. Every time these were not mentioned in the contract. I never saw them. Shock horror, contracts exist for a reason. It took a while to be comfortable talking about money and if I’m honest something I’m still working on it

Worked long hours
I used to be a game developer and worked long hours. Research is clear after about two weeks of extended hours your productively take a nosedive. You burn out and that isn’t a great place to be in. Agile talks about sustainable pace. I still do the odd evening but I’m much more mindful about the effects.

Not keeping my CV up to date
I don’t think any industry has a job for life but tech or at least the companies can be short lived. Updating your CV takes time. Adding new experience while it is still fresh in your mind is much simpler than trying to remember what you did six months ago.
If your dream job comes along having your up to date CV on hand makes the whole thing less stressful. Taking a critical look at your CV from time to time also has the benefit of highlighting areas you need to work on.

Stayed too long in a job
I liked the people I worked with. I had a huge amount lots of knowledge about the project. The other side of this was I’d stopped learning. The world had moved on. After realising the hole I’d got myself in. It took a good 18 months of work studying in the evenings and weekends to break out of the silo I was in.

Not negotiating
If I’m honest. This is something I still struggle with. I would be much rather writing code than negotiating with someone. I don’t want to think how must have I’ve left on the table over the years.