Hacker News new | ask | show | jobs
by IgorPartola 4421 days ago
So at one point I took on a management job, stepping up from a (lead) developer. I felt like the whole thing was kind of a train wreck and I am still slowly analyzing the black box recordings from it. This was my first time having direct reports that were not one or two interns and managing a team of seven other highly intelligent people was quite a chore in itself. What bugged me is that I could never tell if the problem was the environment or something I was doing. I tried to be fair. I mentored people when I could help. I tried to not be overbearing when I had nothing to add. I present challenging problems to the people who I thought would find them interesting. I advocated for my guys to the upper management, trying to improve working conditions. I insisted on being flexible, discarding what was slowing us down, and adopting what was good. None of that seemed to help: my dev team learned to resent me for delivering the bad news (for example the dev team was the fallback for doing data entry for weeks on end when nobody else could handle it and we had no time to finish better data entry tools because of it), and my boss(es) learned to resent me for not delivering what they expected.

I know that there were quite a few problems above me. Lack of leadership carries far and wide and there was a disconnect between what the products did and what the management thought it did. Lack of money (think lack of compensation, lack of tools, lack of time for anything but immediate returns) did not help either. I do keep questioning whether I was doing all the wrong things or if I was put in a situation designed for me to fail, or perhaps both.

After I left I understand the company hired three different people to replace me: a manager, a dev lead, and a support engineer. I suppose that's some kind of a sign that I was trying to do too many things at once. Most of the engineering team also left after I did. The least I could do is give them the great recommendations they all deserved so all of them moved onto exciting new pastures. However, I cannot help but feel like I failed at this task that I felt sure I could tackle and I don't understand why.

Please excuse the rant. These types of topics always trigger those same feelings in me.

Edit: now I work as a developer on 2-3 person teams. I have no reports. I get to be productive again! I can write code that doesn't have to suck to compensate for poorly chosen deadlines. This is good for the soul. I do miss leading a team though; not managing but really leading. One of my proudest moments was when I was allowed to follow a system of estimates and sprints I put together and for 8 weeks my team delivered on schedule and exactly what was promised. That was one of my more joyful moments.

12 comments

welcome to low/mid-level management. You get squeezed from the top and bottom. Everybody will hate you, so you just try and hit deadlines.

It also sounds like a typical story where the larger organization was trying to keep management lean, without realizing that it really did take multiple people to do the job.

One place I worked at ground through three managers in 6 months (with 120 people under them) before finally getting the clue and hiring a proper team of 7 to do the job.

It's not uncommon at all and it really is the upper management's responsibility to properly staff their low/mid management teams.

How common is 600% turnover in management?

I know turnover in engineering is usually high (if people are moving around every 18 months to 2 years)... but 600%?

I think more common than you can believe. low/mid level management is incredibly stressful and hard to build a proper support framework around and hard to do if that framework isn't there.

After you asked, I spent a bit of time thinking of similar situations (high low/mid turnover) and I can think of 2 or 3 other instances I know of personally. Anecdotal I know, but there it is.

I've seen turnover that bad at past employers. In some cases it continued for years after I left. I think it depends on the company, not necessarily averages.
Ditto for a place where I used to work. Unfortunately for me and my colleagues, the reason for the high turnover was that they kept hiring good dev managers who all quickly identified the projects' major problems and set about trying to solve them. This had the unfortunate side effect of revealing the incompetence of the TD, so they had to go quickly.
TD? Technical Director?
I only know your side of the story, so I know this assessment won't be entirely accurate. However, based on what you have written, it sounds like you were a pretty good manager who just got caught between your employees and your bosses. I especially like how you recognize your team members' intelligence, and tried to advocate for them with senior management. You likely made some mistakes along the way, but every manager on earth makes many mistakes.

Sometimes even the greatest skippers can't keep a boat from sinking. It's helpful to consider how you could have made the situation better or worse. But, based on what I've read, you're putting too much blame on your own shoulders. Rather, remember that it took three people for them to replace you.

One thing I realized later that I did wrong was pushing back on the upper management too much. For example I said I did not want my team working weekends on regular basis as had been the practice up to that point. We ended up not having to anyways but it painted the team in a bad light.

Really this translated into me taking a long time to understand what the priorities of the business were vs the development priorities. Definitely let's of stuff I would consider typical first time manager mistakes.

If by working the weekends you mean seven-day work weeks on a regular basis, I strongly believe you were doing the right thing.

The health of your employees is a much bigger priority than business or development. They're not human resources, they're people with families and loved ones and the need to have a day off. Unless you were on the verge of curing cancer, there is no reason to work people like that.

You were in a bad situation - it sounds like there were huge problems with upper management - and you did the right thing. Unfortunately doing the right thing doesn't guarantee success. No doubt you made a lot of mistakes too - I've been there and it hurts - but that doesn't sound like one of them.

To me it's a sign in your favor that the team left after you did - if you were the problem, they would have left before you did. I don't think you can expect them to be happy when they're working weekends and (what sounds like professional developers) are doing manual data entry for weeks on end.

More like working Saturdays for weeks at a time. My personal rule of thumb (after volunteering to work until 2am on Saturdays and then again Sunday mornings to finish a project and launch on Monday, just to have it delayed by another three months) has been to work a weekend once a year. I think that's about the frequency with which true emergencies happen, the kind that affect the bottom line and the livelihood of the organization. Anything more than that and it's just someone trying to squeeze more out of you than you can give.

In this case I took a stand and while I think I did the right thing by saying that I did not want my team working with this pattern, I also misrepresented how dedicated my team was to finishing the product. This created quite a bit of conflict between upper management and the dev team.

Thanks for the kinds words.

There is absolutely nothing wrong with sticking up for your team. Management does not get to foist their lack of vision/preparation/thoughtfulness onto subordinates in the form of, "but we need this yesterday."

How many business functions are actually so important that they require weekend developers?

Sounds like the company was already pretty dysfunctional if your team was working weekends on a regular basis. That's not healthy, and if you were my manager, I'd thank you for standing up for our lives outside of the office.
> the dev team was the fallback for doing data entry for weeks on end

Wow, what? It sounds like you were doing the right things, but this is hard to comprehend. Wouldn't temps cost $12/hour for this? No wonder they were angry.

That's the route we went eventually, but inputting geographic data directly into MySQL is not something that temps could handle. We needed the time to create the tools to be able to hire temps. In the meantime cash flow depended on the data being there.
Sounds like the perfect situation for a small business loan to cover the temps' wages.
Sounds like it wasn't money, but time they needed. Money can eventually save you time, but not immediately.
It's a long read, so of it doesn't grab you don't read it. This might explain everything you experienced: http://www.ribbonfarm.com/2009/10/07/the-gervais-principle-o...
I love that article. It fits so well with my anecdotal experience that it hurts. Unfortunately, it has made me cynical, since it essentially means that I can't advance within a typical business organization without becoming either predator or livestock.

The grandparent poster slots neatly into the model as a loser selected by a psycho to be promoted to clueless just long enough to absorb the blame for something. After the misdirection, the clueless is discarded, along with any losers that may have attached too strongly. The situation was designed to terminate in failure, as a reset button, so that the psycho in charge could turn a few clicks on his career ratchet.

Yeah. It's a neat fit.

Every time I re-read that article I start seeing sociopaths and losers and 'HIWTYL machinations' everywhere. It's like a 16 year old reading Marx or Ayn Rand seeing reactionaries & class consciousness (or government looters and self righteous moochers) everywhere.

Borderline embarrassing.

(HIWTYL = Heads I Win, Tails You Lose)

It's very much like a daily horoscope. Make your classifications broad enough and people can cram anything into the pigeonholes. You could classify people as having "convex" and "concave" personalities, and the true believers would be able to classify everyone into those categories.

The (Gervais) psycho-clueless-loser model basically says that parasitism as a strategy is as successful in human social interaction as it is in biology, if not more so. The sociopaths rise to the top because the clueless have not evolved a defense mechanism. The losers have evolved the defense mechanism of generating no excess productivity.

None of the models you mention--Gervais, Marx, or Rand--really say anything other than some people are selfish pricks, and that other people react negatively to that. And there really are selfish pricks everywhere you look. Giving them a new name is almost like finding a new species of beetle.

You can join them, support them, or resist them. There are positive and negative consequences for each choice. What you can't do is eradicate them, because being a selfish prick is a choice, and anyone with free will can make that choice at any moment.

Wow, that is a great read! Thanks! It definitely explains quite a bit.
Thanks for sharing - the description of your situation echoes my self-questioning in similar situations. My own post analysis now makes me always consider if there a clash between my personality and work culture? Sometimes these differ and you don't want to be the manager that the work culture has moulded. I am not a whip or hard ass, I am there to take a certain load that permits the workers to do their job. Management requires all the things you mentioned, but sometimes the workplace has developed a culture where this isn't possible. Most companies mess up management, and often the people that aspire to it don't pull their weight and think it is a promotion to tell other what to do.
Thanks for sharing as well.
I don't think you have enough data points to draw a meaningful conclusion about whether the problem was with you or if it was with the environment you were working in. The best you can do is look at the individual situations and circumstances you were in and think of what (if anything) you will do differently next time when faced with the same scenario. However with that said, it has been my experience that when there is a lack of leadership above in a company, the knock on effect is generally a bad working environment for everyone working in the organization below the bad management.
Lack of leadership two levels above had a huge impact on bit strategy and morale. When you know the CEO is taking it easy while you work 60 hour weeks, it is very demoralizing.
If most of them left after you, you were doing a good job. Employees know when you are with your back against the wall, but because you deliver the news, you also see the reaction (i would realize that some choises are made above you).
> I do miss leading a team though; not managing but really leading.

Your title doesn't impact your role on the team. You can easily make a big impact as a leader, without the people management aspect.

What I mean by that is putting together a team and creating a product, not just stepping up on a team to take on a more senior role. You are right, you can step up on any team, and that's how I got to do what I did in this instance: stepping up in a small way until someone recognized that I could lead the team officially. I do look forward to one day starting a venture of my own.
You had your dev team do data entry. No wonder they resented you.

Wouldn't it be cheaper and better for morale to hire a couple of temps to do the data entry?

Even better for morale, if temps truly could not be found, would be to advocate for everyone including the management above you to do the data entry. None of you are there to enter data, after all, so it's not like it's more appropriate for engineers to do it on weekends. The upper management would have maybe more incentive to get the proper temps located. And you go from goat to hero.
As I mentioned in another reply, this particular data entry job involved doing math at about college linear algebra level and writing SQL among other things. We got to this point by relying on one of the founders to do all the data entry. Suddenly three things happened: our system got more complex so the old tools no longer helped, we signed on a lot more customers, and the founder stepped away for a well deserved break. Thus, we were up a shit creek without a paddle. If the creation of the data entry tools was a highest priority, this would not have happened. However, being strapped for cash, we had to instead add customers, and also launch the more complex system to get paid on one of the bigger contracts. The price to pay was stalling of all development for a period of over a month to do data entry. Everybody that could, did help out but in the end only the dev team could do it all and do it properly. The high level lesson is to not take on this kind of technical debt. What I could have done to avoid it from where I was standing is still something I am figuring out.
Stepping in and highlighting the problem before it happens come to mind.

If you anticipated that such complexity was involved in data entry at any point, putting upper management in front of their responsibility might have helped, i.e. "how do you think dev morale will look like if they need to do data entry for weeks just so we can make a few more quick sales?"

I think this was my biggest mistake. I underestimated the problem and while I explained it to the upper management I did not push it hard enough for them to make it a number one priority.
Would it really have taken longer to automate it, then feed in the data than to do it by hand?

I ask because I have, when presented with similar tasks, spent the time learning how to do it in WSH (sendkey), doing it, then doing more productive things while the script ran.

So without going into too much detail, yes it would have taken longer. The reason is that we were solving quite a few non-trivial problems in terms of updating geographic road data. Just as an example, a small part of the data entry tools ended up being a road router similar to the one provided by Google Maps, but tuned to our use case. This tuning took quite a bit of work. Another piece was splitting the graph of all roads at each intersection. The algorithm here was simple enough but figuring that this was the right solution took a while.
There's an XKCD for that: http://www.xkcd.com/1319/
> Even better for morale, if temps truly could not be found, would be to advocate for everyone including the management above you to do the data entry.

As an employee, this strategy has always felt fake and look like make believe work. For example, a long time ago, during a previous firm's crunch time, we had the CTO sit and write code. The guy could write code but he was also not as familiar with the code base and it seemed like there were better things he could do with his time than make it seem like he was out there doing his best with the troops.

Having the CTO come in when he doesn't have to seems fake, and might be bad employee relations.

But having the CTO go golfing and spend time with his family while he urges employees work weekends is definitely bad employee relations.

You were in a losing situation from the start. You were selected to be the heavy, the patsy and the scapegoat all in one.

It is clear from what you have said that your people were overworked, deadlines were not reasonable and there were not enough proper employees. Yet management persisted with their existing paradigm and you got to be the one that bore the bad news to everyone so they all resented you.

The best you can do in that situation is exit. Which it sounds like you and others figured out.

Sleep well knowing you cared about the people and the results, it was upper managment that did not. They cared only about the money.

As a side note, I hear this excuse a lot, about how money will be lost if we don't do this bad thing or that. Money is brief, setting up the proper business practices is long term. Sure, there are temporary situations that require extra effort... but they are obvious and temporary.

Thanks. The money thing is tough. On the one hand, I do believe that the company had negative cash flow and was a few months away from closing the doors unless sales ramped up. On the other hand, part of the problem was that new upper management was brought in to replace the CEO who was not doing anything for the company and I believe they took quite a large salary, possibly enough to make take the company from positive cash flow to negative.

At the end of the day, the dev team pulled through and got product out the door, warts and all. This then enabled sales and other teams to get more clients on board and paying, which actually saved the company.

So the executive office was bleeding the company dry. You, as a middle manager, put in extra effort to save the company. As a result, you lost your middle manager job. You were replaced by three different people.

Were you rewarded in any way for your efforts?

I left on my own mostly out of frustration. I was compensated for my work and I own a tiny percentage of equity in a company that is still around. I generally believe that if you are getting paid to do something, you should do it to the best of your ability even if it is not exactly fair. After all you can always leave and that is what I did.
ah ha, i can very well relate to this. While i did not move out of the company i took a individual contributor role after a similar situation. i don't think you could have done anything different because when we are in that position and we manage the show the management thinks it is ok and you can. But when new manager comes on board he can easily put a proposal to the management which will be accepted because there is not a great expectation and new hires typically get a honeymoon period where they can analyze what is required for the optimal performance of the team. I think you will just do fine in large corporates where money is not an issue for projects.
It just sounds like you got fucked by upper management. It happens a lot. Sorry to hear it; don't take it too personally.