Specialists and Generalists

Written on: 2025-05-04. Last updated on: 2024-05-04.

This is an old debate but I want to express my concerns about it because every time I read about being a specialist or generalist I think that they are missing the point.

First I want to say that I'm a generalist as a Software Developer and Web Developer so this post is obvious subjective.

Second I want to say that I'm a professional Software Developer and that means I'm getting paid to write software and solve problems. Because yes, Software Developers also solve problems and use methodologies and techniques from Software Architects and Software Engineers to do that.

I think that the specialization for a Software Developer should be about the type of problems that they are solving or business logic of the software they're working on or at the end of the day what makes the company money and not the tools they use.

Sometimes these things are related but when you use a general programming language for example like Python if you know how to use for an specific problem you could learn to use it for another easily. So Specialists can be generalists too.

The other day I saw a video of someone saying that he has an specialty in Backbone.js but that it's not worthy anymore and he is right. The same thing will happen with other web technologies.

The things you need to learn are if you're a front-end developer are: how a browser works, how a server delivers a website and how a webpage is rendered, how the JS engine works, what is the DOM and another Web APIs, how can you read the specs of the main web standards and then what kind of interface is your user expecting and how can you create the more coherent, simple, easy to use interface.

In front-end is an error to specialize in a tool or technology if you lack the basic knowledge in which that tool operates and also because this can be upgraded breaking compatibility backwards and you forget that you need to keep learning.

You should learn to solve for the business. For example if you work with Geo-spatial Data it's different knowledge that working for Financial or Health Insurance.

That's my perspective in this specialist and generalist debate. It's not the technology but how to solve problems for the business what matters at the end.