This story is an inspiration for why conversations are difficult with programmers.
This was back when my current lead just raised to management when the former left. I was a clear candidate, but he's a better people person. I understood that so didn't hold a grudge against him.
As a new lead, he had a lot of issues. Mostly with having to deal with higher ups and setting standards. There were small instances of us having conflict, but was never bad.
He was a node team member. So naturally after becoming the UI team lead, he wanted to take a look at the frontend. Luckily there was a feature pretty easy to do, especially since it's basically a copy of an existing feature. So I thought it would be a great opportunity for him to do, and so did he.
Weeks went by and I never heard a thing about the feature after we assigned it to him. I poked my head in a couple of times asking if something was not clear to him. He never requested any help. This was already a red flag for me since he never coded in the framework we used, knockoutJS, and this app can be pretty dang confusing.
Finally at the near end of the sprint, he pushed the changes. It was a copy paste job and did not follow any existing pattern or procedure. The code did work, but it was as sloppy as possible and looking exactly like what a junior developer would do.
It took me probably 2 hours thinking about what to do with this. There was also a design problem that he clearly ignored. Despite endless anxiety, I decided that we really needed to talk about this. Otherwise this might become the new standard.
We first talked about the design thing; it seemed to be the simpler of the two. I can't recall much of the detail since it's been years, but he didn't want to change anything about it. He was stubborn even when the designer chimed in and sided with me. It was super strange, but I had no choice to leave it as it.
At this point I should have not even bothered with the feature he coded. Stupid me did though. It was not soon before he brings out the I-am-the-lead card and shut me down. Told me that I shouldn't "come at me(him)" like this. Needless to say, a lot of hard pills to swallow.
This was the end. No happy ending or a turn for the better. We never talked anything about these two features and just left them behind. The crappy code is still there and this is hopefully the only time ever I will have to go through something this difficult. However it did serve to be a continual point of speculation on how it should have went and bettered my mindset about these conversations.
Top comments (2)
One of the things a new manager doesn't learn until later, is that they cannot do two jobs, that of the technical and the managerial too. They have to separate from the technical which many (like me) are unable to do. But if they don't they become stretched too far doing neither very well.
Agreed.
There are a lot of meetings and discussions for the lead to do. So it is definitely not reasonable for the lead to be a great contributor for all apps. However, I think it is at least reasonable to be familiarized with the app, so that he can be become better communicator with developers as well as better estimator of development time to other higher ups.