Hacker News new | ask | show | jobs
by esja 1260 days ago
I call them complexifiers... because that's their habitual response to problems. I prefer to hire simplifiers (within reason).

Some complexifiers are not nearly as smart as they seem - they can often have tunnel vision due to their brilliance in specific domains, and miss the big picture. Which puts them in the "dumb and gets things done" quadrant: https://www.johndcook.com/blog/2010/12/27/dumb-and-gets-thin...

4 comments

This is my experience - they are very often people who are so highly specialised in one thing that they lose the ability to talk to other people. Their egos are inflated (as no-one else understands them) they go around causing havoc.

I tended towards this but was - I guess - lucky to have had a manager who identified this and helped me grow.

My approach: the young ones need to fail. Hard. Then they'll learn.

The older ones who failed and reacted badly (it was everyone else's fault). I take them out of their comfort zone, tell them about my experiences and talk about the feeling of self-doubt when moving to different domains. Work with them to turn them into truly excellent team members (which they - in my experience - can be as they're usually driven, hard working and egotistical).

I've also had them read "Being Geek" and "Managing Humans" (as those books are what made it finally click for me).

Turns out the blog linked in the first post was written by the same person.

It is orders of magnitude harder to simplify things than it is to make them more complex. I think this skill comes with experience more than anything else.
There’s a big difference between:

- smart person, identifies a problem, wants to solve it with more complexity.

- normal person, doesn’t notice a problem (or doesn’t care), doesn’t attempt to address it, creates more incidental complexity.

The former is a complexifier. The latter is a typical dev.

Typical dev wants to do whatever is easiest. Complexifier goes out of their way to “fix” things.

> I call them complexifiers

Aka big brain developers

https://grugbrain.dev/

Short term complexity can also be long term simplicity. One can make an educated guess of what new requirements might emerge in next half a year and implement a more generic design that accommodates them from get go. If people are really smart, they may anticipate future needs not obvious to others, or they can of course overthink just because they can.
The real wisdom is knowing when to apply the complex generic pattern and when to just copy/paste/mutate an existing design. Also, enlightened coders will document 1) the choice and 2) the implementation so that future coders have an idea of why things are the way they are.