By Brian Lusina, Cohort 7 Student
Gone are the days of clear definitions of responsibility, at least in terms of technology and developing software. These are not the times when companies and businesses have clearly defined roles for their employees such that everyone is only closed to the skill set that they deem to be the most proficient in. These are the times when one role for an employee is never going to be enough, or rather is never going to be the case, especially not with how the world is evolving.
No more are the days where web developers, designers, application programmers and database administrators stick to one predefined role each sitting in their own little area worrying about only their little part of the puzzle with clear definitions of responsibility. This venerable model heralded the age of web and app development, but it also contained the seeds of its own destruction, creating a world of silos, isolated and closed knowledge – a world of “not my problem”.
As these complex systems have matured the effort, and the risks, to change a product have become significant and difficult to achieve. As this era, and the solutions built around it, draws to an end, something new awaits.
The web developer jobs of today, the trendsetters and game changers, do not push bottlenecks through waterfalls. From tech startup to large-scale enterprise, the skills to succeed and adapt require a different mindset.
The modern developer requires clear methodologies to work with, a supportive organisational culture and tools that automate the simple tasks. This cultural change does not just apply to software developers – business leaders drive this change and provide the tools for their organisation to thrive.
To achieve this way of working you need a more rounded IT professional, or what the industry refers to as a ‘T-shaped developer’. A T-shaped developer has one or more deep skill-sets of knowledge complemented with broad generalist knowledge across an entire solution.
Sometime known as full-stack developers, these rounded individuals are the most in-demand devs – in a modern world that wants staff who can do front end, can make middleware sing and utilise the terminal on their chosen operating system like a ninja, and knows how to test.
This sounds like the perfect developer. I mean they can build anything with anything that solves anything and passes any test. Sounds like coding ‘god’. However unreal this sounds this is becoming the new norm as the world of tech continually evolves demanding more and more developers to up their game and improve their knowledge base.
Why these developers are called T-Shaped is because the vertical line of the T represents the depth of expertise in a field while the horizontal line represents the breadth of knowledge.
In as much as this may sound like being an expert in a particular programming language and knowing a ton of others as well, it actually may have different meanings to others.
It could be a developer who has a specialty (backend, frontend, or a particular technology stack) but is comfortable doing a wide range of development work, product management and design thinking. A backend developer needs to know how their work interacts with a front-end developer’s. Additionally, they need to empathize with designers and end users. Often certain kinds of skills are grouped together and people who are really truly good in a specific niche need to understand how their niche effects things holistically.
This does sound like one heck of a developer to have on your team. The job would be done well as they would be able to pitch in on every aspect of the product being built. However, there is a case against hiring a T-Shaped developer. Some managers would not do this.
You don’t want a team of T-shaped developers for two reasons.
- They lack creativity. If there is one deep expert on each topic, they have nobody to bounce ideas off and nobody to pull them back on track if they fixate on a bad design.
- Communication bottlenecks. The deep expert on each topic has to simplify his communication to his teammates to an extent that he cannot properly articulate his reasoning.
The solution offered is to hire V-shaped developers as they have a peak competency at the tip of the V but have adequate skills in a number of adjacent areas ensuring that there is one expert and a least one sufficiently knowledgeable team member in every area.
Despite these two reasons (and possibly more), there are companies that have grown rapidly due to T-Shaped developers. Some even don’t focus on finding someone who is an expert in a particular subject (an iOS or Android developer for example) but rather a full-stack developer that can be successful in contributing to a project end to end. This allows creation of small product teams with high responsibility and the flexibility to remain technologically agnostic. It also tends to naturally let the developer grow in different areas while still maintaining certain expertise.
This may be one of the main reasons that the T-shaped developer will be the new norm and standard. After all, aren’t programming languages, frameworks and technologies here to create solutions? It will not matter whether you solve a problem in one language and someone solves it using some framework and creates a new business with some other new piece of technology. It is even better if you can do all three, or rather be able to have a wide knowledge base that lets you cut across and learn.