Rohrschach-shaped Developer
Balancing breadth and depth in a competitive tech landscape


Rohrschach-shaped Developer
This article was initially entitled "T-shaped Developer", explaining the way i personally see this topic, but in recent days I've came across this comment under a blog post about t-shaped developers, and it surfaced some lingering1 doubts I had about using the T-shape as a framework to describe how expertise and knowledge are distributed across different domains and specializations in a professional's career.
Here it is the original blog-cover image:

I wanted to go deeper into this rabbit hole, and starting from the term's origins I also found some archaic papers and blog articles dated back to 199o+ (i'm from 2002 :) abount this topic. Starting from this article from 1990 about 'Hybrids' workers in the IT industry, the initial T-shaped definition has been developed and also evolved in the following years, aldought it has been widely used in the last decades and not expired yet as this entire paper from the 2023 INTERNATIONAL CONFERENCE ON ENGINEERING DESIGN (ICED23), named THE T-SHAPED DESIGN ENGINEER demonstrates.
Ok but what is a T-shaped Developer?
If u are not familiar with the T-shaped concept, without wasting words, it is a metaphor to describe the skills of a person, where the horizontal bar represents a broad range of knowledge across multiple disciplines, while the vertical bar represents deep expertise in one specific area.
The concept's evolution
Starting from the concept's most physiological evolutions, the idea has evolved over time to include other shapes, such as the Pi-shaped and M-shaped models. These models represent individuals with multiple areas of deep expertise.
V-shaped concept
Moreover, and more interestingly, i found this blog post: 'Forget T-Shaped, we need V-Shaped Architects' from 2011, where the author argues that the T-shape is not a good way of developing competences, and that a V-shape is more appropriate for software architects, introducinthe term "versatilist" bonding and blending the lists of horizontal and vertical skills you have, emphasizing the concept of bringing interdisciplinary teams together to break down boundaries in solving difficult or wicked problems
Or at least, this is how I understood it.

Chaos star
Another interesting point of view, or i should say another shape, is the Michael Moorcock's famous "Chaos Star", used in this blog post from 2016: "Beyond the T-shaped person: becoming star shaped" to describe the concept of a "Star-shaped" individual, who represent itself outside of a two axis graph and using areas to group similar and different skills together.
Learning new skills means adding new arrows to your shape. These arrows can grow and eventually surpass your existing skills. This continuous evolution of your skill mix is something the T-shaped model doesn't capture well.
Personally speaking, I really like the "Chaos Star" concept but I think that this way of using it by exploiting the arrows to represent skills is a bit confusing and not chaotic enough.
What shape should i chase?
Here we are, from an illuminated comment on a blog post, to a rabbit hole of shapes and back to the rohrschach-shaped developer concept, which i think is the one that better describes me and my competences.
why?
Personally, I've worked different jobs and also in different roles of software development itself. I value many of the competences i've learned in the past as useful for this industry and pointing the light forward on the trail of my career, i want to invest money and time in learning new skills, certainly to become and expert on my main area of interest, but valuing every competence that could elevate the height from which i see problems and consequetally the way i solve them. no matter if it is an inkblot here or there on the canvas.
As Alex Lohr said in a following comment to the one i mentioned at the beginning of this article: "Everyone has their own Rohrschach picture" and i think that this phrase alone describe why this concept is able to embody all the complexity of a person's skills and knowledge, and why it is more appropriate than the T-shape to describe a developer's career.
English words I learned while writing this post:
1 Lingering — Persisting or lasting longer than expected; reluctant to leave or end
