Our founder and managing director Alan Haefele shares his insights into what Haefele Software stands for.
So who are we and why do we exist? When talking to business and product owners, there are too many stories of poor delivery and failed execution, along with burnt fingers. When talking to developers, many are jaded by their dysfunctional teams, broken through poor process, politics, promises, lack of skill, or good old fashioned ego.
Software deserves better and developers deserve better.
Haefele Software is focused on moving the needle, to provide a place where developers and projects can expect better.
With the global shortage of software development talent, it’s satisfying as developers to pat ourselves on the back, pleased with how in demand we are, and easy to forget the responsibility we have to the industry which is calling out for our skill.
Many great companies have excellent software talent but in dysfunctional teams, and as a result, this talent becomes complacent and bored. Developers who leave and seek new challenges add to the already high number of churn in the industry, just to find themselves in a similar position 12 to 18 months later. Those developers who don’t leave, stagnate and run the risk of technical irrelevance, evaporating from the already-shallow pool of skills in South Africa.
Put the developers first.
To do things differently, Haefele Software starts by putting the developer/analyst/tester up front. It is their skill that’s in demand – they should have a bigger say in the most efficient and productive way to express their talent. This is not to say that all developers know the most efficient and productive way to express their talents, nor that they should run unchecked without sight of the bigger picture – this is about looking at a group of five developers and not seeing four bricklayers and one plasterer who need to finish a wall, but rather five musicians who need to write an emotive song. In the latter case, the best results come when the musicians take the lead, mould their own environment, find their own process, naturally maximising time on their instruments towards the goal, while naturally honing their crafts individually and collectively.
This approach is not special, it’s largely just an extension on Richard Branson’s paraphrased mantra “look after your employees first, and the rest will follow,” but more fun is working out what “looking after” these staff really means?
Understand what makes them happy.
At the root of it, good developers are simple creatures. Three elements make them happy:
- They need constant challenge. They need something that stretches their skill – the more often the better.
- They need to write code. The more time in code the better.
- They need other developers around them. The more of them, and the more senior, the more they will be mentored and inspired.
Over time, these three key elements also make them better developers. There are many developers out there who are not being stretched, who spend less than 20 hours a week in code and only have (shared) access to one developer more experienced than themselves.
It really isn’t rocket science. If you were to ask what makes an artist or a sculptor happy, you’d most likely expect them to answer with, ‘’Working on a piece that challenges my skill’’, ‘’Uninterrupted days immersed in my tools’’ or ‘’Being surrounded and inspired by other artists who I can learn from and be inspired by.’’
There is so much in common between the creative expression in art, music and film, and the disciplines of software development. The parallels with art are evident when reviewing an architecture, solution or even a succinct five lines of code which can evoke emotional descriptors like “beautiful”, “elegant”, and “damn, that’s sexy”, but with so few appreciating this parallel it is no wonder so many software teams are dysfunctional and developers under-utilised.
It takes more than talent.
Bringing passionate talent together, and keeping them happy, is one thing, but building complex software requires more than talent, it requires collaboration, the kind we see in art, music and film.
Complex software development projects are no different; equally multi-disciplinary, they demand a level of collaboration from client, analysts, developers, designers and testers alike, and true collaboration demands trust, adaptability, respect, and EQ.
That is what software and developers deserve. This is why we exist and what we have set out to fix.
We are on three distinct missions: Bring talent together. Advance the industry. Be truly collaborative.