The web world has gone through a shift over the past decade or so, from valuing specialists to rabidly seeking out generalists. π€¨
Our industry is a fascinating one, with trends and expectations shifting at an incredible pace. As someone who's been in this field for a while, I've witnessed the transformation of the industry's preferences from valuing specialists to seeking out versatile generalists.
As a seemingly grumpy old man in this industry I've watched as the favor and respect towards specialists quickly diminished in favor of the elusive, Swiss army knife generalist unicorn that could blow you away with their seemingly vast knowledge of the end to end process of building applications on the web.
πΏ This has led to some rampant unreasonable expectations within the job market.
Too many times have I seen job postings that are geared towards Junior or Mid level engineers with a literal laundry list of expectations, languages, philosophies, and standards. What an unwelcoming and unreasonable expectation to put squarely on the shoulders of people trying to get their foot in the door in our industry.
In all my time working with developers at various skill levels, I've found immense value in encouraging junior and mid-level developers to explore and refine their specializations . Fostering their enthusiasm for a particular niche can lead to remarkable results. Nurturing the thing that gets them excited to create, and develop a passion for.
π The value of a passion for learning should not be underestimated.
Instead of chasing individuals who collect frameworks like trophies, we should focus on those with a genuine passion for learning. The ability to adapt and grow in this ever-changing field often trumps the ability to wield a multitude of frameworks.
Let's embrace the evolving landscape of web development and recognize that both specialists and generalists have their place. After all, it's the balance between the two that fuels innovation and drives our industry forward. πͺπ»
π What's your take on this shift in the web development world? Are you a specialist, a generalist, or a bit of both?
Top comments (6)
Great post!
I've always been a Fullstack developer - which kind of means that I am both average in frontend and backend. Right now, if you're a backend developer, it is expected that you're also at least average on DevOps and Cloud computing.
I've also seen Mobile developer jobs that require you to know both Android and iOS - even though they're very different. Even if you work on a hybrid solution such as React Native or Flutter.
In the end, the end user suffers, since as a Developer you're expected to know everything, or be in a level that you can become an expert in matter of days. And as we all know, this results in bad software.
I want to become a Specialist, but it is not viable in a job-market sense. You're supposed to just learn the hype framework of the moment and go with what's hires people.
No doubt. The issue is a systemic one. Job descriptions and requirements that are written by HR, or people in leadership who have no sense of what the production landscape for a developer looks like.
It's so common it's become a meme. The Junior role that requires 4 years experience. The job description that, like you said, includes knowing C# And Swift to such an extent that you can create apps from the ground up on both platforms.
It's maddening, and is the root cause of the issue we see today where there's a massive amount of junior and mid level folks looking for jobs.
I'm absolutely a generalist right now but i think all the knowlegde i have it's just foundational. I did support, developed, deployed, unit test, consulting, also so much debugging and troubleshooting. But i want to choice a path, and i finaly found i like to solve puzzles, analyzing and monitoring, grant and seek for the low level devices' stability and reliability.
I'm a generalist but companies i'm interested to work with doesn't hire me because i don't have any specialization. That's so sad. In each company i've worked there are diferents tech tools stacks and i had to learn how to use them. I think that a fundamental characterist of IT people are we are endless curious, learn a new tools it's not a big deal but, we do want stability.
Having that foundational knowledge is absolutely something that you can use to your advantage in the industry! Starting out as a generalist and then finding your niche is a path that the vast majority of developers will (and should) follow.
The struggle appears at agencies or companies when they set expectations about being well versed in such a broad set of technologies that often have no relation. That's where the distinction between seeking a generalist and a specialist should be addressed!
Is this just for vanilla web dev? Because there are still plenty of roles like "salesforce engineer," "wordpress developer," "sharepoint solution architect," etc.
The issue seems most apparent to me around web and application development in an agency setting. Specifically when it comes to doing client work.
This stems from what feels like an under appreciation for folks specializing in things like Accessibility, HTML, CSS, Vanilla JavaScript, tech and principals not tied to the framework flavor of the week.
Hopefully that helps provide a little context for where the desire to write about the topic came from!