Are generalist skills a new trend or a real necessity?

Over the past two decades, IT departments have been split into narrow specializations. In the case of web development, this meant frontend and backend. To put it very simply: the part of the application you can see, and the part you can only feel because it runs under the hood. Despite this, we can still find rebels who, defying a polarized IT industry, learned to build systems on both fronts (or rather, "ends").

By working on both user interfaces and server-side systems, these developers gained the experience to build solutions spanning from the database all the way to the colorful buttons on a webpage-essentially becoming "One-Man Bands." The market initially dubbed them Fullstacks, only to curse them shortly after. The worlds of front and backend evolved so rapidly that keeping up and remaining a top-tier expert in both would require an elastic 24-hour day and a lake of coffee. Instead, the community doubled down on narrow specializations and expert knowledge.

Today, the evolution of languages and frameworks is slowing down, and ideological debates over architecture are losing momentum. Due to-or thanks to-the AI boom, we are witnessing the blurring of lines between specializations, and we are once again valuing generalist skills that allow us to operate at every stage of software delivery. Since the code itself can now be written by artificial intelligence, a systemic view of the product, rather than just a slice of it, becomes the key to success.