First, some context.
One of the things I (recently) currently do in my absolute rollercoaster of a career is headhunting. Well, kind of. The way that it works is I get hired as a consultant to run the entire end-to-end recruiting pipeline for a company, integrating with them for the duration, and paid by the day. I look for people for as long as they pay for, and they get what they get. If that sounds odd (why pay an consultant for something your cheap HR can do?), consider the following: I find competent people that both management and other workers are happy with, in 2-3 weeks, even in the current market, where most of the other companies are looking for people for 6+ months without finding anyone. Since I handle the entire process end-to-end, I've gotten to see a LOT of CVs and interview a LOT of people. I sometimes post about the patterns I see and advice on my fedi account, and that is also why this bit of context is relevant.
I generally do my best to give feedback to people when they ask for it (it is completely infeasible to give it to people by default, and a lot of people don't even want feedback; I've tried!). One time, someone asked me what they lacked on a technical level, how I evaluated their specific situation. What I told them was that they had no taste. This post is about what I meant by that. Pardon the even more rambling coming up!
Principle of Stress Uncertainty and Opinions #
So here's a secret: you can't measure technical competency directly, at least not in a recruiting context. You can measure someone's ability to do whatever you have them do under pressure. Unfortunately, this is not particularly well correlated with competency, and moreso correlated with things like the ability to present oneself, handle stress, etc. Ergo, you can't measure technical competency (well) directly.
You can obviously do some things. There are various exercises ala fizzbuzz that should be completable without a sweat to anyone that knows anything. Thing is though, being able to implement a fizzbuzz-like is not a sign of competency, it's the bare minimum. As such, we are left with ensuring the minimum is present, and then trying to measure side-channels. My general approach is I try to figure out what side-channel the interviewee is likely to perform best on, and go there. The reality of the current market is such that even looking at the absolute best someone might have to offer, you still will generally get disappointed, so you might as well give them the best chance possible.
One pattern I've observed is being opinionated. People seem to have strong opinions on subjects either because they are hopelessly clueless, or because they've actually thought about the subject a lot. If you ask someone for opinions, hot takes, whatever on a subject they're meant to know a lot about, you can pretty easily tell which one of those it is if you know anything about it yourself! In fact, because interviews are linear (as is time), you can literally do this in order: first ask them what's a subject they would know a good amount about, then ask for opinions on it. This isn't foolproof obviously, they might not be comfortable sharing, or they might name something they don't know that much about because they think it's "expected", but you should at least try to control for these things (being transparent helps).
Thing is though, this is useful even if the subject has nothing to do with the job. If they pick something that has nothing to do with the job, then they are picking something they believe they truly are serious about. This allows you to set an upper limit: they will not master any subject more than this. So if it's all pedestrian, well, it's not getting any better. On the other hand, if they have a surprising amount of depth, you can see how they self-estimate on that area, and then infer real values from their other self-reports, which means you can be more directed in further probing.
Taste #
Obviously, having strong opinions on something, even if the opinion itself is quite deep, does not necessarily mean that there is a topical mastery. All it means is that they clear a certain bar below which any opinion is doomed to be incoherent. There's lots of other things to measure like passion for a subject (out of scope today). However, while we're on the topic of competency, the next topic is taste.
The vast majority of people do not start off passionate for a subject. This is normal: it's uh, not expected to be passionate about something you know nothing about. This means that for most crafts, people will start off being results-oriented. There are things that work, there are things that do not work, pick those that work. This is all fine and good, but it lacks taste. Consider food: there are things that contain calories, and things that do not, but I sure hope your diet doesn't consist entirely of oil.
Taste then, is the ability to discriminate things that technically may work, but exhibit otherwise undesirable (or desirable!) characteristics. Everyone's taste is going to be different, and tastes will change over time, but having no taste is a strong signal of being either very early in one's journey, or not caring about the subject enough to ever develop taste. You can generally figure out which one it is too.
What's more is, if you can figure out what a person's tastes are, you can infer a lot about how they've approached the things they work on. This means then, that you can infer the directionality they apply to their activities, which allows you to also figure out how they are going to grow over time, presuming things don't change (they will, but it's a good starting point). We can call those "good taste" and "bad taste", if you will.
In my specific situation, I get contracts of this type in part because my tastes are inherently compatible with the company's desires and objectives. This means that even if tastes are not universally qualified (they're probably not), what I judge to be good taste is likely to be good taste for the company too. Consequently, I near universally will prefer the candidate with good taste over an equivalent candidate without that.
Style #
Taste is well and good, most people never develop one, no matter the subject, but it's only a part of the story. Having taste is a question of what you're willing to accept, what feels wrong and what feels right. You can have taste on things when you're merely a consumer of them, though. It is possible to have a taste for rust programs without ever having written one (a rust program, or even a program in general). It does definitively demonstrate (when it's not clueless) a good amount of exposure, which is a powerful side-channel, but because of this, it can only go so far as well. The step after that is style.
Where taste is a mental model of what is "good" and what is "bad", an "I know it when I see it" of sorts, style is about one's own output. As a consequence though, it is even harder to measure.
Consider for example: is the person doing things this way because this is their style, or because they can't do it otherwise? Is it a conscious decision based on something, or is it that they can't find any other way, or that it's the first thing that was presented to them?
For these reasons, it is generally useless to even think about style if the person has no taste. You are likely landing in one of the cases that don't mean very much anyway. Even if you try to ask them "why like this", what you're most likely to hear is post-hoc rationalization.
If the person does have taste though, you're starting to get somewhere. For example, let's say that their style goes against their taste. Well, this would suggest that they are more on the consuming end of things. They've developed a taste not by making but by using. That's not necessarily a bad thing, but an important thing to know!
Since very few people have any taste to begin with (good OR bad), I do not as of yet have enough data to make what I would feel are interesting conclusions on this. I definitely know it exists. When you read code, or a book, or a blog post by someone with style, or anything like that, you can often recognize the person behind it even if you hide who made it. Attempts of imitation, when the style is strong enough, don't go very far, because of the semantics underneath. The extra data I would want would be more to do with how you can judge style, what it correlates to, what are the failure modes of trying to probe it. If I ever do get these, I'll probably write a follow up (style.md?).
Fin #
In some ways, this post is a companion post to the (as of yet unreleased) post on experience and directionality. I hope to make each of them useful in their own way. If you find this subject interesting or useful, do let me know (email's good for that 🙂).
Sadly, this is not really looked at in industry for a very simple reason. Most companies struggle with getting anything that works. Open source projects that have funding struggle with keeping said funding going. How something is done is very much a side-concern.
Having people with taste and style around brings the greatest benefits when it's everyone in your company. This is only realistically possible (due to the current state of the market on both ends) in small companies and startups. Coincidentally, that's the exact kind of company willing to pay me good money to do this stuff. When the vast majority of the market fails to reward these desirable traits (and even works to remove them from existence, a topic for another time), it's unsurprising when almost nobody develops them. That's another reason I value them so much : if I won't keep this stuff from extinction, who will?