3 ms·
I totally know that feeling. This is why I really cherish my current, by now 3 years old, job because sort of the opposite exists here. In fact, if I forget som
by hangonhn 5y ago
I totally know that feeling. This is why I really cherish my current, by now 3 years old, job because sort of the opposite exists here. In fact, if I forget sometimes or make a mistake, my coworkers are more likely to fix it for me in the wiki or docs than they are to use it to complain or stop me from doing something. Working in a helpful and collaborative environment has had an enormous quality of life improvement for me. It is also the most productive teams I've ever worked on. I'm not writing this to gloat or anything but offer up something I didn't know before working here: Don't just hire for talent; do not hire jerks no matter how good they are as individuals. Software engineering is an inherently collaborative venture. When building an engineering team, really do build a team instead of a collection of individuals. It's fine for engineers to be critical but don't just stop there. Find fault but also offer up a solution to help the project move forward. I can't work in the type of environment the author described anymore. Now that I know functional, collaborative teams exist I will always want to be on one.
- camjohnson26 5y agoI think programming attracts a certain type of perfectionist and controlling personality that has trouble admitting that nothing is ever going to be perfect. It’s basically narcissism where the only source of truth is whatever this person says it is, and they judge other people for not doing things the same way they would. In reality no documentation is ever complete and all code has major flaws. Using that to tear down other people and raise yourself up is counter productive to everyone.
- nuancebydefault 5y agoIndeed, perfect is the enemy of good! Once worked with a purist (think uber-perfectionist) and there is just no way to handle that. Somewhat related, managers often think things are more simple than they really are, it takes a lot of effort to make them understand.
- uoaei 5y agoColloquially those people are called "bullshitters", mired in rationalization that is dressed up as rationality.
- imbnwa 5y agoShould add that this sort of character may or may not be a competent engineer, so not only the competent type who makes stringent demands for perfection, but also the incompetent type who fights tooth and nail to maintain the status quo that they have a grasp on and feel empowered by.
- vlunkr 5y agoI'm painfully aware of this type of developer. Usually they really are very smart and talented, which is what allows them to act this way. In my experience, they are initially respected, then they eventually lose that through constant conflict and then leave with a bad reputation.
- Supermancho 5y agoAttributes of developers always include Hubris and Laziness. There are lots of startup-born developers who are not perfectionist by any means.
- switchbak 5y agoThat sums up pretty well how I acted right out of school. Immature, controlling, impatient and off putting. It took a lot of humble reflection to see that I was being a pain in the ass, and to take the steps to be a better team mate. In my case it didn't help that our Dev manager was insufferable himself, but that's no excuse. Now people complain that I'm not assertive enough, go figure :)
- akiselev 5y ago> In my case it didn't help that our Dev manager was insufferable himself, but that's no excuse. Maybe it did. I seem to make the most progress when confronted with the same behavior that I exhibit, which sooner or later leads to asking “is this really how I make other people feel when I act like this person?” (The answer is almost always yes)
- CobrastanJorji 5y agoAgreed. A brilliant jerk is definitely worse than a below average good person. I can deal with lazy, I can deal with lack of skill, I can deal with lack of education. Jerks or liars, though, they're net negatives, sometimes greatly so.