I am a software engineer, I was thinking changing a team for quite a while, for career growth reason. I know that not every engineer is like changing, even including myself, very attached to old team, and people don’t want to leave. And I understand that, because it is not easy to leave the team that you have been working with for years, and you have made so many friends in the team.
If you are an employer, and you have engineers who are looking for changing a team, support them as much as possible. Because human resource power is like water, the power is from moving, not from staying. If you keep them in a fixed team forever, the work place might be like a dead lake. No life, no fun.
Background
In NZ IT industry, I heard quite a few happy and sad team changing stories.
- One guy who is more senior than me, he changed 3 times in the same company in different teams, and finally he found he did not find any interesting teams, and he left and joined another company.
- A girl, she is less senior than me. She worked in Company X, for her personal reason, after a few months, she would like to change her office/team in another town, was denied by the management and got bullied by her manager because of (most likely) her “dis-loyalty”. It was a terrible experience to her.
After knowing these stories, it made me be afraid of changing a team in NZ in the beginning, but luckily it didn’t stop me and my changing application is approved now. Even I don’t know all about new team yet, but it seems like a new chance for me.
Why am I so keen for changing?
- Legacy code base, I am fine with legacy code base actually, because I understand I was paid to work on it, but at current position, the legacy code base is some kind of code you could never imagine.
- 3000 lines of query in 1 single SQL file, no one is able to change it, DRE doesn’t want to, so it was passed to us, and there is not only 1 example.
- Very unstructured work progress, people got blocked often and context switching usually twice a week, very very inefficient work style.
- Very unbalanced skill level between team members, this is something I don’t mind in the beginning, because mentoring others is part of the job as well for a senior/principle engineer. In our current stage, the new coming intermediate engineers is a bit against mentoring, pairing work, it made communication harder than before. Which made the team culture weird.
For solving these problems, I was suggesting to our management.
- Use Sprint board to manage work, to make work and goal clear to the whole team.
- Follow company suggested Agile DevOps Principle, the people who build it they should take responsibility to operate it too, instead of context switching between teams.
However, none of them were really accepted. So if the environment cannot change, I need to change. 🙂 This is why I am keen for changing to another team.
In the end, I would like to appreciate my current manager R for his understanding and help.