51

I'm looking for inspirations including courses I could send a colleague to to make him a bit easier for me to work with.

He's been with the company for years, but in my team for a few months. Although he has been with the company for years he has never been promoted and now I can guess why.

The colleague is dedicated and eager to learn new things. The only problem is he tends to lack a bit of... Common sense? Logical thinking? Structured thinking?

Examples:

  • We are in IT and his responsibilities include debugging. He frequently first focuses on the least probable sources of the problem and needs support to identify the simplest, most logical one.
  • His communication style is very convoluted. I find it very difficult to understand him. I need to "lead him" by asking him very specific questions to understand what he's trying to tell me
  • Also when it comes to the solutions he proposes, they are normally too complex. Sure, in some cases complex solutions are the only ones possible, but normally it's better to focus on the easiest way to achieve a goal and only if that doesn't work, to try the complex one.
  • He has problems identifying consequences of decisions. For example, if we have a solution to a minor problem A, a solution which would solve A but create much bigger problems, that's probably not a good solution.

What could help?

13
  • 3
    Is this an ego problem? For instance, his communication style. Why is it difficult to understand? Does he like to sound smart or does he like to speak for a long time? Nov 16 '20 at 7:15
  • 7
    @StephanBranczyk, he makes a lot of assumptions. He doesn't distinguish between things he knows and things he guesses. So I have to ask if he checked something or he simply assumes that something works in a specific way or won't work and on what basis. He is also quite disorganized in what he's saying so it's simply difficult for me to follow him. I have difficulties understanding how he tried to solve a problem and what the next steps are in his opinion. His update is more of "everything I know about issue A", but I don't have time to spend it working on such a detailed level.
    – monkey666
    Nov 16 '20 at 7:59
  • 37
    Your are describing an entry level engineer. There is no shortcut to grow someone to a senior.
    – Helena
    Nov 16 '20 at 8:47
  • 21
    @Helena, even if experience sometimes help to solve this problem, I don't think it always does. I have a boss who's actually similar to this colleague and he has 30 years of experience. Even this colleague has 10 years of experience.
    – monkey666
    Nov 16 '20 at 9:38
  • 6
    @Philipp: As I understand it, OP met two, not lots and lots of people like that.
    – guest
    Nov 16 '20 at 21:48
132

Listen closely, I'll let you in on a secret. There is no such thing as common sense.

My dad worked in AI. I've spent 20 years of my life studying it and human intelligence. It's true; common sense doesn't exist.

What does exist is a desire for one's decisions to be seen as the decisions that all people would make. In reality, all of us have different backgrounds and experiences, so we all make different decisions based on similar input.

So don't train him for something we can't define. Train him for what he needs.

Introduce him to Occam's razor. The idea that if there are two descriptions of a problem, both equally correct, the simpler one should win because it has fewer elements to consider.

Introduce him to the concept of elegance - that art of doing more with less.

Tell him that only a expert can explain solutions simply enough an eight-year-old can understand them; but, any amateur can make a simple idea sound complicated.

Expose him to Richard Feynman's approach to learning, which involves simplifying the problem until it can't get simpler.

Tell him the difference between an expert and an amateur is generally based on how well the core concepts are understood, not in how many concepts are learned.

In short, get him to value simplicity. Odds are he's been rewarded for valuing complexity most of his life, and uses a simple translation of the complex concerns into complex language, instead of applying his mind to make the complex easily managed through simple ideas and themes.

I've worked with a lot of people like this in one of my most trying jobs. The company did a lightweight evaluation to determine promotion opportunities. This complex doublespeak is often enough to fool people into thinking they are highly intelligent; but, truly intelligent people can express themselves clearly. Some of these people went off to write code that few others in the company could understand. When asking them to write documentation to clarify the code, the documentation was just as incomprehensible.

People that can't express themselves clearly often play up the confusion in others as signs the others aren't operating at the level they are operating at, which is silly when they match it up with a lackluster track record of performance. But, some people believe it. One place where I spent two years of my life trying to improve, had people who could explain their "cloud market" strategy for fifteen minutes without ever actually talking about deploying something on the cloud, or using software that interacted with the cloud.

17
  • 27
    Do you mean Richard Feynman? Nov 16 '20 at 17:46
  • 3
    "But, some people believe it; and, the place I recoil in having spend two years of my life trying to improve had people who could explain their strategy" A bit ironic that a sentence about people making confusing statements is followed by a confusing statement. Nov 16 '20 at 21:26
  • 2
    Agreed. I always paraphrase this as "Common sense is not very common".
    – bytepusher
    Nov 16 '20 at 22:03
  • 10
    So, having been around AI, what do you fear more; the first computer to pass the Turing test, or the first one that deliberately fails it Nov 17 '20 at 0:35
  • 3
    @Old_Lamplighter I fear stupid humans a lot more than I fear smart computers. I, for one, welcome our new robot overlords.
    – Mast
    Nov 17 '20 at 11:17
11

What you're describing is inexperience, not a lack of common sense. Why do they not choose the best thing to focus on during debugging? Why do they pick convoluted solutions? They probably just don't know better ways yet, or haven't the breadth of experience you have to know what is the most common problem.

Help them learn by showing the better solutions. Do it in a constructive, positive way: not "How could you not see this," or "You really should not do it in that complicated of a way," but rather, "That could work; here's how I'd approach it."

If they keep approaching things in the wrong way even after you've shown them a few times, ask them: "I see you picked [this] to focus on. Last time we talked about this kind of problem, I pointed out [this], which was more likely to be the issue. Can you walk me through why you made that choice?" Or even, just ask the last sentence; and then once they've explained their reasoning, if you still think they should've picked a different route, explain it again to them. This helps their learning process, and allows them to learn by experience.

3
  • 1
    How could "inexperience" equate to the description… "he's been with the company for years…"? Nov 17 '20 at 1:06
  • He’s been with this department for months; unclear if his prior experience is relevant here.
    – Joe
    Nov 17 '20 at 5:02
  • some people work for 20+ years, and are still inexperienced in a sense, because they never worked on certain areas. Simplyfing your thoughts is quite some effort.
    – Benjamin
    Nov 17 '20 at 7:07
9

Would you take into consideration that you're asking the impossible?

You should learn to work with the tools you're given. You seem to know the person's limits; give that person tasks within those limits. For example, testing. It is very valuable in IT. If there are no such tasks, you should discuss this with those responsible for assigning that person to your team.

2
  • 7
    "Testing" is a very overloaded word, especially given the audience here. What kind of testing are you referring to? Unit testing? Or testing used in general problem solving in IT (as opposed to software development)? Or something else? Nov 16 '20 at 17:26
  • 1
    I never thought of testing as a way to solve problems, except the problem of confronting the end-user with an unfinished product. It's possible that IT currently is OK with that. I was referring to those kind of tests where a person other than the developer evaluates the product. Don't underestimate this, this person should be able to reproduce the tasks of the end-user. But it needs only basic IT skills. Unit tests should be automated, no? But perhaps that person can develop unit tests, a lot of development teams never get the time for that. Nov 16 '20 at 21:20
3

Change yourself

The lesson I've learned over time is that you can't change other people directly. In fact it will often backfire with either open or passive resistance. You may gain a reputation as aggressive and combative.

What to do given you can't 'change him' (again directly at least) ?

Change your approach:

  • Accept that he has much to learn
  • Give good examples
  • Talk through problems
  • Meet for 1:1's frequently

Treat the relationship like a rechargeable battery. You will have to constantly put energy and charge into the relationship for it to work for and them to grow. It just takes a few years is all ;) So one by one I would tackle the issues raised but in a much higher 'best practices' approach that does not directly refer to recent history. The speed at which the student will learn will vary and your approach will need to adapt to that too.

Lay out out good practices first so that when incidents occur you can then refer to the good practices, not the other way around. This is the job of a good manager and it also takes time to learn that.

1
  • 1
    ... and define an exit strategy for yourself - at some point being helpful turns toxic for yourself, and at some point one has to accept that a combination of people doesn't work.
    – AnoE
    Nov 17 '20 at 10:38
2

Allow me the indulgence to share my personal experience.

As a junior dev I very much went through this exact same situation. Often, when I proposed a solution, my tech lead/manager would comment that it is overly complex and that I'm missing a much simpler solution. I was starting to wonder if there was something intrinsically wrong with me.

A few years later, after a number of successful projects, I got promoted to tech lead with a team of 5 developers. And a strange thing happened: I experienced the exact same thing, except now I was the one seeing the simple solution and my developers were finding complexity everywhere.

And it dawned on me what is going on. As a tech lead, I had information that the developers did not. I had a bigger picture due to being involved in a higher level of interaction with clients and stakeholders, and I could easily determine when a problem could be solved by simply changing a business process or workflow rather than engineering a solution. The developers were good developers, but like the saying goes: if your only tool is a hammer then everything looks like a nail. They missed out on the bigger picture and tried to solve every problem technically.

I think this is a very natural state of things and it's part of a tech lead's job to identify situations where limited knowledge is causing suboptimal solutions to be proposed and implemented. I don't have a silver bullet, and I am very much aware that your problem may be worse than this, but I will propose these suggestions:

  • Keep communication with your team open and dynamic. Don't just wait for daily standup to touch base - be involved in what they are busy with, and guide from the start. Yes, there is a risk of micro-management, but the idea here is to make sure the developer has the same information you do.
  • Have a culture of discussing solutions and ideas before implementing them.
  • You could try to get the developers closer to the business stakeholders, but that is a double edged sword and must be managed carefully.
  • Do not treat developers like resources that can be swapped between projects based on whims. A developer working on a specific feature/solution builds an internal map of the problem space that can't simply be transferred to someone else without cost. I believe here I am is some disagreement with common Agile practices but I really believe developers are at their most productive when they can focus on the present problem as well as the future problem.
3
  • 1
    "And it dawned on me what is going on. As a tech lead, I had information that the developers did not." I know exactly what you mean, I've experienced that too. However, that's not what I'm asking about in this thread. It's not about the big picture. It's about complicating even the simpliest situations.
    – monkey666
    Nov 17 '20 at 9:56
  • @monkey666 Understood.
    – firtydank
    Nov 17 '20 at 10:05
  • 1
    Re "some disagreement with common Agile practices": Yes, you are. In particular Scrum (it is based on the replaceable cogs idea - like many project management ways it doesn't really take into account that knowledge work requires learning and lots of detailed information (or is too idealistic for the real world)). Nov 18 '20 at 1:26
2

There's an old saying that the best players make the worst coaches, because they don't know how to explain what came naturally to them. If you want to become a better coach for this person, you need to stop thinking about what he is lacking as "common sense," and start thinking about what you are actually doing to organize your thoughts in those circumstances.

David Agans has a good book called Debugging that lays out some strategies. He actually has a section in the introduction called "Isn't this obvious?" where he discusses your question. Basically what seems obvious when you spell it out isn't always obvious in the moment.

These things can be taught, and if you are in a position to do so, they can be made assignments.

  • For focusing on the least probable source of the problem, you can ask that he first make a list of all potential problem sources, then use some methodical way to evaluate their probability.
  • For his communication style, you are already leading him with questions. Try to identify commonalities in those questions, and ask him to use those as a sort of communication checklist before coming to you.
  • Complex solutions are trickier. A lot of being able to simplify a solution comes down to experience. You can ask him to go through the deliberate exercise of trying to simplify something, and ask him to review his proposed solutions with his peers before putting too much effort into them.
  • Identifying consequences of decisions is also often a matter of a deliberate exercise. Make identifying consequences part of a standard checklist of solution proposals.
  • If you know someone who is good at these things, recommend observing that person to get concrete ideas. "Notice how Joe in standup laid out the possible solutions and why he is particularly focused on one solution first. I'd like you to try to make your reports more like his."

Some of the most organized people I know consider themselves weak in that area, so they are deliberate about employing specific strategies, and end up making it a strength. It's definitely something that can be coached, if the person is willing.

2

It is possible that he is lacking common sense literally. The behavior you see is similar to some level with schizophrenia.

The important implications of that would be, that you should not try to change him, as it would frustrate you and would not make his situation better.

I do not know whether that can be treated, and whether it should be, but the answer to your question would be.

Maybe you can't. You would need to accept his behaviour and tailor the tasks in the right way for him. You would do something similar to what you do now, but it would make more sense to do it, and it would be certainly less frustrating and more effective for both of you.

It could be schizophrenia that has exactly the symptoms you see, nothing more, but it could also be that it has more symptoms, which could be dangerous. I do not have a medical education, so I will not speculate about the details of it.

4
  • 3
    It seems very extreme to throw a rare diagnosis like schizophrenia around for the not uncommon behaviour described. As the rest of your answer seems to amount "nothing to be done" it would be more helpful to approach this from the angle of checking if you can offer accommodations that would help a person dealing with this as a result of a medical issue. At present this reads more like a comment than an answer.
    – Lilienthal
    Nov 17 '20 at 20:36
  • 1
    @Lilienthal Yes, similar behavior is common, with possibly the same effect, but the effect is not relevant. It's the details of the behavior that got my attention, and that many of them are combined. Schizophrenia is an illness that can be very bad indeed but like most others, it can be mild. I think drastically changing the mindset is not "nothing", and it's the answer directly related to the question. I do not want to say: "Make him go to a doctor", as it would make the answer a diagnosis. And I want to stay far away from it. Of course, this implies that a medical examination may be helpful. Nov 18 '20 at 2:36
  • 1
    @Lilienthal Part of the relevance of the answer comes from the chance that it is right, and leads to recognizing a serious problem. One reason for worrying is that the behavior was stable over a longer time than the author expected, that's why he asks. I can not give you a number, but I feel that the probability is high enough that not posting it would be unethical. I intentionally give no medical advice, because I'm not competent to do it. Schizophrenia is actually not rare, with around 1 % incidence. I hope I could explain why it's short and thin on medical advice. Nov 18 '20 at 2:58
  • Ok, I see where you're coming from. I still think it's not ideal to "raise the spectre of mental illness" as it were since you're effectively suggesting a medical diagnosis which is a problematic subject, especially on a site such as ours.
    – Lilienthal
    Nov 18 '20 at 9:45
1

Communication

Humans have remarkably diverse mental models, even within very specialised domains. When interacting with other humans, we have to make assumptions about their mental models - and when those assumptions are wrong, confusion results.

Repeatedly encountering different assumptions will gradually fix them over time, but people who are more aware of them and actively try to consider them can resolve these differences faster. Which assumption is "correct" is less important that people assuming different things.

I suggest looking for training that addresses communication and mental model / personality differences - and then attend as a team, followed by a casual discussion of the content and how it applies to them (e.g. dinner and drinks). The content being useful or not is less important than collectively addressing it together - if it's good, you've all learnt the same useful things; if it's bad, you can bond together about why it is so bad.

"Do unto others as you would have them do unto you" unless you know they want something you don't!

Not the answer you're looking for? Browse other questions tagged .