Live data from Hacker News

Ask HN: How to deal with incompetent people

news.ycombinator.com

91–100 of 139 posts

Re: Ask HN: How to deal with incompetent people

#91
In response to/summary of some of the other comments, to keep it brief:

1) Your colleague is not managing. They are politicking. A good manager gives credit where due and listens to the people doing the work.

2) You don’t want to work in a culture that rewards politics over solid engineering. They need to coexist, by staying in their own lanes.

3) It’s too late with this role. Move on and bring these lessons with you.

The alternative is a fairly ugly and costly series of discussions and confrontations with the company during which you will need to make the argument that what you say is happening is happening and you will need to change the company culture along the way in order to win those battles.

Not worth your time or energy.

Re: Ask HN: How to deal with incompetent people

#92
Think of yourself removed from the situation, perhaps think of yourself meeting these same people in another context, and realize that it's the time and the place, rather than the people, that distorts things enough such that you are in conflict.

For a long time I thought of such people as my enemies. But it is the context that makes them so.

A lot of them may not have the maturity to come to these conclusions, and some folks on the periphery may take their side too. That's OK. You know the truth for yourself.

Change jobs if you have to. It's not great to keep working for people who hold up these illusions.

Re: Ask HN: How to deal with incompetent people

#93

I toiled like you seem to be for a long time, cleaning up technical debt, and writing well-architected (but very time-consuming) code. I learned a few things (things I have to remind myself of often, when I too feel the anger rising at people who don't place the same priority on those things): The business is almost never paying to you clean up technical debt. They are paying you to generate revenue (or save costs).…

You don't get to do it right until version 3.

You write version 1 quick and dirty to get it out the door fast. Version 1 is written to acquire customers. You write version 2 to patch over all the problems of version 1. Version 2 is written to retain customers, but it ends up as an unmaintainable mess.

In version 3, you finally get to throw out the old code base and take the time to write clean, architected, maintainable code. Version 3 is written to attract and retain developers. Once it reaches parity with version 2, you can do the "Big Migration", and then start adding features. Version 4 and up are all built on 3, but barely anyone ever gets that far.

Note that this won't match up with the version numbers written into the software. You can't do anything about those, because marketing and management tells you what they have to be. Anecdotally, most software projects never progress past version 2, no matter how high their marketing numbers go. This is because version 3 does not directly add to the bottom line. It adds to developer productivity, and if the company cannot measure the value of developer productivity already, there will never be a business case for it. We all want to work on version 1 or version 3, because version 2 is a never-ending nightmare slog of one problem after another, but version 2 is that gaping hole that businesses will just keep throwing their money into, forever. And version 4 is easy and boring, where the only hard work is in upholding the process that is keeping the less experienced coders from cluttering up the place.

OP's mistake was in writing version 3 before telling management why that would be a "Good Idea That Saves Money" and seeking their mandate, and in not owning the successful completion as a major accomplishment. OP's current manager always understood that people run the company, not the code. That's not incompetent; it's a competence OP doesn't currently understand.

Re: Ask HN: How to deal with incompetent people

#94
post #23

Bluntly? You're letting anger and resentment cloud your judgment. Your colleague is clearly not incompetent. He just has different goals from you. He probably wanted to shift from a technical role to a managerial role, and he succeeded. That's not incompetent! And that's probably because he recognized his talents are better with people than with technology. So be happy for his success, rather than resentful of his pe…

Nothing big ever got built by a bunch of self-centered loud mouths either. And these are typically the types that find themselves in these roles. I think you're making a big leap saying "let them deal with the frustrations of relationships". Nowhere in OP's post does he mention disliking people. In fact he seems proud of the fact that people come to him when they have questions. You need more than pure technical acum…

This guy right here is one of the few comments in this thread that "get it". OP seems genuinely interested in the success of the team, where as who he's talking about, seemingly at least, is interested in his own success - this isn't bad, but it generally goes against the grain of building a team of happy campers.

As @eriktate said, you either make some noise because you care, or you realize that the people above this person don't understand what makes great technical leadership actually great, and you leave.

Re: Ask HN: How to deal with incompetent people

#95
post #88

Earlier quoted context omitted.

just missing capital letters and punctuation (maybe stream of consciousness posting isn't the way to go)

Are you aware that it's difficult to get your message from such form and some people might ignore your posts?

I guess that's a risk, opaqueness was not my intention, thank you for the heads up.

Re: Ask HN: How to deal with incompetent people

#96
post #77

Earlier quoted context omitted.

If the OP is an unreliable narrator, then you shouldn't assume the guy isn't a snake, either. I have seen the case you're wary of: a technical, but poorly communicating, employee that resents the success of a well-meaning, less technical but better communicating coworker. I have seen good people like that, and I have seen snakes that pull the "we/I" as in the OP's story.

Never attribute to malice what can be explained by stupidity. Generally, I don't see a lot of these "snakes" out in the real world, but I see a tremendous amount of misunderstandings, resentment, and righteous indignation. As I told the OP elsewhere, we're all the hero of our own stories, and everyone we disagree with is a villain. But ask the villain, and they think they're the hero. It's human nature. We don't want…

Not OP or in this chain, but I'm surprised you say this (Rarely see snakes.)

I have nothing to complain about. I've done very well career wise, and have no reason to beef with any of these people. But at the same time, I've concretely seen individuals lie outright, blackmail, threaten, insult, and bully their way to success. That you say you rarely see this makes me raise an eyebrow. I've gone through the "maybe I'm just seeing evil where there isn't any" thought process many times, but after watching multiple instances of negative actors take advantage of others while I was a disinterested third party, I can't but have conviction. People will abuse others when it serves them and they think they can get away with it, and in situations where power dynamics, visibility and relationships (so soft, highly non-fungible elements) drive your career, someone in power can get away with a LOT, even via only subtlety misaligning incentives.

Let me be clear, this is not some dominating majority of the population, and one should not start seeing enemies around every corner, but I've seen enough that instructing a junior engineer to watch out for those who would seek to take advantage of them seems very pragmatic to my eyes.

Re: Ask HN: How to deal with incompetent people

#97
I worked at a fortune 500 where IT was a support role and we had lots of people who were not that technically proficient. I really did have to deal with people who were incompetent programmers. Rookie mistake all over the place. Global variables in JavaScript. Check. Not using version control. Check.

What you describe is not incompetence at all. It just sounds like this person has aspirations for management and you don't. Personally, I believe that it's best to lead from the front meaning that one should demonstrate to the people he/she is trying to lead that one really knows their stuff.

That being said, it sounds like now this person actually is responsible for managing you now so it appears their tactics paid off. Unless this person is asking you to write bad code or implement designs that don't make sense, there's really no issue other than your resentment towards this person. you got to let it go. That stuff is poison.

Re: Ask HN: How to deal with incompetent people

#98
post #23

Bluntly? You're letting anger and resentment cloud your judgment. Your colleague is clearly not incompetent. He just has different goals from you. He probably wanted to shift from a technical role to a managerial role, and he succeeded. That's not incompetent! And that's probably because he recognized his talents are better with people than with technology. So be happy for his success, rather than resentful of his pe…

Nothing big ever got built by a bunch of self-centered loud mouths either. And these are typically the types that find themselves in these roles. I think you're making a big leap saying "let them deal with the frustrations of relationships". Nowhere in OP's post does he mention disliking people. In fact he seems proud of the fact that people come to him when they have questions. You need more than pure technical acum…

The OP never made the case that the person was incompetent though. I'm not seeing any red flags other than the OPs resentment. I understand where he's coming from. It's a struggle that many technical-minded folks go through in a business environment. When "I just wanna build cool stuff" clashes with "How do we manage resources efficiently to meet the deadline?"

Re: Ask HN: How to deal with incompetent people

#99

I toiled like you seem to be for a long time, cleaning up technical debt, and writing well-architected (but very time-consuming) code. I learned a few things (things I have to remind myself of often, when I too feel the anger rising at people who don't place the same priority on those things): The business is almost never paying to you clean up technical debt. They are paying you to generate revenue (or save costs).…

There's so much wisdom in the post.

>The business is almost never paying to you clean up technical debt. They are paying you to generate revenue (or save costs). Period.

So true. Once you're in enterprise nobody cares that you wrote the connection pool yourself (which I did and nobody gave a darn). I did 5 years in enterprise and decided that was enough for a lifetime.

>Nobody gets credit for building a system that never goes down.

This happened to me. I designed and wrote a subsystem that is used by every GM dealership around the world and that thing never went down meanwhile my colleagues project was always down yet folks from the other team were the ones that got promoted.

Re: Ask HN: How to deal with incompetent people

#100
+10,000,000 the comment below.

If you feel you have not received recognition or reward in proportion to your efforts while in the employment of this company, its time to 1) start looking elsewhere for an environment more in sync with your own personal values and 2) accept that for >90% of all economic interactions, perception = reality and adjust your attitude accordingly.

"clavalle 1 hour ago | unvote [-]

I never heard anything about incompetence in your description. Technical debt can build up for myriad reasons not related much to competence.

What I would suggest is not to approach this situation as how you can wall off or otherwise attack this person but, instead as a life lesson on the importance of interpersonal relationships and politics.

Politics are a fact of life. Humans are social creatures. All things being equal, and some ways even when not equal, those that are proficient in interpersonal relations will come out ahead. Grok that fact. There is no escape from it.

Good. Now that unpleasantness is out of the way. On to how to cope. Scratch that, /thrive/, in an environment of people doing people things when you are a technical person.

First, information. That is the lifeblood of many systems and politics is no different. Simply make sure important information is conveyed to the right people at the right time.

You use the example that this fellow was able to take credit for your work. Had you passed the information of what you were doing and why it was important to the right people, he would have simply looked foolish to try to take credit.

It can be uncomfortable, to toot your own horn, but it is necessary. Additionally, it can be important to the organization. Assuming you are creating value, it is important that decision-makers know that so they can make the correct decisions. Don't feel bad. Toot away.

Building relationships is critically important in almost every human endeavor. Get good at it. It is a skill like any other.

The target of your annoyance became a manager because he built up those skills and made it known.

Build your skills and make it known. It is just that simple."

Post reply on HN