I recently recognised a pattern in conversations I had with leads. They all mentioned they were looking for developers who understand the programming language, not just a framework. Developers with in-depth knowledge of one framework or platform are not new. But in the past, they had basic knowledge of the programming language itself.

More developers advertise themselves as Laravel Developers or React Engineers instead of PHP developers or JavaScript engineers. I don’t think a framework focus is an issue; it can be smart. However, it is vital to understand the inner workings of the framework. To do so, you need to understand the basics of the language.

Ten years ago, every developer once went through the effort of building their own framework (mine was called Pongo). While that is almost always stupid (especially nowadays), you learn a lot from it. You get to understand routing, performance, error handling, input management, etc. All the magic in the frameworks today makes abstraction of all this hard work. This is fine until shit hits the fan. How will you investigate performance issues if you don’t understand how a framework works? What if what you want to do is not supported by the framework? Your innovation and quality will suffer from the lack of basic programming knowledge.

When you hire great software engineers, challenge them in different frameworks or a different language if you want to be sure about their basic programming knowledge.

In the end, good software engineering should be able to switch frameworks and even programming languages without a hassle.