When talking with non-technical managers, I am very often amazed by the hype words they throw at me on the technology stack they use — things like machine learning, generative AI, Flutter, React Native, Microservices, and serverless. The longer I talk with them, the more apparent it gets they are repeating what their technical lead is name-dropping without understanding what these words mean. And especially not if they need them and if they are applied correctly. In most cases, it reflects the smoke screen installed by the technical team.
My stance on everything related to technology is simple: be as boring as possible.
Obviously, you need to innovate but leverage new technology as pragmatically as possible. New tools and services come and go. Using more established ones can be innovative but with a reduced risk. In an early stage, you can experiment as much as you want, but selecting the wrong technology might slow you down in the long term. Either because creating a team with the right experience in that stack might be hard or because the tech stack becomes obsolete and you need to replace it with something else. The more mature the organisation gets, the more boring you need to become. Sticking with tools the team is familiar with. Experimentation can be done on the edges of what you are building so the next cool technology around the corner can replace it.
Software engineers like to play and use cutting-edge technology. It is part of their way of living, and it should be. But do not let them experiment on your main product. Allow them to do this on the sidelines.
As a non-technical manager overseeing a technical team, you should understand what your team is talking about. If not, ask them to drop their smoke screen and explain what they are doing. If they can not do that, search for help bridging this gap.
Member discussion