In the age of discovery, navigators changed the world. Their unique skills won them fame, riches, and glory, as well as the ears and support of kings and emperors.
The rulers of old who knew the importance of investing in these skilled frontier men rewarded their nations with the longest and wealthiest golden ages they’d ever seen. Nowadays, in the age of data, developers are the new navigators. Their happiness is the key to the success of modern business and the employers and companies who understand this have the opportunity to become market leaders.
Software engineers, Devops, SREs, Data Scientists, and developers at large are the new helmsman, navigators, and cartographers. The skills developers have and their unique access to the tools of their trade is the key to solving modern problems - problems of scale, automation, AI training, complex calculation and prediction, and in general, of data manipulation. Tools were and still are a huge part of both the developer and navigator professions. While navigators had the sextant, star charts, kamals, compasses, and containers, developers have an even more impressive list of tools such as IDEs, compilers, CI/CD, ML/AI models, Programming languages, cloud-services, serverless, Istio, kubernetes, and containers, to name just a few.
As you’ve probably noticed “containers” repeat on both lists, and indeed developers have named much of their modern tools after maritime namesakes. The same is true for Kubernetes (‘Helmsman’ in Greek), Istio (‘sail’ in Greek), and many more. When surveying modern software projects, it quickly becomes apparent that the required toolchain is constantly growing, and hence the knowhow and efforts that are required from developers is constantly growing as well. Of course, there is no doubt that without both the tools and developers organizations wouldn’t be able to approach, let alone traverse, the oceans of data.
Data is not the new gold or oil, it’s the new oxygen. Every part of the modern business needs it, ranging from sales to marketing to product, all the way through security, data-science, and of course to engineering itself. However, the pursuit and effort to obtain data is not about blindly collecting, as opposed to what some vendors of big-data solutions might be claiming. Data is about quality before quantity. Each voyage is about getting to the right data at the right time and how to derive the right products from it. You don’t want to drown in data, you want to swim in it. As historian Yuval Noah Harari put it in his bestselling book Homo Deus: A History of Tomorrow: “In ancient times having power meant having access to data. Today having power means knowing what to ignore.”
Looking at data-science really highlights this fact. The better data-scientists are able to label and curate their data-sets, the better outcome they can achieve. While more flexibility is afforded with deep learning, the quality of data still remains pivotal. Quality, as with many other aspects of life, translates to not only skill, but motivation and guidance. The ability to see the new frontier that can be obtained beyond the veils of data at the horizon, is directly linked to the creativity, freedom, and ability to persevere through obstacles. If we boil all these parameters down to a key one- happiness would be it. We need our developers happy.
The basic fact is that in order to truly succeed at their jobs at the level you would need to spark a golden age, your developers have to be happy and motivated. Just like their discovery age counterparts, good developers are hard to find and so it becomes a simple matter of supply and demand. If you want to get this supply, you better listen to their demands. It is currently estimated that by 2021 US companies will be experiencing a shortage of 1.4 million software developers to fill positions.
So how do we make developers happy?
Before we can discuss how to make developers happy, we need to delve into the root of the issue and understand the cause for their unhappiness. According to the article “On the Unhappiness of Software Developers”, the way to foster happiness is to limit unhappiness. Yes, agreed, this seems quite evident. So what exactly makes these developers, these people who are standing at the helm of the future of technology, unhappy? 10 key causes were found to be the source. The first three originate from the software developer’s own being. This was found in instances when devs were stuck solving a problem, felt their skills and/or knowledge were inadequate, and when experiencing personal issues. The other seven causes are produced by external causes, such as colleagues underperforming, unexplained broken code, and bad decisions. As we can see, much of their unhappiness stems from sources directly relating to their job. So, how can we, with this knowledge, flip it to benefit our devs?
The following is a list of key concepts companies can adopt to improve developer wellness and happiness. The list focuses on the unique aspects that are relevant for developers, taking into account you are already doing the best to take care of their happiness as people first.
Looking at human history, there are distinct ages - periods in which key roles in society lead revolutions that forever change the fate of mankind. Shamans and chieftains, philosophers, kings, renaissance-men, and most notably in the age of discovery, explorers and navigators whose unique skills and spirit drove civilization forward, quite literally, by connecting the old world and the new world.
In this age of data, developers are taking the lead, harnessing an ever growing arsenal of tools, constantly requiring them to learn, adapt, and perform, while the challenges are constantly growing in scale and complexity. As the problems faced grow, so do the rewards. Consequently, the companies that best support their developers and take care of their happiness, will win a new world that holds a future that’s probably beyond our wildest dreams.