As a Software Engineer, I have gone through many managements, different countries, different companies, different projects which all left me with a bitter taste.
After years of reflection, I realized that half of the feeling came from my inexperience while the other half was meant to be fulfilled by the management under which I was working. This management was meant to provide me, a Software Engineer, the direction, vision and ideology to carry on my work. Management composed of line managers, higher management, directors and company, I expected them to lead me to success.
It is incredibly hard to find the right way to get a Software Engineering team to work well. Most of the challenges aren’t well understood by those coming from different backgrounds. Not that it is harder or easier, it is just different. Tasks aren’t easily measured, it is hard to make KPI, goals aren’t easily defined and set, and many more issues. We have seen that giving management responsabilities to someone without a Software Engineer background can be challenging, if not harmful. But we also seen the opposite whereby giving management responsabilities to a Software Engineer by elevating her as leader caused equal harm to the team. Not all of us are equipped with the tools and mentality to manage more individuals then just ourselves.