Engineer Anti-Patterns
dtrace.org
dtrace.org
It's great to put people into boxes and clean up by saying "these boxes aren't real; we're all a little bit of each", but what is the effectiveness of doing that? We give people little stories about these unsavory archetypes (and their brains love it,) but if the moral of the story is not to fall in love with archetypal simplifications... it just sounds very hypocritical to me. "Don't be like The Talker: he's a Capricorn, and we all know how dumb Capricorns are: they tend to believe in astrology." Maybe we should add The Listmaker to the end of that list...
Pardon my rant. I get tired of seeing the word 'anti-pattern' bandied about like it's the hottest new thing. Stupidity has many names, but it was never really cool. Maybe we should be jumping on solutions instead of band wagons?
No. It's precisely because the world is so complicated and the broad generalizations don't work that I think patterns and anti-patterns (ideally with stories behind them that explain the context in which the author discovered them) are so much more useful than, say, the rule format that so much of our industry's content is wrapped in ("stop doing X", "you should be doing Y", and so on).
I think these anti-pattern posts are primarily therapeutic for the writer, and I suppose useful to people who oversee or supervise.
And this list in particular might be useful when you don't want to hurt the feelings of a colleague, when you want to point out their lack of productivity. If you pass them this list, they might discover some similarity to themselves. And the source is a third person (the blogs author), so its an impartial source.
Don't ever do this.
Real people aren't like this, and these aren't problem solving methods, just kind of unhelpful behaviors. There's nothing wrong with them in certain contexts, and the author doesn't say when or where they work. It's just kind of "look at this list of extremes I want to make fun of."
I had fun reading it. I could relate to some of that stuff. But I just don't see it as the 'doing better' that the author is trying to advocate. Which kind of makes it a greater contribution to confusion and noise than to reliable progress. You could just accuse any thought you don't agree with to be a manifestation one of these archetypes and then you're back at square one, aren't you? Bottom line: you'll always need to think. The fact that the author has to say "we're all a little of all of this" is a big clue that maybe it isn't any more useful than astrology. Hence my comparison.
> Titles should be a reflection of the impact already achieved through hard work, not a license granted by a benevolent management.
I don't even really know what this means. It implies that titles are laurels without responsibility. I think what it really means is that titles are a tool for management to hold on a stick in front of employees.
> Leadership is something earned by gaining the respect of your peers through execution
I would say this has not been the case in any company I have worked at with more than 10 employees. I have never worked in an environment where at least one coworker (or manager) wasn't more qualified and deserving of leadership than someone above them. In fact, to the contrary, I have observed poor leadership as the greatest mitigable contributor to failure.
This article, in my opinion, is a bunch of feel-good management bullshit about workaholics and culture fit. The reality is that society produces a lot of bright, young, wide-eyed engineers and then browbeats them into doing really immensely boring things. The reality is that work is called work because it's not play, and you need to be sympathetic with your employees (because everyone wants to solve hard problems, be respected and admired, do cool things, make fat stacks, etc) but also guide them in balancing their personal desires with the responsibility to their salaried employment.
Every one of the behaviors that Eric outlines are natural behaviors. The job of a manager is to channel those desires into positive business outcomes, not sift through stacks of resumes for drones.
I understood it to be something different. If someone gets the title "Senior Engineer", that means they have been acting like a senior engineer. The alternative would be not acting like a senior engineer until promoted to Senior Engineer.
This is part of the author's larger point: your title does not limit your contributions. You don't need permission (a title) to act a certain way. Titles, then, are an acknowledgement, not a license.
This doesn't always work of course, but why would you want to be where you are pigeonholed? I find most people don't stop you from doing more and assuming more responsibility. You do the job you want or believe needs doing and in many cases it's handed to you.
I showed up at my last job in a support role and started doing engineer work. Got promoted to engineer. Started doing architect work and then got promoted to architect.
I've been doing a lot more people management lately, so who knows.
The only real exception to this was when the person with the title was The Outsider. Being a defense contractor, we had many long-running programs and people fairly regularly spent a decade or more on a single program. Among other things this led ti cliques of "old-timers" on programs who would be automatically suspicious of high-level people from outside who were brought in to "help".
I suspect that some recent SV hiring trends will have incresed this tendancy - this could cause problems as a comapny coudl turn into a civil serivce orgaiastion but with out the flexability that has developed over the centurys in the british civil service
Charlie Stoss's descriptions of the laundy are only a slight exageration and he only worked in local govenment :-)
While it's true you can do whatever you want, titling generally functions as a way to control or punish the output of a worker. I have seen folks with lesser titles do something that a manager doesn't agree with and then been censured for it being outside of their job duties. I have seen people with high titles be chided for doing small work that someone felt was below them. I have seen managers become untouchable by anyone below them because the manager title became a shield against any other non-manager's criticism or input.
Titles service to reinforce the employee hierarchy that most business utilize. All the usual problems with that hierarchy are expressed through titles.
Oh man, I wish that were true. Reality is, if the company needs someone to take responsibility, they'll promote the person they like the most and hope they rise up to that challenge. Most of the time, the person making the decision doesn't know much about what it really takes to do the job. They're managers, not engineers. The engineer-manager is a rare breed, indeed.
Promotions are driven by company needs, not by merit. If there's someone available that actually merits the promotion, wow, great. If not, lets roll the dice and hope we get sixes.
One of the reasons why engineers get dicked relative to executives is that engineers tend to be promoted "confirmationally" (i.e. you're promoted to X once you're an X already) while executives are promoted aspirationally. At least, that's how it's sold to the engineers. In truth, it's standard-issue corporate stinginess.
The problems with that are multiple. The first is that you can't just ditch your X-1 (and, typically, X-2 and X-3) work while you're still an X-1 in title. Standing up and taking on X work is a way to make yourself a McNulty: you're likely to be perceived as neglecting your assigned work or poking your nose where it doesn't belong. The second is that companies will often give better projects in lieu of the title bump and the raise that typically comes with it, which is why you often have to job hop to get genuine career progress. Google has a lot of SWE 3's and Sr. SWEs who were underpromoted but work on important projects, and ends up handing out $500k+ retention packages when it realizes its mistake (usually because the underpromoted engineer now has a Facebook offer).
Titles affect how you are perceived by others, including engineers, no matter how often we like the repeat the "but we're a meritocracy" BS. People don't work that way, not even engineers. There are a lot more variables that go into how we perceive and treat people than just their technical output.
So the question "how will my job title affect my ability to do X?" is a perfectly valid one, and meritocracy buzzword bingo is not a valid answer.
Has the author never worked for a different employer? It's very common in a lot of companies for developers to be excluded from (hearing about / learning about / have input on) something, simply because they don't have (specific job title). That's a legitimate concern. Even tiny 10-ish person companies often fall into this trap.
The companies that promise candidates not to worry about job titles because "we're a flat organization", "we're agile", "we're a meritocracy" tend to fall into this trap even more than the older ones do -- knowing and using the right buzzwords is almost a red flag in itself.
So, completely hypothetically, these are all problems that would be bad and should be avoided, as the author writes.
But in practice, it sounds like a candidate was concerned about making sure they'd have enough authority to actually make improvements and not just shoved onto busywork at random.
And instead of addressing that concern in any meaningful way, the company took that as an opportunity to respond with a bunch of buzzwords and ad-hominems, and then pat themselves on the back about it.
In fairness, I don't think most founders set out to create political organizations. (Politics is more of an emergent phenomenon -- a "god of the gaps" that arises to fill informational voids and power vacuums.) But saying titles don't matter is either being very naive, or being intentionally misleading. Naive: when someone high up in an organization (a founder or VP, say) isn't aware of the extent to which titles matter, because his title has ensured that people always listen to him. Misleading: when a boss or hiring manager tells a prospective employee that titles don't matter, in order to get that employee to accept a title below his expectations.
That having been said, I do occasionally encounter the "Entitled" anti-pattern the blog post talks about. You see it in employees who feel marginalized. Sometimes you see it in new employees, especially those who have recently come from a much bigger organization, and who are used to formalized hierarchies. Sometimes you see it because your organization really does care a great deal about title, and you've been blinded to the extent to which it does. In any of these cases, I tend to think the burden is on the organization/boss to try to understand the source of any title hangups. Sure, some people are just wildly insecure, and they'll never be content with any given title. I tend to think these people are the minority of most "Entitled" scenarios. And at any rate, it's more productive to assume that the person feels marginalized in some way, and to attempt to diagnose why -- rather than to blame his fundamental psychology.
What I mean is, perhaps the people who are able to clearly and concisely explain their ideas are the ones who are most likely to become senior engineers, managers, etc? As they proficiently share their ideas, they tend to have a lot of influence, which in turn leads to them getting promotions. Communication and interpersonal skills are a huge part of being a good engineer working on a team.
There was a guy I worked with when I was a new grad, let's call him Bill. Bill himself was also pretty fresh, had a few years under his belt maybe. But Bill can communicate with a level of clarity that I am still in awe of. Of course he became a senior engineer while he was very still fairly young, and of course he has a lot of influence. The technical skills to become a Senior Engineer are only half of the equation.
I say this all as a (non-senior) engineer who finds he often has a hard time with communication and interpersonal skills. I'm growing technically, but I've got to work way harder to grow those soft skills at the same rate.
I prefer more structure now to avoid running into that sort of situation.
Another way of looking at it is if title is not defining scope of something, then what is its purpose?
Beware of "I didn't get (much of) a raise but I got a promotion"
http://www.daedtech.com/the-7-habits-of-highly-overrated-peo...
HN discussion: https://news.ycombinator.com/item?id=6965295
It goes both ways. Many of us have been guilty of some of these behaviors from time to time. The better of us learn to change and adapt. The important thing to remember when using generalizations like this is that they are simplistic and not representative -- it's not wrong to be a software developer who is concerned primarily with the intricacies of the kernel scheduler; it's a complex topic and specialization is useful in some organizations. It's rather useful to be someone who is articulate and able to stick to their opinions when they have the confidence and factual evidence to know they're right.
I wouldn't really consider this a list of "anti-patterns." Patterns, yes, but people can change their behaviors with a little helpful prompting.
In all seriousness, if I asked about job titles and got this trifle as a response that would be a negative signal for me. Politics function whether engineers choose to believe it, or not.
See the top comment, about whether or not this article is just Talkers with their sound and fury, signifying nothing.
Thinker: Design, but also don't hesitate to execute.
Talker: Discuss, but make sure the the discussion is fruitful, succinct and to the point.
The Entitled: Don't care too much about my title or titles of others - we are all working together to achieve some goal.
The Owner: Be open to suggestions and changes by others to ideas and code that originated with me.
The Recluse: No matter my specialization, I have to be able to pick up new technologies and processes, instead of blindly delegating every item I feel is not part of my expertise.
Negative personality traits of the team is a constraint just like anything else – a smart leader will be able to foster thinkers into coming up with really actionable ideas, soothe entitleds' egos, calm down the talkers etc.
I recognize the whole 'management is evil' thing which I have found is a pretty common component. That tends to go away with experience (or at least get tempered into something more along the lines of it being a necessary evil.) but the title one is something I related to in the post and thought I would comment on.
The titles people have set expectations in the company and in their peers of what someone will be able to do or get done. Generally if the pay is sufficient, I've found you benefit from the lowest possible title because it allows work you do to be contextualized within the expectations of the title. If you're much 'better' than the title gives you credit for, then you will "exceed expectations" and get maximum rewards. One's ability to "move the needle" as it were, is really related to who you connect with at the company. And it is hard for introverts to connect with a lot of people so this is particularly challenging. But to put that in context, a junior person who has the respect and friendship of the CEO can have a huge impact, whereas a junior person who has nobody's respect and doesn't know anyone, will not have nearly as much ability to impact things. The key here is to not let your "title" to self edit you from interacting with everyone.
Pay grades however are a different story. An interesting conversation to have is how is pay decided and how is it influenced by contribution.
First, the act of identifying patterns (anti or not) is not equivalent to labeling human beings with the same terms, nor does it imply that one takes action (management or otherwise) against people as a result. Rather, it's a way to extract and summarize similar behaviors in a way that others can interpret and apply in their own situations. The post intros this as a set of negative pathologies (not people) I had encountered as an engineer (not manager) in the previous decade, and closes with observation that we all can suffer from these in some form or another. In the end it proposes that avoiding them at scale is a cultural problem, hard fought by continually embodying, supporting, and rewarding the positive aspects of the culture, not a management problem won by platitudes.
Second, it is speaking from the viewpoint of someone building the foundation of an engineering culture at a startup. These are not observations of our culture at the time, but rather a set of pathologies we sought to avoid as we grew. It is true that many other companies do not eschew these pathologies, and for example, result in the title abuse referenced in many comments.
Finally, with respect to titles in particular, we absolutely do embrace engineering titles at Delphix. Promotions are a visible and meaningful mechanism for recognizing (through titles that persist beyond these walls) and rewarding (through compensation) our best engineers. The point is that promotions reflect actual impact, not the result of political scheming. As a result, people don't listen to you differently, you don't get fed different opportunities, and you don't get to do more impactful things. Maybe that's not how it works elsewhere, or the audience doesn't believe me that it's possible to achieve, but it's very important to me that it work that way here.
Move fast, break a few things and
I think it is not an issue with being able to do something. I believe the reasoning is something of the sorts of "Being just a Staff Engineer, I'm not doing X because I'm not payed enough to do it" or "it is not my responsability", while being a Senior Staff Engineer has a bigger pay and more responsabilities. In my opinion, it is a perfectly valid stance. Someone should just talk to this engineer to clear up any ambiguities.
And I totally agree with santacluster's comment.
in fact, humans are deep, complex, multi-faceted beings who may have many strengths and weaknesses at the same time, and thinking of people only by which "anti-pattern" one of their flaws resembles is insulting and limiting. most of the time a person's flaws are not fatal, and in fact they are almost always a reflection of a poor environment more than any essential characteristic of the person.
my take away from this article is that a hiring process needs to look for a more holistic picture of the candidate and not try to eliminate people because they match a contrived "anti-pattern", as if humans could be fitted to patterns in the first place.
It provokes a similar reaction to when I see people using 'grok' unironically in general conversation: it just feels a bit awkward and almost forced.
Commenting on the actual article, I agree with others who have pointed out that this article isn't particular helpful. It's a gross simplification of human behaviour and makes me wonder what the working culture is like at an organisation that would be 'disheartened' by a newhire asking questions like that.
I think it is useful to use development-related terms when discussing non-development processes and concepts. Analogies are a great way to communicate subject matter that the audience may not be familiar with, especially when that intended audience is a narrow band (e.g., developers).
My girlfriend is a flutist (or, flautist for European readers), and oftentimes, when we're discussing something like octatonic scales, it helps for me to think of these concepts in a way that I feel comfortable (set theory).
He usually comes up with some half thought through suggestion, and I flesh out the real details of what needs done and implement it properly, trying to avoid all the pitfalls he didn't even bother to think about.
Deleted comment
Let me just take one shot, and then I'll go away.
In this case, after hours of discussions, I couldn’t shake this engineer’s fixation with understanding how his title would affect his ability to have impact at Delphix. After deciding that it was not a good cultural fit...
Something I've learned the hard way is that people are insecure. I don't mean that they're always emotionally insecure (but that can be a part of it) so much as they're also positionally insecure. People care about titles because... (wait for it) titles matter.
A title is a starting point. It's a formal statement of trust in a person. If my competence is a 7.3 and yours is a 7.6, people are going to listen to the person with the higher title, whether that's you or me. In fact, there are many organizations (even Google) where decisions are made primarily on title and formal job description, and that doesn't mean that they're bad organizations. It just means that they're big. Chain of command is a reality of life. Not a pretty one, but it's what your up against, and I have no problem with someone wanting to know where he's going to stand before he risks his career by stepping into a new company.