This post originally appeared on my blog PabloJuan.com
I was busy finishing the post before this one when my wife yelled “Ants!”. These were no ordinary ants. These were fire ants. The ones that bite really hard and make your skin swell up. As a matter of fact, one of them bit me near my wrist and I’m trying my best not to scratch while typing this.
A common occurrence in software development is that projects are seemingly going well until they don’t. Everything looks and feels great. Things are getting done. Deadlines are met. Suddenly something happens and all breaks loose.
The ant invasion reminded me of how that happens. They way ants take over your house is very simple. They find the smallest crevice and walk in line until they find food. They then take it back and repeat the process (whoever wrote that algorithm sure was lazy). Ants work twenty four hours a day. Every day. They don’t stop. Once you realize they are there, the little devils have taken over your whole house (and probably bitten you). There were no signs of this happening. You suddenly had ants and that’s it.
Thing is, these ants work in a way that you don’t notice them. They are a process that is running inside your house but you are not really noticing because they are really small. It’s not until they discover food that you are able to see them.
In software, we also have ants. Or processes that operate parallel to the project that end up creating difficulties down the line. These are not project-killing issues, but they are inconveniences that can make a project more stressful than necessary.
What are software ants? The most common one is the team member that does what he/she wants and makes the rest of the team slowly adjust to their preferences. You suddenly find yourself working in some less than ideal conditions without knowing why.
Another software ant is the manager that slowly over time increases your workload and expectations but never takes time to reconsider how these impact your overall performance. Then the manager expects everything to be done in the same amount of time.
Software ants happen over time and mostly unnoticed. But when they surface and bite is that you realize that you have an infestation in your hands. That’s when you have are forced to react and waste time doing so.
How do you avoid software ants? You need to pay close attention to your processes and people. I’m not advocating micro-managing. I mean that you must make sure that processes are clear and provide the outcome required. If someone realizes a team member is doing whatever they want then you must have a process in place that produces the outcome of correcting the situation. Same for the manager that adds more unrelated work over time. Your team must have a way to go one level higher and let others know what is going on. Otherwise your whole project gets impacted (and might even crash and burn).
Don’t let the software ants bite you. ðŸ˜ƒ
Liked this article?
Subscribe to my blog and get great content delivered to your inbox. No spam. Ever.