Up until now, I never put much thought into what type of developer I am. I studied a full stack curriculum at Flatiron School and I've focused on both frontend and backend at different times of my career. The other day my teammate mentioned that we should all work toward becoming T-shaped developers. That was a new one for me. What in the world is a T-shaped developer?
After a bit of research I learned that a T-shaped developer embodies the best of both worlds between being a specialist and a jack of all trades. They are an experienced expert in one field with some knowledge in other areas too.
While full stack usually entails that knowledge is generalized across the board, a T-shaped developer is a shiny rebranded version of full stack. It has the well-roundedness of full stack with the added bonus of a specialized area of expertise.
In the following chart example, the teal background color shows my depth of knowledge in data integrations (the vertical part of the T) as well as breadth across frontend, backend, full stack, and mobile app development (the horizontal part of the T).
I omitted some skills from the teal area for the sake of making a perfect T-shape, so a truer representation of my skills would look more like an abstract shape scribbled by a toddler.
There's no clear-cut definition of which fields are included as part of the chart, and the shape's contents seem to be entirely customizable. We all know that being a software engineer encompasses more than just writing code all day, so the next example shows my skills in the software engineer column along with aspects of other roles that I take on regularly.
You see, the chart can look different for everyone. Our levels of expertise are subjective and relative, so I could argue that every developer is already a T-shaped developer!
Creating a personal chart is a great exercise to dive deep into your own levels of expertise. What do you think, are you a T-shaped developer?
Top comments (16)
I am a Rohrschach developer. My knowledge is not evenly spread in lines, but rather blotted all over the place. The biggest blot is front end, with thicker drops on security and accessibility/usability, a few streaks over back end and systems development, smaller ink stains on testing, software architecture and documentation.
Long story short: don't try to put people into categories.
I want to be put in the Rohrschach developer category, it sounds really fun!
We're all in that category, but everyone has their own Rohrschach picture.
A Rohrschach representation is really interesting! I agree that most developers' skills and knowledge would naturally make more of an abstract shape than a perfect T.
I wasn't aware of the termΒ "T-shaped", but I've always recommended people to aim for "Jack of all trades, master of one", which seems like about the same concept.
Having a very widespread understanding of the field is immensely helpful in communicating with others about their respective areas of expertise but also to just do smaller tasks yourself instead of having to bother someone else who could instead be solving the hard problems that really require their in-depth knowledge in that area.
Besides, fixating entirely on one thing is just boring; spicing it up with some adjacent skills makes it much less monotonous and helps with motivation.
Exactly, having some knowledge in adjacent areas makes a more well-rounded developer. Thanks for reading!
This is the myth that I really admire in this world. Because I feel this is part of the meditation to deepen my character as a Software Freestyle Engineer.
I love the idea of a Freestyle Engineer!
You should try that!!! Freestyle like Tony Hawk or Jump like a Mario!
I think I might have heard of it from somewhere. It would be good to figure the chart out that fits on me from others' chart. Thank for the post π
Thank you for reading!
Why is PHP not included?
It certainly could be included. I personally haven't worked with PHP in a few years. This also circles back to what I wrote in the post, where my skills don't perfectly fit inside of a T-shape but rather extend into something more abstract. You can make the T-shape by customizing it in a way that works for you!
I try not to buy into these sorts of labels.
Really cool article - never thought to look at it this way before!
Thanks for taking a look!