Hacker News new | past | comments | ask | show | jobs | submit login
A Response to Jacob Kaplan-Moss’s “Incompetent but Nice” (glyph.im)
175 points by genericlemon24 on March 30, 2023 | hide | past | favorite | 121 comments



ADHD is probably the problem under this behaviour.

Can’t complete tasks and underperform but want to help other, be part of the team. People with ADHD have developed coping behaviour to fit in but have very low control on their executive functions, they can’t keep working on something that doesn’t catch their attention. It’s very hard to understand for someone who don’t have the problem "why can’t they just do it!"

When the job is new, the team is new it’s all very interesting but as routine and boredom set in the get unable to stay on the task. They hate themselves for not doing what they should do and want to do the right thing but are unable. It’s very stressful and often lead to burnout.

Medication help, so is meditation, omega-3, better/more sleep, exercice and jobs that have movement and a lot of change and creativity.


This sounds a lot like me. I do get a TON done, am always working hard, but I can’t single thread to save my soul.

I have a tendency to work on 6+ tickets at the same time which has in the past clashed with what management has wanted - clean single threaded work that looks nice on a kanban board. For instance I have a project right now that in linear time has taken about a week but has taken well over a month in actuality because I am constantly jumping around.

I literally don’t even mean to, I try to stay on task but will get an idea for a difference project and switch branches without even thinking about it.

I don’t know that I would want to medicate it, I don’t have a problem with it and my net output is very good even if individual tasks take longer than “they should”. I see it as just an alternate way of thinking/working.

I just wish we’d stop trying to jam people into workflows. You’re missing out on potential.


>> clean single threaded work that looks nice on a kanban board

It's pretty unfair to characterize the demand as a desire to look nice, when in your next sentence you admit that a week task has taken you more than a month. I don't give a shit about the kanban board but I do care about work in progress. There's no value until you finish, and I mean done-done. What you consider multi-threading is micro time slicing, with significant context switching costs.

The funny thing is you probably consider your approach agile, while me, an old fart in management, see a giant pile of have half-finished widgets collecting dust. Until you adopt my old-fashioned approach of single threaded work you'll never be successful with the newer approaches of continual delivery, and constant, small-scale, non-scary releases.


> when in your next sentence you admit that a week task has taken you more than a month

The word 'admit' suggests you had to drag it out of him, that he's hiding slow progress behind a smoke screen of busy work like opening many tickets. That month-long background task wouldn't have had any work done otherwise so it's unfair to call it delayed.

> Until you adopt my old-fashioned approach of single threaded work

That's the problem with people who think they're technical managing the actual workers, they always end up micromanaging and slicing things into shapes that don't fit. The world isn't single threaded and changes usually aren't entirely unrelated.

You should change your management style to simply specifying the business goals you want and asking for as many to be completed as possible. Let your team do what works best.

> The funny thing is you probably consider your approach agile

No, because all those labels just encourage people to pick a style and do that thing regardless of circumstances. In a real project I've got to coordinate everything with someone. I can't push code without a review, I can't code to a team's API without sending them the spec for review, etc. During these times I could facebook like some others do, but instead I "multi-task" by doing other work.

Also, it's not very obvious from simple metrics like number of lines of code committed which work is hard and which is simple fluff which can be fixed without a distraction. A change to a logger might percolate through every method call and appear big and complex despite having been made in seconds by the IDE. If I was implementing a new feature I'd probably want to update the logging style first rather than coding to the old standard, so I'd make the big change (probably covered by another ticket) because I'm already in there and have to test that stuff anyways.

> There's no value until you finish, and I mean done-done.

As I said, there are a lot of down periods in that process. It feels like you think you know some deep secret ("only delivered features count!") that you think you can't get people to acknowledge.

This is actually like day-one stuff in engineering school, that you need to measure benefit of your work in delivered advantages so done isn't done until it's in use. But there's a lot of other stuff as well, such as not delivering something until it's safe to use even if it works in test scenarios.

You should have a discussion with your team about your idea and brainstorm where it fits into a full product development cycle and what has to be considered. I imagine you will find they don't discount it, but they have a wider view of the process than your business focused one, and that they have to balance all of this while also managing your perceptions.


The problem with a lot of stuff in flight and nothing shipped is it’s extremely expensive. You’re basically holding onto inventory that isn’t able to be sold. It isn’t people jamming workflows, it’s economics.


Agreed. Sometimes I have multiple outstanding pull requests against the same code for features different enough to be different tasks. It rarely works out well but for whatever reason I don't notice it happening until the end.

Alternatives are: overloading pull requests with multiple distinct tasks (bad), sitting on my hands (bad), updating the code for each PR as others are merged (bad, error prone), or creating pull requests that merge into other branches pending review (less bad but annoying to maintain). I tend to do the latter.


I often have multiple tickets in-flight but it's because some pieces are blocked and/or I'm waiting on a gate to open or I have some scheduling situation I'm dealing with.

Today and tomorrow I'm working on a long running (started 2 weeks ago, will run for the coming months if not the remainder of this year) legacy system modernization project.

On Monday, I have maintenance work I'm scheduling that is either going to take an hour or 2 days and I won't know til I press the proverbial button.

These two are on top of all of the unplanned work that comes up, some of which I'm seeing this morning before I technically start work. For the unplanned work, I'll have to double back and make tickets to capture what was done at the end of the day, but right now that looks like 3 separate pieces of work today.

So, I think its safe to say that I'll be grappling with 4 tickets today, with a fifth in the back of my mind, and making sure the product team is on top of communication around the internal outage the team will have on Monday.

I also have to get my kids to daycare/preschool, get myself to physical therapy, and then pick the kids up.

I feel like I probably do have undiagnosed ADHD but maybe I'm always so busy moving from task to task that it doesn't have a lot of opportunity to allow, for want of a better word, procrastination to really set in?


A need to multi-task is 100% ADHD. Our (inattentive) ADHD brains are like a car engine that will stall if it's allowed to idle, and so we have to keep the revs up in order for it to keep running. For us inattentive ADHD people, the meds have the effect of raising our engine's idle speed so we don't have to keep our foot on the pedal through multi-tasking just to stay engaged.

It's easy to rationalize this behaviour, and it can feel amazing when you're on top of everything, but it can take a toll and end up in burn-out or disaster when all those (to mix metaphors) plates you've kept spinning eventually fall.


I like this explanation. Lot’s of multitasking, over consumptions of information and procrastination on my side.

With med it’s like I am more calm and energized at the same time. Made me see how most people see the world for the first time.


The danger is that multitasking like that can make you FEEL like you're getting a ton of things done while you're really just spinning wheels in place. I'm not saying that's what is happening to you. You may have data to back up what you're saying. But there could be a parallel in some cases to moneyball, which exposed how intuition and bias had led to suboptimal decisions through false perceptions.


If you're a small enough team, this doesn't matter. But if someone else - whether a single dev or another team - depends on your work then you run the real risk of being a bottleneck to other people and the business.

At that point all the "potential" in the world means jack if we wanted to ship in June but pushed back to August.


Missed Potential is the name of the band featuring everyone with ADHD who was called "smart but unmotivated" by their teachers, never got tested, and never derived the benefits of treatment. You're free to do whatever you want, but if someone in a wheelchair refused a simple surgery that would fix their problem, and said that people trying to help them walk were "jamming them into workflows", you'd really think that maybe the person in the wheelchair should get looked at.


As someone who was diagnosed in my 30s, used medication for about eight years, then got off of it for about three years, I'm going to offer another viewpoint. I am grateful for the clarity I got with the meds, but something always felt off and I definitely talked too much.

I finally decided to get back off meds, and my anxiety really subsided. By that time, I had built a pretty effective external structure of calendar, reminders, etc. to handle the ADHD aspects of my brain, but without the anxiety to also deal with (which ramped up my ADHD exponentially), the ADHD is totally manageable and I don't feel so out of sorts and, for lack of a better term, "domesticated" into being what corporate America thinks they want.

I get along just fine, and I attribute a lot of that to finding a job I enjoy and having a boss who is patient with my unpredictable, but important contributions.


If you've been on medication, and know the effects of it on you well, and you're able to put systems in place to overcome the shortcomings this legally recognized disability has afflicted you with (as well as the blessings), then absolutely be off medication as you please. Tis your life to live! But for those that haven't been on medication for extended periods, or even just tried medication at all, for whatever reason, be it fear pushed by anti-medication zealots, or an inability to access it; for those that are tired of their life failing for reasons that everybody else seems to just be able to do, medication is, sometimes literally, a lifesaver.


Yes, I agree with you. I am grateful for the short-term stability I gained from the meds so that I could get things straightened out and back on track, but after awhile, the juice wasn't worth the squeeze, and everything seems to be going pretty well without them.


Anxiety is really the crux of it. My psych prescribing anti-anxiety meds was life changing!


I hear this all the time, and these workplace-focused descriptions of "phases of underperformance" really apply to me, but I don't think it's ADHD. I can focus on all sorts of things when I try, and when I look up symptoms of ADHD, maybe just 5% apply to me.

For me, I've joined new teams and crushed it for a few weeks where it was at least expected performance, but then I quickly fall off a cliff for seemingly no reason. Anxiety compounds this, and I can identify why I've sometimes been slow to crawl out, but the initial fall is always difficult to diagnose.


A frequent refrain from parents of kids diagnosed with ADHD: "My kid doesn't have problems with attention! He can play a video game for 10 hours straight! I have to tell him to go to the bathroom!"

It's actually misnamed and many professionals are trying to shift the name to "Executive Function Disorder".

The dysregulation swings both ways: can't focus on uninteresting things, but hyperfocus on interesting things.

You might want to do some more research, because the resulting anxiety that you also mentioned is almost always co-morbid with ADHD.

--a fellow diagnosed-as-an-adult ADHD guy who didn't know that was my problem until I was in my mid 30s.

P.S. another common sign: "Johnny is a delight to have in class, but he's not working to his potential." or "Johnny gets all of his work done quickly and it's stellar work, but then he is a frequent distraction to those around him." or "Class clown who is not working to potential."


> "Johnny gets all of his work done quickly and it's stellar work, but then he is a frequent distraction to those around him."

Yep, a variant on bright/"gifted" + ADHD presentation. ADHD as fuck, but smart enough that they get by kinda OK-ish regardless, and maybe even excel... until, perhaps, one day, that's not enough anymore and everything falls apart. The intelligence masks the ADHD enough that it might go undiagnosed and untreated for a long time.

Fortunately, spotting these kinds of "twice exceptional" situations is a big focus in modern gifted education, so that's getting a bit better.


> It's actually misnamed and many professionals are trying to shift the name to "Executive Function Disorder".

The way I describe it in a few words: focus and motivation are outside my control. I have no say in how they operate and what activates them.


I was diagnosed ADD (or what would now be called inattentive ADHD) in my 30s. But the testing results were not clear, in part because I'd developed a lifetime of coping mechanisms and skills that allow me to behave in non-ADHD ways through force of will. If I look back at my primary school report cards, they are a mixture of both gifted and below-average performance with teacher comments like "Does amazing work when he applies himself".

That sudden lack of motivation or drop in performance on tasks that we previously excelled at is also classic ADHD.

Anxiety is often a comorbidity, stemming from a feeling of inconsistent failure and lack of control. Though my understanding is that anxiety may be more present in women sufferers of ADHD where the disease manifests differently than in men.

All of this to say that you may feel like a DSM definition of ADHD doesn't map onto your experience, but that may be because you're an adult who has a lifetime of adaptation.


I'll be 60 in a few months and looking back I've tended to think that anxiety has been the main thing that held me back in my career, but I can also relate to the post above where they say they do great in the early days of a job/project, but as time goes on find it more and more difficult to stay engaged. I guess I would think this is caused by anxiety in my case, but now I'm wondering if maybe there isn't more going on. I also got mixed results in school: gifted in subjects I liked, average/below averages performance in subjects I didn't care much about. So maybe there's always been a bit of an issue, but I also tend to think that it's much worse since the advent of smart phones - I think there may be a lot of us who were either not ADHD or just on the edge of being ADHD that have been pushed over the edge by being constantly connected.


Yes, my understanding is that some people present with anxiety (and/or depression), and that anxiety will become the focus of treatment by their doctor or psychologist, when in fact the anxiety stems from the undiagnosed ADHD. For these people, treating the anxiety alone isn't very effective, compared to getting an ADHD diagnosis and treatment plan that also has a positive impact on the anxiety symptoms.

Anecdotally I've seen this scenario play out in my own family.


This whole thread has been a gut punch. My sister and her kid were recently diagnosed with ADHD and combining that fact with what has been described here I need to go see someone myself I think.

I have been on the anxiety treatment path before and what you describe rings true with me.


> For me, I've joined new teams and crushed it for a few weeks where it was at least expected performance, but then I quickly fall off a cliff for seemingly no reason. Anxiety compounds this, and I can identify why I've sometimes been slow to crawl out, but the initial fall is always difficult to diagnose.

I think often this is due to the fact that doing a good job isn't noticed or rewarded.

Sometimes the intrinsic motivation of learning a new skill, tool, or environment, is reward enough. If you're new on a project or job, you might think that being a high performer will garner respect, praise, and promotions.

However... if you consistently perform well and management can't (or won't) recognize this in some tangible way, that's a surefire way to kill motivation.


> maybe just 5% apply to me.

The clinical descriptions of these sorts of things are evolving; first it was ADD, then it was ADHD, now it's often talked about as three things, ADHD-H (hyperactive), ADHD-I (impulsive), and ADHD-C (combined).

Furthermore, sometimes folks have developed coping mechanisms, you may have a handle on behaviors in some context, but if circumstances change, you may not feel that way anymore.

Then again, you also just plain may not have it, it's true.


I think that one SlateStarCodex post about modern office work tending to make any normal person exhibit strong ADHD symptoms was on to something.


Not disagreeing, but I guess I'd go further: having immediate access to all the information available on the internet has made many normal people ADHD. Smart phones took it a step further: all that access was now in your pocket. Add in social media and how many people aren't essentially ADHD now?


Common trope wrt autism as well. It’s not really accurate. There’s plenty of high performing office workers.


maybe most office jobs are just boring as hell.


I've been there, and it's hell. You waste your day staring at a screen, trying to get yourself to do something, but you can't, so in the end you both get absolutely nothing done and you waste all your time on it.

It would almost have been better if I just said "fuck it" and didn't work at all. I'd have exactly the same output, but at least I'd have my free time back.

If you're in this position, I recommend you work with your manager to find work you enjoy, or work with your peers to work on stuff together. It's always been helpful when I was talking to a colleague about doing small chunks of work at a time.

It wasn't even that they were checking up on me, we'd just say "ok I'm going to work on adding this task to CI" "I'll work on this API", and then we synced back an hour later, and that seemed to help me focus.


If you're that executively dysfunctional to the point where it's affecting your career, then it's time to escalate the problem beyond what your immediate manager can provide (but do talk to them about this), and find a mental health professional that can help. everybody has their off days but if those days turn into months and then days and then years, it might be burnout, at which point you'll still want a mental health professional to help guide you through the troubles but it could be something else. like ADHD.


In my case, I got a job I really enjoy doing, and I'm extremely productive at it, but I agree in general.


That's great! Yeah I got a job in the incident response part of the industry because it turns out my brain will work if it thinks it's an emergency, and I'd like to think I've done quite well for myself.


> When the job is new, the team is new it’s all very interesting but as routine and boredom set in the get unable to stay on the task. They hate themselves for not doing what they should do and want to do the right thing but are unable. It’s very stressful and often lead to burnout.

I think you basically summarised my own issues with work in the past, and why I seem to burn out so quickly. Wouldn't be surprised if I had ADHD tendencies as well as being on the autistic spectrum, and that explained why I get so sidetracked with different hobbies and jobs and activites rather than being able to stick with one or the other.


Yeah I spent a long time with different people telling me I had adhd, or maybe autism. Or autism, but maybe adhd, they are similar in some ways after all.

It turns out it's both, which is its own exciting thing and in some ways a very surprising or unintuitive combination of what you would expect.

And also surprisingly, specialists for both struggled to identify it correctly. I'm not sure if I just got unlucky there or what. But yeah you might want to consider and look into what experiences are like for people who do have both, because it's not what I would have expected before I knew this about myself.


>ADHD is probably the problem under this behaviour.

Whether this is the case quickly becomes apparent by working closely in tandem with the person, e.g. pair programming. It will be obvious within the first few minutes whether the person simply cannot hold a train of thought for as long as the problem requires. As you write, there are concrete ways of addressing this.

On the other hand, it is also obvious when the lack of productivity stems not from a lack of focus but simply not having a mind suited to the job. I’ve seen people focus intently for hours to complete a task that would take most others on the team a few minutes, and not for lack of knowledge or training; their brain simply worked at a much slower speed. There is nothing that can be done to rectify this. These are thus the hardest people to empathetically fire, since you’re basically letting them go for not being smart enough for the job, despite being an extremely diligent worker.


Pairing is actually one of my most helpful strategies for keeping myself on task with boring tasks. People probably notice my ADHD much less when pairing with me. One reason remote work has destroyed my productivity is that pairing just can't happen in the same way.


I totally agree. I have some minor attention deficit issues, but working closely with others really lights a fire under my ass and I experience zero distractions.

I also agree that there's something distinct about working when someone is directly watching you, versus working without direct observation (e.g. over Zoom). Perhaps this is why I'm far more productive working remotely from coffeeshops than I am from home.


interesting, I've had a much easier time pairing (and felt benefits like you describe) over Zoom. Pairing by actually having 2 people at a desk never felt very comfortable, but screen-sharing with each person on their own monitor etc. works great, IME. I'm curious what you've tried / why it hasn't worked...


Back in the day, about 15 years ago now, when I was pair-programming every day and trying to teach new people how to do it, everyone was awkward at first. People who were Vim experts suddenly started stumbling over basic tasks. All of them who persisted eventually got over the awkwardness. Not all of them enjoyed the pair programming, but the ones who I talked to later found that it wasn't as awkward after a bit.


I've always been afraid of pairing. I don't know how well others would appreciate my periods of daydreaming followed by periods of hyper-fixated focus.


> I’ve seen people focus intently for hours to complete a task that would most take others on the team a few minutes, and not for lack of knowledge or training; their brain simply worked at a much slower speed.

You do have to be somewhat careful about this.

While there are people who do genuinely have the problem you describe without mitigating factors, I have seen people who superficially fit this description to a T—but whose rate of errors is far below those who appear to do the same work faster.

Sometimes, "slower thinking" is much more effective at getting the job done right than a fast-thinking "cowboy" approach.


Oh god, this is so much me. I seem physically incapable of executing any task beyond 80%. Otherwise I work very quick and thorough, so it takes a long time for others to catch on.

Medication helps a lot, but not in that regard. No matter what, I cannot explain this issue to anyone, not even therapists. It's sad to think I'll never progress beyond what I currently do because of this.


>I seem physically incapable of executing any task beyond 80%.

I think this is what happens to me. I have a bunch of home improvement projects that I started, did 80%ish of, then stopped and started another one. It's not a problem at work because I graduated to manager at some point.


Have you tried different medication? Your psychiatrist may be able to help with that missing 20%.


> Medication help, so is meditation, omega-3, better/more sleep, exercice and jobs that have movement and a lot of change and creativity.

This list is good. Also there are communities to learn from and therapy is really important.

A provider said to me “therapy without medication is okay, I wouldn’t do medication without therapy”.

Also it’s important to remember that people with ADHD excel in areas that neuro-average people do not. In an ideal team people work together to accentuate each other’s strengths and build systems that work for everyone.


There are definitely people who have ADHD and are simply not diagnosed, as well as people who are "afraid of" medication for reason X.

For people who are unsure about this, though, ADHD having-ness is not 100% equivalent to "being unable to do your job with focus".

Like parent mentions, ADHD is fundamentally about low executive control. So if you find yourself often saying things and immediately regretting it (often mid-phrase), having trouble with addictive behavior, and otherwise just doing things and regretting them in social spheres (as you "know better" in theory), then it could fall in there. The social issues that come up with ADHD are an under-rated aspect of the disorder, and rules out a lot of the "it's not ADHD it's capitalism" stuff.

If you just can't concentrate at work... might be something else. Handling ADHD with meds can make your life better, but at the end of the day your job might just not work for you.


Yeah, I periodically think about the stigma ADHD had when I was a kid in the late-80/90s and wonder how many people have some degree of impact on their life but have resisted a formal diagnosis and treatment. Some people used to talk about medication like it was a lobotomy.


This was me.

Unironically, my first few times actually finally trying medication not helping me very much is what made me get over the stigma. When it simply... didn't help much, rather than making me a pill-addicted raving addict, something clicked.


We’ve definitely talked about the cruel irony that my dad never got treatment for depression but tried basically every illegal thing he could get his hands on trying to self-medicate. The line in his mind between medicine and party drug was tragic.


ADHD also isn't just one thing: it's a constellation of symptoms with similar causes, and two people can "have ADHD" and have very different subsets of those symptoms.


I think that "it's not one thing" is definitely true in symptoms, especially because coping mechanisms differ, but there's specific behavior in the brain, and ones that, frankly, don't just turn off outside of a work context.

Falibility to addictive behavior is one, to me, feels like a big one that is almost universal because it plays so well into the underlying issue in the brain. But of course "normal" humans are faliable to addictive behavior to some degree!


This is so timely. I’ve recently had a performance review and distractibility and ending sprints with multiple, unfinished tasks is a huge problem that got flagged and that I need to work on.

The frustrating thing is I’ve done multiple ADHD self-tests and quizzes (like the ASRS) and Asperger tests (like the Aspie Quiz) and I’m always just on the border or right in the middle for both (eg- two grey boxes on the top of the ASRS instead of three IIRC and almost equal parts Aspie and equal parts normal on the Aspie Quiz). Even still I can relate to this. I know people with really severe ADHD that affects all aspects of their lives and I don’t think I fit that category, but at the same time I have to look at the external indicators (current job performance, being told by multiple people I’m likely ‘on the spectrum’, etc) and they make me unsure of my own judgement of myself.

This is more complicated by the fact I was blind for some time after I was born and people in that situation often have autistic traits (‘blindisms’) so it’s really hard to know what traits come from where.


You might want to see a neuropsychologist and go through a formal testing process. I've had inattentive ADD all my life, but was not diagnosed until I was in my 40s. I often wonder how my life would be different if I'd been diagnosed and treated earlier in life. Fortunately I don't worry about that.


Heh, its been fun finding out that I have adhd, then finding out I have sleep apnea. Before I was just lazy.


Oh wow, maybe that my problem then.


This article is good but imho misses a big potential issue: the manager’s perception of performance.

Managers, especially newer ones can have lots of biases. Someone you think is underperforming may actually be doing ok, they’re just not approaching the work in the way or at the exact same performance you or superstar Sam does. Not everyone is a rockstar, and if you insist on that you are going to have trouble scaling.

So my first question is “how is this manager evaluating performance?”

Follow ups -have those expectations actually been communicated to employee? -what specifically has been done to help the employee? Is it lip service or actual help? Has HR and managers manager been looped in and do they all agree employee is underperforming?

Only then do I think you should move to reassigning / firing


A poor initial perception of performance, e.g. blunder during interview, may also set the employee up for long term failure due to the Pygmalion effect. For example, they may less likely be chosen for future easy/high recognition projects that are essential for promotion packages.


Mostly agree but HR would have no clue about that.


I agree. And I am not even trying to bash HR, it is just that individual developer, artist, writer or whatever is something they are not equipped to evaluate.


High performance work is a partnership between manager and contributor.

Employees are not helpless. You don’t have to wait for the manager to do the right thing. You can tell them what to expect from you. You are leaving power on the table by taking a passive stance


> You are leaving power on the table by taking a passive stance

No everyone is able to be assertive.


Not everyone is able to perform at a high level


Finishing things is surprisingly hard. You have to practice to get good at it.

I'd suggest learning how to paint. Why? Because a painting is literally never done. Just like software, there's always more you can do to a painting. But at some point you need to finish and hang it up.

Even pollock-style splatter painting will work for this exercise.

I've been shipping software and finishing projects for a long time, and it does get easier. There's this weird feeling of anxiety when you're near completion...it's a lot like stage fright. And getting that last 1% done is really, really hard. It takes a ton of effort...more effort that it takes to start.

At some point you have to decide "it's as good as it's going to get" and be done with it.

That's not to say I don't have plenty of projects that I haven't finished; I do. But I also have a lot of stuff that I finished off and am relatively happy about.

Again, read books about art, not about programming. Finishing stuff is hard. It's one of those things they don't really talk about in CS class...or in engineering. It's the reason Jobs used to say "artists ship." They do, or at least commercially successful ones do.


I'm now in my second role where this applies to me. The first one, I was fired from, but I chalked it up to inexperience.

This time around I have a lot of experience under my belt, and for that reason it's weighing on me quite a lot. I'm finding myself digging into Kubernetes for the first time and no matter how hard I try, I just can't seem to crack it. None of it makes any sense to me - I get what K8s is at a high level, but man...once you get into the details, it just feels impossible. I don't know if I've ever experienced this much stress in a job before.


It's not you. K8s' design is terrible: the combinatorial explosion of nouns to learn is specifically because the abstractions are bad. It's quintessential of an industry that self-selects for high comfort with complexity.


>> It's quintessential of an industry that self-selects for high comfort with complexity.

I didn't know that's a thing! I'm currently suffering in a company that embraces overly complex development tools and processes. It's as far from "one click build" as one could ever imagine. The team is split in 2 countries with ours being the new group. One of the other recent hires is as lost as me (he's more on top of the tools but has no objectives!), so at least I know it's not just me. But I've got life stressors going on now too, so that certainly contributes.

Oh what I'd give right now for a project with some hardware, challenging goals, just a C compiler and decent pay.


That sucks. Can you focus on strengths instead? I happen to find infra quite easy, but CSS/design systems, I just always seem to suck at, and I'm thankful to work with people who are good at these things.

I'm all for working on weaknesses! But at some point I think it's better to focus on where we can add value and play to our strengths.


I'm exactly the opposite - always been mostly FE. I can find my way around a backend, but you wouldn't want to trust me with a complex/critical system.

I was hired at this company as an FE dev, but after doing a bit of BE work for them, they asked if I wanted to join the platform team. After years of being shielded from devops/infra stuff, I felt like I was stagnating if I stayed in the FE lane, so I went ahead and took the dive.

My mood shifts from one day to the next. Some days I'm okay, but others are really, really hard. Like I'm barely able to understand k8s, and we're also using terraform, helm, etc etc. It might be the largest single learning curve I've ever faced.


Don’t be too hard on yourself, the learning curve as a new infra/platform engineer is VERTICAL. Try not to hide that you’d benefit from some bootstrap assistance in a misguided effort to “not look clueless”, that’s a fast ride to a bad perf review or worse. One strategy that is incredibly effective in this situation is to ask if you can shadow an experienced/skilled team member for a sprint or two, and then switch to pairing with the same type of person for the following month or two. Your rate of learning will skyrocket using this approach, compared to trying to “go it alone” Good luck and enjoy the ride!


In his "Make good art" speech [1] Neil Gaiman mentions a third axis in the good-bad/nice-jerk graph, namely, "delivers the work on time".

I'm not sure how good it would work for software development, but the comic book world has plenty of successful artists like that - their art is okay at best, but they have plenty of work because they reliably hit their deadlines.

Assuming your worker is not entirely terrible, I always thought this made for a reasonable tie breaker.

[1] https://jamesclear.com/great-speeches/make-good-art-by-neil-...


That works better in comic books than software. As an example, I have a coworker who is pretty good in terms of domain knowledge, and can push out work pretty fast, but he does things like write migrations that insert rows of data one at a time in a loop, or adds three layers of almost do-nothing wrapper functions around business logic that doesn't need to be abstracted. He's made a lot of useful contributions but the stuff he's been heavily involved in is borderline indecipherable so the tech debt tradeoff has been pretty brutal.


Manager here, I can tell you sometimes the things engineers care a lot about like algorithms and the fastest/correct ways to do things are not important.

Domain knowledge is typically far more valuable. The real world of business has tons of weird legal/finanical/workflows edgecases. I'll always hire a mid engineer with strong business domain knowledge over a very technical engineer with no strong businss domain knowledge. My firm only has one team that's an exception to this rule.


As a staff engineer at an org that heavily prioritizes domain knowledge and promotes for it and agreeableness heavily, I think that view is only true in the most black and white of cases. We have lots of developers working at 25% productivity because the flaming dumpster fire of tech debt we inherited is slowly turning into a flaming landfill fire as we pile shit on top of shit rather than fix things. I'm not sure why management hasn't made the connection between repeatedly missing deadlines and rampant unchecked tech debt, I've pointed it out many times. At this point I'm just glad I'm not on a team that's severely impacted, but I feel bad for the people who are going to be forced to crunch and will still come out looking like poor employees.


I sympathize as well, but I also know many many developers are extremely poor at judging what/how the code affects a given Firm's KPI's.

I've been in literally hundreds of conversations with engineers who want to refactor a given technical system and don't realize the code debt is really due to the fact human businesses run on endless edge cases and weird exceptions. They only account for the majority use cases, but the problem is the firm would get sued without complete coverage. So when they deal with the edge cases, the code looks like shit again, and then what was the point of the company spending money on the refactor ?

Application/Code Architecture in real world businesses is extremely tough given moving requirements, endless legal/financial edge cases, and subtly different but similar concepts across different business domains. It's gets even tougher when you have to make difficult decisions about cost centers and profit centers.

My firm has a super specialty team (extremely well paid) that goes in and refactors/clean's up codebase's that are identified as becoming less efficient. However even the average senior engineer lacks the experience and understanding to clean up code debt in most business codebases.


I work at such a firm with constantly changing legislative and organizational requirements, and while there is definitely a lot of moving target syndrome around business processing logic that this applies to, there are other things like a byzantine service architecture leading to people having to make web service calls rather than join across tables, a house of cards docker/kong setup that people are afraid to update because it's so difficult to debug, unit tests that take 10 minutes to run even in limited cases because of the poorly written migrations and other unrelated bad architecture/engineering choices. Those things could all be fixed with a very reasonable amount of effort for the productivity boost they'd give, but the technical leadership in the teams that owns those things is not super competent, so they're afraid to make any significant changes because they're not confident in their ability to solve problems that might arise as a result.


I’m really curious where you work, the team you mention in your last paragraph sounds like my dream job :D


Sorry can't say, but I doubt it's your dream job.

That team is expected to work any amount of hours, sleep in the office, and do whatever it takes to get the job done.


This reflects more poorly on your engineering leadership than your coworker imo. Where are the guardrails? Why aren't his migrations going through a pull request where you can review and say "this should be a batch insert?" If PRs are in place but nobody speaks up, why is the culture afraid of pointing these things out?


Yeah this kind of stuff is always best solved with general eng guidelines.

I’ve been that guy many times. Having to do my PR 3 separate times over the course of a week because of feedback. IMO each solution worked fine, and the feedback was also fine.

The trouble with explicit guidelines is it’ll make clear that your high-clout engineers are always breaking them.

The reality is some peoples time matters more. And ideas aren’t always better, it’s about reducing the mental workload of one person at the expense of another person.

There was a comment on previous thread about how they beautifully offered the autistic guy his own somewhat independent projects and he excelled. This is unthinkable in many places. It’s common to have the one high clout senior guy who wants to maintain clout but doesn’t have the mental resources to offer autonomy of the underlings. One can dream, though.


I can’t speak for the GP but I am currently in a position where we have the PR, we make the comments, the fix happens (kind of), but then it all repeats the next time. It’s tiring for the (technical) PO and the senior dev doing most of the reviews (me). It does not seem tiring for the employee. He seems like he could enjoy doing this forever, often commenting about how much he’s learning.


Oh, I totally agree, had I been the technical lead for that team I would have flagged a lot of that stuff. As it stands the lead for that team is also on the nice but incompetent spectrum to some degree, and since the code base they're working on is an inherited dumpster fire I get the sense people on that team have mostly given up on code quality.


> "Possibility: Undiagnosed health issues"

Thanks to Glyph to raise this issue.

Once I had an employee who was nice but who had often to leave due to health issues.

I learned a few years later that this person had deceased because of cancer.


I think what gets lost in this discussion but should be worth noting is team dynamics. As I'm not an engineer, things are probably different for me and in the teams I've been in.

Sometimes the nice person can take the heat off the jerk, or can better interact with other teams or employees so that the jerk can do what they are good at, and not be bothered by others. Part of what I did as a PM was to bring my talented IC teammates coffee, and make sure the rest of the company didn't bother them during crunch time. All requests came to me. The ICs were generally nice too, but unable to communicate politely when push came to shove. That's where I came in. Am I a good engineer? Hell no, I'll never be one, and I'm fine with that. I can, however, get others to like me, and respect what I have to say - which brings its own benefits when it comes to team-to-team interaction dynamics. Nobody likes the asshole, but I'm happy to cover for the asshole because that's part of what needs to get done to make sure everyone is on the same page.

Sometimes, nice people just need to be in better roles. Engineering is probably not one of them. Nice people might suck at certain important things, but everyone plays different roles in large and small teams, and sometimes contributes in a less direct or noticeable way, but still important. Put them in the roles they can thrive in, damnit!

All that said, there's a difference between a brilliant jerk and someone who lacks social tact and is a genuinely unpleasant, disrespectful person to be around. I have no problems with the straight-shooting brilliant jerk. The my-way-or-the-highway-and-oh-by-the-way-go-fuck-yourself person who might be good but is completely lacking in social norms and can't get along with anyone no matter how good, screw them.


I like the nice vs kind distinction. By being nice to someone who is underperforming (by keeping them onboard), you're being unkind to those that are performing but have to pick up the slack or watch the team's progress fall behind.


I feel like this at times can fit me.

I am great at a lot of tasks.

I am bad at some of my tasks, which makes me disinterested in doing them.

I am clearly an expert level at some % of my tasks, but show very little growth in the other ones as the pain of failing repeatedly with no hope doesn't seem worth it when I can focus on what I am great at, and accomplish a lot of things.

Obviously I need to either improve at the tasks I'm bad at, change roles, or find other people to do the tasks I'm bad at.

I keep trying every few months to really attack what I'm bad at, but there's always so much work it's easy to get handed a task I'm great at, and just do that.

I'm told by my manager I am doing a great job, because it's easy to focus on the tasks I'm great at.

I feel like I'm doing a very bad job, because it's easy to focus on the tasks I'm bad at.


I nodded in agreement all the way up to the section on having a hard conversation on performance. I had assumed that was a given until he explicitly called it out after several other things including actually firing the person.

As a leader, that should have been step number one. Just because this person is nice doesn’t give you a freebie to avoid the painful-but-necessary responsibility to have this conversation.

If you haven’t had that hard conversation to highlight and plan on fixing performance, and you fire someone, then you’ve taken the easy way out. If you’re a leader taking the easy way out, you’re unfit to lead.


I don’t understand how this is an issue that needs anxiety.

Fire them. I’ve been this person early in my life, and deserved to be fired.

Incompetent but nice is still, literally, incompetent. Incompetent people get dismissed.


As Kaplan-Moss pointed out in the original article, "incompetent" depends on the context and circumstances, and you may be able to remedy these in order to turn an incompetent employee into a competent one.

To take a very straw-mannish example, suppose you hired a Python developer but due to some admin fuckup they were added to the Android team. The easiest remedy is to move them to the Python team. The second easiest is to ask if they are interested in learning Android, and if so give them the time and support to get up to speed. The worst option here is to just fire them: you lose a potentially valuable employee you spent time and money bringing on board, possibly damage their career as a result, and hurt team morale overall.


The article has a clickbait title: It uses the word "incompetent" when it should have said "underperforming". There are may reasons an employee is not performing and the article discusses a few of them. Sometimes it is right to fire the person, sometimes another approach might be better. It's as nuanced as the reasons.


This article, and the one it was written in response to are both about the scenario where someone is under-performing because they are incompetent, not capable of becoming competent and really nice and likable. What both articles missed is that in many organizations nice, incompetent people often get promoted to leadership positions and become the subject of business books and bad memes... and unfortunately go on to hire lots of other nice but incompetent people.


Maybe this is a language thing, but if someone underperforms because of health issues or burnout (like discussed in the article) I would not call them incompetent.


I agree with you - health and burnout aren't incompetence.


It’s not that easy in real life. A couple of years ago we had a guy who was really nice, someone who you really connect with when you first meet him. But he never produced any working code.

We have a set of “onboarding tasks” that are well defined and have definite definitions of “done”. He didn’t complete them. His team lead gave him a series of “easy” bugs (think, change this error message to that error message). He couldn’t figure that out. He required lots of pair programming and oversight.

We tried to do a PIP and gave him unlimited access to our top devs for help. We really tried everything. We should have cut it off much earlier than we did, but he was just so nice. It was hard.

Near the end when we were justifying fire him, we went through all his records. It turned out that I did his technical interview and failed him (I had forgotten by the time I got involved with his PIP) But the rest of staff loved him and thought he has lots of potential. He didn’t. We really tried.

It was gut wrenching firing him. He was a real person who we all liked. But he was just too much of a drag and we are a small company and don’t have the buffer to pay people to do negative work.


> I don’t understand how this is an issue that needs anxiety.

Empathy. Some people have more of it than others.


Sure. But how does worry help you or the person who is going to get fired? The manager goes through months of stress avoiding the thing they need to do (bad for their health), while the bad fit engineer gets strung along.


> how does worry help you or the person who is going to get fired?

That is the point. By the point you know you need to fire them it is easy. Getting to that point is the hard bit.

Maybe they just need a different style of assignments? Maybe there are interpersonal issues in the team you as the manager should address. Maybe they have a health issue they can address with time. Maybe they are burnt out and you should reconsider how you are running your team, or even worse how the whole company.

Depending on the situation you have many more things you can do to address an underperforming employee than just firing or not firing them. Whether or not it will be successful depends on multiple factors some in the control of the manager, some not so. A sane manager should not stress or worry over the ones they can't control, but easy to imagine them stressing over the ones they can.


Empathy is not worry. It's actually the other way around - you seem to worry that underperforming person is going to bring down the business, empathic people do not care.


Often it’s extremely misguided. It’s better for people to work at a job they don’t struggle with. Fire them and move on so they can too


If people didn't need jobs to have food and shelter you might have a point, but as it is our society is constructed such that even the time it takes to find a new job will have significant impact on most people's ability to pay for basic necessities.

Maybe we should fix that? Nah, let's just treat people like expendable resources so we don't have to increase taxes on the wealth elite who never need be concerned with such things.


That’s what severance is for


Firing someone in the case of underperformance (particularly outside of the US) is rarely a straightforward process.

You typically need to give the under-performing employee at least a chance to improve and meet the required standard - otherwise the hiring company will be leaving themselves open to a wrongful dismissal suit.


>You typically need to give the under-performing employee at least a chance to improve and meet the required standard - otherwise the hiring company will be leaving themselves open to a wrongful dismissal suit.

In the USA where most states are "at will" employment, a "PIP" (Performance Improvement Plan) or providing multiple chances for an employee to become better isn't required by law: https://www.google.com/search?q=employee+%22performance+impr...

That said, some companies in some industries add a PIP as a social norm rather than a requirement of law.

E.g., An underperforming programmer might be put on a PIP. However, in more cutthroat industries... a new car salesman who isn't selling the expected quota of cars or a hedge fund associate who lost several million on a bad stock pick are often fired immediately without any PIP.


"some industries add a PIP as a social norm"

I suspect they often do the PIP as legal protection, documentation they can produce later if needed. Even in an "at-will" environment, employees can sue for wrongful termination.


I think this is broadly the case. A few companies might be genuinely invested in improving performance with such a plan but for the majority it's a way of managing someone out. Over the years I've seen over 30 devs put on PiPs. 1 survived.


Everything you said is correct. And just to be clear, in the US it is technically very straightforward in most states and you can fire people for any (non-protected) reason or for no reason whatsoever without any notice. However, there is always a risk that people will sue the employer by claiming that they were fired for reasons other than underperformance (gender, race, religion etc).

Employers in the US don't care about giving people the opportunity to improve, it's more about documenting the underperformance so there is an airtight case against the employee - nobody can claim a protected reason if the underperformance is very well documented.

All of this said, and this applies to smaller companies more than bigger companies due to the risks involved, if the employer is very confident the employee won't be able to argue that they were fired due to a protected reason, in most states they can just fire them in the middle of the day with no justification: "I don't like you, out of here".


> Employers in the US don't care about giving people the opportunity to improve, it's more about documenting the underperformance so there is an airtight case against the employee - nobody can claim a protected reason if the underperformance is very well documented.

Actually, these efforts often don't help much. As a rule, if you find yourself doing elaborate cover-your-ass excessive, you probably are doing something very systematically wrong. I've seen plenty of situations where the well-meaning managers documented everything, did the whole document poor performance, and a single deposition of a manager made it clear that the entire process used to document and remedy under-performance was simply collusion to fire someone for a protected reason... even though in reality, it was not. It goes kind of like this:

"So after four years of not a single entry in ___'s file, suddenly a poor review and a complicated PIP?" "____ just wasn't fitting in on the team."

"Hmm. _____ is the only _____ on the team, despite _____'s race/religion being ___% of the population. All hires made after you became manager were (insert manager's race/religion/sex). No other employees on your team are on PIPs. So, why is it that ___ wasn't fitting in?"

"I can haz consult with lawyer now?" (followed by settlement for 2x manager's salary)


Wait was it or wasn’t it? Presumably it was- I guess it’s down to what would the judge think?


> Wait was it or wasn’t it?

Doesn't really matter. The problem is the choice for the employer is really:

A risk of paying 3 x whatever (sometimes crazy) number the employee is asking for

versus

Certainty of paying 1 x whatever we settle out of court for

Risk aversion kicks in, and so the company settles.


That documenting is self-fulfilling. It creates a bias. That is, the manager is biased towards fleshing that out, not signs of hope and change. The manager is also biased to covering their own arse, not giving the employee a fair shake.

Yes, there are cases where the employee needs to go. But there are others where that's not exactly true.

All that said, it's a relationship. Life is too short for unhealthy and unproductive relationships. When I find nyself in such situations I update my CV and start looking to move on. Somethings are what they are and not worth the fight.


Yeah outside of the US they do constructive dismissal instead, and you'll be paid pennies even if you win the suit (and fail future "background checks").


> Incompetent but nice is still, literally, incompetent. Incompetent people get dismissed.

Unless management is also an enabler/part of such incompetence.


Sometimes people just don’t want to work with you because you’ve become a moniker, too. There’s no reason, seriously. It’s called being shit out of luck imho


Quadrants are useful to visualize the problem along a couple binary spectrums, but the process shouldn't stop there.

A more evolved process would avoid using such vague words to define problems that are complex, dynamic, interdependent, social, and psychological. Performance and expectations are wicked problems.

Determinations of performance and expectations are often closed and siloed as opposed to being open and transparent. That's a cultural problem arising from "difficult conversations". Organizations often make the mistake of over-simplifying these conversations.

I can think of few chasms between performance and expectations in twenty years that was reflective of reality. Organizations make sense of those situations slowly, poorly, and privately, if at all.

Why? Because if their cultures were reflective, protean, or sensemaking at all, they were closed conversations, ill-defined, informal, and not repeated on a regular basis.

A few examples I've sampled from my work:

- Numerous individuals suffered from self-medication while receiving little care or concern.

- Founders copy emotional traits of Jobs, Gates, Musk, and Torvalds not the intellectual ones.

- Trauma: ill-defined roles, changing expectations, and stack ranking.

Personally, I'll take competent but rough-around-the-edges because my experience has been that my most talented coworkers all fit that description no matter their education and experience while realizing that the edges are where the most important insights occur.


Company culture can be incredibly complex and fluid. You may be a good fit for some teams and suck for others depending on their current projects, the people involved, etc. Different teams can perceive you as a completely different person. Not to mention most low level managers were trained to be ICs and lack basic project management skills.


TLDR: First try and see if there a non-obvious cause, like a disability, a situation with someone else on the team, ect. Then either fire them or re-assign them to a different role.

---

I think it's important to set clear expectations early and explain common sense. Sometimes things that you think are obvious aren't.

I also think it's important to be a lot more introspective about your current situation and management style. I've seen "nice but incompetent" happen because a manager didn't set clear expectations at the beginning, and just assumed subordinates would "figure it out."


Stuff like this is why I refuse to return back to office. There is some sort of relationship play between "nice guys" and managers. Both of them are refusing to do their work, "nice guy" to complete his work and manager to manage. And somehow I am part of this, and have to work extra weekends!


> somehow I am part of this, and have to work extra weekends

Most engineers are not expected to work weekends unless they are on call. You don't have to put up with it.


In theory maybe.

My point is why should I even make that fight? I have my own issues, my own life, my own people that depend on me.


I don't think i've ever been asked to work weekends in any job i've had. Its not normal in the industry for employers to require this (except if you are oncall)




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: