I recently read this text on social media, and here are my thoughts. I both agree and disagree with it.
But first, let’s align on the terminology. Based on the definitions in this text, a “real” software engineer is someone who builds tools and understands how they work. On the other hand, someone who reads the documentation of tools and connects them together is called a “blue-collar tech worker.” While one could argue about whether this term is accurate or not, let’s go with “blue-collar tech worker” to make it easier to discuss the differences.
Why do I disagree?
In my opinion, the current market and its needs are more focused on people who can use tools, connect them, and deliver products that create value for businesses. For instance, does the world need more mechanical and civil engineers or more physicists? I’m not saying physicists aren’t valuable—they advance science and enable the creation of tools and technologies that engineers can use to build products or structures.
It’s the same situation here. A while ago, every company wanted to have a website or automate their processes with technology. That need still exists. Now, there’s an added demand for businesses to create LLM-driven products. Companies want features like chat capabilities, image-based search, or language-centric automation. For these tasks, you don’t need someone who’s an internet genius or deeply familiar with every layer of LLMs with a PhD in data science. You need someone who can read tool documentation, piece them together like Lego blocks, and create value.
In the current market (though I can’t predict the future), I think someone who is a generalist—capable of handling backend, frontend, app development, building data pipelines, working with LLMs, understanding generative AI, testing, monitoring, and maintaining their product—is more valuable than someone who’s a specialist in one of these fields. Specialists are valuable too, and they likely earn higher salaries, but the market has a greater demand for blue-collar tech workers than for deeply technical software engineers.
Why do I agree?
Because maybe in the future, this “sneaky AI” will become so powerful that it can handle the work of a generalist or blue-collar tech worker. At that point, we’ll need people who can step in if the AI makes a mistake—people with deep technical knowledge who can diagnose and fix problems. When that time comes, the demand for software engineers may decrease, and those with profound expertise in specific areas will be the most valuable.
I don’t know if this will happen in the future. Perhaps there will still be a need for blue-collar tech workers, but the nature of their work will differ from what it is today.