Ask HN: How to deal with 0.1X programmer colleagues?

51 points by startupfreak ↗ HN
I worked at tech-team-of-one startups for years. Now I'm working at a big organisation.

In the last sprint, I chalked up 41 story points. The rest of the team (3 other devs and a mostly hands-off tech lead) collectively achieved 9 story points. That's 1 medium-sized ticket each over the space of a fortnight. Everyone has a good excuse, but they ALWAYS have a good excuse.

It's driving me nuts. I'm a good coder, but this isn't about me being good, this is about them all being, on paper, completely ineffective. No one inside or outside the team seems to be batting an eyelid about this. I feel resentful and... confused.

It's hard to stay motivated when the bar is so low, but I would feel guilty slacking off all day. What do I do?

107 comments

[ 98.4 ms ] story [ 390 ms ] thread
I also work at a start-up, and I've heard from bigco friends that yes, it _really is that much slower at big companies_. Unfortunately I don't think there's much you can do besides be an ass-kicker and gather up some promotions, maybe?

Maybe some other startup-to-large-company folks will have interesting insights. I feel your pain, though. I'm also used to a fast environment, I can't imagine slowing down like that.

You don't get promoted this way, the reason these people get so little work done is often because they are working on getting promoted instead. Optics win and your ticket points is not it
This. Closing the most Jira tickets will get you from jr. to sr., but beyond that it's not a useful metric for promotion.
maybe just go back to a startup?
How can you be so sure all your colleagues are useless? Are they doing any important but non-flashy work (planning, documentation, cleanup, etc) that isn't captured by the "story point" metric, which is a pretty bad tool to gauge productivity anyway?
Keep in mind all of that important but non-flashy work can also be used as a cover for not doing anything of consequence. Yes, sometimes it is important, but 70% of the time when I see someone has been "planning" they've done absolutely jack... (Recent example: How can a PM plan a software engineering project without talking to the people actually doing the work? Then they wonder why the "plan" makes no sense...)
As a PM, I find it best to put together a straw man project plan before I talk with people, then revise it progressively as I talk with people. Not always, but it's often a good idea, particularly if the project crosses multiple departments or companies. Sometimes I can't get everyone in the room at the same time. Sometimes (often) people will see their own team's area of work as being the main focus, while I have to coordinate with other groups, while trying to minimise the "hurry up and slow down". Sometimes there is a need to get people started on the bits we know about and accept that other bits will need changing. And sometimes you need to get the person responsible to estimate the length of the piece of string, and putting up a wrong estimate is a good way to get an answer.

I'm sure everyone is thinking "agile" now. Yes, I was in to that back when XP was the thing. But it only works for some sorts of project, typically where there is only a single company developing a project, and the customer is internal. If you have a big contract with specific deliverables, a contractual time line, multiple organisations, and perhaps large non-sw parts, you often find that you have to start planning even before the developers are engaged, then accept that some of your assumptions will be wrong.

Realistically shouldn't those tasks be given story points too if they're done separaterly from the team?
I'm not sure why you're getting downvoted. At least when I was working for a contractor in the automotive industry, these kind of tasks where measured in story-points as well since story points roughly translate into paychecks.
I hear your point but I wouldn't dismiss the op point, those situations do happen.

In this case the problem could be just miscommunication, it's worth asking some help from the team

Everyone works slowly at a big company. What you should do is try to see how you can leverage your contributions to grow faster. People not only work very slowly at big companies, but saying something like that might land you in HR issues. People will work at different pace, and the company has decided that their pace is acceptable too. Just ensure that you get credit for your own work and rise fast.
You’re probably optimizing for the wrong metrics. Look at the people that are promoted quickly and copy what they are doing.

It probably isn’t number of JIRA tickets.

This is the right answer if your goal is make more money (which it probably should be). Other right answer is find a place that rewards based on JIRA tickets if you want to be a highly productive programmer.
This makes a few assumptions while not answering the question or even really understanding what OP has to say.

They don't seem to be bothered about promotion. More that they think they're doing a lot more work than everyone else.

I guess I don't understand the frustration. Why does OP care if they are "working" more than everyone else?
It's quite common for high performers to be annoyed by low performers. Often, they feel like they're having to cover for the low performers and are doing work they would normally not have to do if it wasn't for low performers.
Clearly OP is able to complete 41 points per week. If low performers also did 41 points per week, are you saying OP wouldn't do 41 points per week?

Assuming tasks are unlimited, to OP's perspective, the entire team should be doing 41 points. It isn't that he is doing 'their' work.

I think OP is upset that he delivers more work, but is still paid the same. Companies reward the extra work via promotions and bonuses.

You're working too hard. And you're stupid. You set your own high watermark super high, now you can't back it off without getting questions directed at you.

At no point in your career is holding your peers to account part of the role of a developer. Get that through your skull quickly.

Either find a job where you're under the hammer more and the comp is what you want or learn to live with this. Or work on your own projects on the side. Do anything but what you are doing.

The best employees don't get promoted or celebrated for working super hard. I've never yet met one who was.

Cynical take: being this much more effective than their colleagues won't get OP promoted, but it might get the rest of the team fired.
(comment deleted)
That would be unlikely. If OP is the exception, not the rule, of their hires, they aren't going to replace the whole team with people like OP. And if they are smart, they aren't going to fire a whole team and rely on one person. Especially one who might be showing signs of frustration being at the company (though, yes, there are many examples in which companies have done this). Perhaps the team is downsized, but "the rest of the team" probably won't be outright fired.
You are asking how to change the culture at a big organization. It is not possible unless you are C-Suite. This is true of most smaller organizations as well, though in smaller organizations the C-Suite may be more accessible.

This is the time to work on yourself. Do not let your team change you or slow you down. Do the work required, improve your skills, and go find a better team.

By the way, it sounds like you are frustrated with how companies work in general. You should read this excellent essay: https://www.ribbonfarm.com/2009/10/07/the-gervais-principle-....

Under this loser/clueless/sociopath framework, the skilled engineers at many organizations (including yours, it seems) simply are highly paid "losers" with cushy benefits (I do not mean this as a personal insult!). Your colleagues may have an experience-driven grasp of this and are acting rationally, in a way.

You should ask yourself what you are doing to help them become as good as you. And also, whether their poor performance is your fault.

If nothing else helps and you don't want to be the best guy, go work in another place with better people.

This is generally a management problem, and there is probably nothing you can do about it. Enjoy your free time: pick up some new skills, manage your stock portfolio, read a book, etc.
Take more time into learning technologies and stuff you find fun and call it work. It actually is work, but employers don't tend to see that. Make coding fun for yourself.
Talk to your manager or find a mentor within the company and ask for advice. Rather than framing it as “my colleges are all slackers” frame it as “what am I missing?” At big tech orgs success can mean a lot more than coding. It’s possible you are not doing things the others are doing… writing specs, documenting, interviewing, planning, etc. the bigger the engineering org the more time spent communicating. It may be they are doing more testing than you as well. It may be that this isn’t for you and you should return to the world of tiny teams where you really can code all day and “feel” much more productive because the communication overhead is so low.
Do something more ambitious that is bigger and more impactful than closing JIRA tickets.
How are you sure your points are actually good/valid/roughly correct?
Maybe you can do similar amount of feature/planned work as them then for the rest do off-the-record speeding up the compile times, or something else that could speed up the rest of the team.
The fact that you are focusing on story points should tell you that ALL of you are doing garbage work.
Your mistake is caring. Are you being rewarded for working much harder than your colleagues? Are they being punished for working hardly at all? Why are you working hard for the benefit of the company's bottom line? It's a big company, why do you care about its bottom line?

Your colleagues have the right attitude. They are doing the absolute bare minimum to collect a paycheck and go home. I suggest you do the same.

Caring about your job is only acceptable if your labor is sufficiently rewarded, you own the company, or if it's some kind of non-profit or public service job that actually benefits society. If you're working for a for-profit organization, the goal is not to work hard, but to be exploited as little as possible.

I need a job I can care about or else I struggle to do the work.
Right now this is unbearable for you but getting angry with your colleagues is just going to make it unbearable for everyone.

Spending your passion on your own projects or OSS will yield you better returns 9 times out of 10.

You confused me for OP.

I spend most of my free time with housework, socializing and hobbies but there just isn't enough meaningful stuff I care to do outside of working hours to overcome the 8 hours a day of meaningless work I do for my employer.

It’s clear other people are able to manage but I have been trying for years and all I ever manage to get out of it is depression.

I just can't do meaningless work for 8 hours a day.

One can care about their job without caring what their peers are doing. Do your work, do it the best you can, and let management deal with everyone else (or not).
I made the same "mistake" this person did. Companies didn't reward me. But you know what? I kept improving, they didn't, and I was eventually able to launch my own company while they stay stuck in that job. Obviously companies should reward us for doing better, but, when they don't it still doesn't mean there's no potential benefit from "practicing" doing good work while at work.
That's a great solution to the "mistake" for you. And while it's great to be able to launch and run your own company, not everyone wants the stress that comes with that. I've also "practiced" skills at work to improve myself, though I haven't launched a company.

I've also worked with many colleagues who were great at their jobs, but that's all it was for them - a job. Their passions (which was sometimes just their family) lied elsewhere. They were just working to support that and were perfectly happy with their lives. I wouldn't try to take that from them.

> Caring about your job is only acceptable if…

This suggests that it's unacceptable to care about doing your job well because you enjoy it or simply because your morals compel you to work hard at what you do. I don't think there's anything wrong with someone choosing to work hard for these reasons if that's their choice.

This is a terrible take, if you are passionate about your work then those 8 hours go a whole lot quicker. If you’re not passionate then I would question if the position is a good fit
People have to eat. Not everyone has a passion in the working realm. My passion would be to make music. I don't think I have the commercial instinct or drive to make a living out of it. Also, that might just destroy my passion.

But you're right though, when I am in flow, those 8 hours go by a lot quicker :)

I used to be passionate about coding at work, that gave me my first job, then my second, then some startups, big cos, and so on. At some point it doesn't really matter to try to keep yourself passionate about your job, you get enough experience, and you've seen how the maturity cycle of almost any tech company goes, in a general sense. At that point my passion for coding as a job disappeared, one just need to perform it well, professionally, and deliver what's expected of you for being paid to do it.

Is it nicer to work in a product/organisation you are passionate about? Of course, it doesn't mean this passion will last, or that it will be rewarded, or that it will even be healthy for you (one of the jobs I burned out from was exactly the one I was the most passionate about).

Building products follows the same patterns, even if the underlying technologies are different, or if you work on a product in a very different market/industry. It becomes all more of the same: store data somewhere, pull data from somewhere, transform some data to some other format, write some business logic, develop an interface, develop an application (web, desktop, mobile, embedded), deploy your systems at some server, monitor your systems (or implement telemetry if working embedded). You don't need to be passionate to work like that, you just need to be professional.

By doing that you also avoid the common pitfall of being exploited because of your passion.

I don't think you necessarily disagree with them. The issue is most people don't have the option to find a position that's a good fit. Or you find out the companies with a mission you're passionate about have a work culture that you're not.

If you're only working places you're passionate about, you're really winnowing the field of possible employers. I say this as someone who's working at a company I generally respect and am passionate about the product of - I think more than most of my friends who work in the field are about their work. If I wanted another job, there's not a huge pool of companies I would even want to apply to.

If I lose my job, or quit, then I'm often going to need to apply and work somewhere that's not a good fit. I can hold out for a bit without a job, but there's no promise that another company I'm also passionate about is hiring for any position I'm qualified for. At the end of the day, I'd generally rather be programming somewhere I don't love than working as a bartender or delivery driver.

> Your colleagues have the right attitude. They are doing the absolute bare minimum to collect a paycheck and go home. I suggest you do the same.

We don't know that. That's one stereotype theory that comes to mind when we hear "big company", but that's not the only plausible explanation.

Also, some people told to do the bare minimum at their jobs will think "Alrighty!" But the same advice could be very counterproductive for people who take pride in their craft or professionalism, or who want to see the mission happen. Those people should be nudged towards improving their situation (either at the current place, or somewhere else), not destroying their strengths.

Passion can be good, but it must also be measured. I was in a similar situation for several years where I ended up running the show. Was super passionate about the project and doing all the things...

Ended up horribly burnt out, to the point that I'm still struggling with the idea of working 2 years later.

A formula 1 race car is _much_ faster than a freight truck. However a freight truck can deliver a lot more goods across the country than an F1 car. Which is your big organization optimizing for?
If you can convince them to sit upside down while they work then you can turn them into a 10x programmer. The inverse of 0.1 = 10!
Zoom out. Excluding the tech stack, do you like and care about the product being built?

If you do, then that should be a sufficient motivator. If not, then prepare your exit.

Other questions to consider: Do you need the paycheck? Is this position beneficial to your long term career growth?

Mature companies can't afford being as fast as startups simply because their different size causes 1) a completely different level of decision inertia, 2) a completely different level of communication issues.

You're not working with 0.1X colleagues, you're working at a 0.1X company. If that's too slow for you but acceptable for your manager, talk with them about it; in the best case, consider yourself free to spend the henceforth-saved time doing something else.

Find a few more jobs like this and retire at 40.
Work at whatever pace you feel like working and don’t pay attention to what others do. Leave to go somewhere where 5x productivity is rewarded. Get recognized for your immense output and get promoted or assigned to work on things that aren’t getting done otherwise.

The members of your team are not reporting to you, so it isn’t your problem, or maybe isn’t a problem at all and the “big” company has enough money and people to get done what needs to get done at whatever pace is normal to them.

You seem to have a misplaced sense of being part of a team when in reality you are a hired resource and should act accordingly
Move to a different environment where you feel like everyone else is more competent than you
Why do you care ? Do your work and get paid, the rest is none of your problem. If you care just bounce somewhere else, you won't change them.

It's a job, if the execs are happy with the output that's enough, not everyone gets a hard on from typing code all day long.