173. Job Descriptions

“We’re stoked to hire a 10x Software Ninja with a coffee obsession who loves to work hard and play harder.” Looking for an engineering job requires you to wade through cringy job descriptions. Inspired by changes in the market, in this episode we explore good, bad, and ugly job descriptions. We start by looking at a recent posting by Tuple, who presents a masterclass in writing good job postings. We talk about the value of being transparent when presenting responsibilities and tasks, and including a “Why you might not want to work for us” section. We also discuss the benefits of using inclusive and clear language and prioritizing expertise over years of experience. After looking at how a small company like Tuple writes their descriptions, we compare their example with equally solid job postings by Descript, a much larger group. We touch on how companies use dangerous euphemisms, the unreasonable expectation to be a 10x engineer, and why using humor is no substitute for true authenticity. Near the end of the show, we chat about a common pet peeve; listings that require more years of experience in a language than that language has existed for. As the market is continually shifting, it’s important to maintain your marketability by keeping up with job descriptions. Tune in to hear more of our insights on the subject.


Key Points From This Episode:


  • Rethinking our job descriptions and bringing them in line with our new ways of working.
  • Hear what a well-written job description should include.
  • What a bad job description sounds like; vague in description and responsibilities.
  • Including a “Why you might not want to work for us” section.
  • Using inclusive and clear language and not prioritizing years of experience over expertise.
  • Comparing excellent job postings from Tuple and Descript.
  • Why asking for 10x engineers in a job posting is a red flag.
  • Job posting euphemisms that hint at there being unreasonable job expectations.
  • Reasons why a company may use euphemism and humor in their postings.
  • Unrealistic job descriptions; asking for more years of experience in a language than it has existed for.
  • What it might mean if a posting doesn’t mention what stack the company is using.
  • Honing your skills so that you’re marketable if you end up on the market.

Transcript for Episode 173. Job Descriptions




[0:00:01.9] MN: Hello and welcome to The Rabbit Hole, the definitive developer’s podcast. Live from the boogie down Bronx. I’m your host, Michael Nunez. Our co-host today.


[0:00:09.3] DA: Dave Anderson.


[0:00:11.1] MN: Today, we’ll be talking about job descriptions. Soulful engineering job descriptions. I’m sure right now there are a ton of people out there looking for work and Dave, you mentioned you ran into an article talking about this.


[0:00:25.9] DA: Yeah, I mean, like you mentioned, I guess we have a callback to our story a couple of weeks ago, the pandemic job shifts, episode 156 according to the stats


[0:00:38.1] MN: Yeah.


[0:00:41.5] DA: Yeah, there are a lot of changes in how we work so even if you already had these job descriptions that you may have had on your site, you may have to rewrite them. And if you are looking for a job, you may have to read them. So it’s not easy to get right and they tell you a lot about, you know, who is writing it. Even if they’re written poorly. Yeah, it’s a good thing to look into.


[0:01:11.7] MN: Yeah, we have some thoughts about what makes a good job posting and what makes a bad one. I think we also will link the article that, I guess sparked, this conversation for us to have in the first place. I think we should start with the good I guess because like we can always do a little good right now at the moment.


[0:01:33.8] DA: From the good side like — so, earlier this week, Aaron shared a job posting on our company Slack calling out like how well-written it was. And how it really told a story about what people are expected to do with that job and what kind of challenges they’re facing right now. And then I came across another article today, talking about, like, how you can — they’re definitely signs that things are not going well also at a job. Kind of just underscoring, like, it’s really important to get it right.


[0:02:15.9] MN: Yeah, I think the job description that was shared was from the company Tuple, friend of the show, Ben Orenstein was on to talk about Tuple and how that works. And then that job description came up on the Slack and we wanted to have a conversation about that, which is dope. Dave, we’re starting with the good as we mentioned, and I think you mentioned one thing to start this conversation is — the clear goals and expectations. Like one could read a job description and understand what they’re asking you for the role that you would apply, if you were going to apply for this job.


I think if you have an idea of what it is that they’re asking you, then you’re more willing to do the work as opposed to reading something that’s very vague and then you know, you're expected to do everything.


[0:03:05.5] DA: Right, you could have a very vague description of your responsibility saying, yeah, you must write good code, you must deploy the server or something. Or write a story but those are very generic things that you could say about any software engineering position to one degree or another. The thing that Tuple post really does well is that, you know, they’re a small group of people and they know exactly what their challenges are. And what the next things are on their plate. It’s like, “Okay, we need to work on this technology and we’re going to use it in this particular way and we need your expertise.”


[0:04:02.2] MN: Right. Yeah, you know, it’s easy for the reader to know right off the bat what’s expected of them so that they can apply to the job or not. Read it, understand, and then you know, go on with your life or you can apply for the job.


[0:04:20.1] DA: Yeah, right. India shared some thoughts on this as well, shout out to her and she specifically called out how this posting has a, “Why this job may not be for you” section. And they’re like definitely good reasons like why that might not be for you. They’re a small company so they don’t have, like, a process and they’re still figuring things out. And it’s like, this is certain, there’s not as much structure. So you know, that may not be for everybody, especially if you’re a junior engineer and you're looking to learn and be caught.


[0:04:58.4] MN: Right, being honest and upfront about those expectations are awesome as opposed to putting someone through the interview process. That person gets hired and then doesn’t really align with how they expected the work to be. Right? Tuple is very upfront and what the deal is and what you’re expected and all that.


[0:05:20.2] DA: Yeah, the thing that she called out that was pretty great, which kind of slid by me at first — but there’s a lot of inclusive thought that goes behind the job posting as well.


[0:05:34.6] MN: Right.


[0:05:36.1] DA: You know, it’s not full of pronouns, it’s not about the kind of beverages that they say they may enjoy together. With, just specifying that they’re tasty and not necessarily that they are alcoholic or nonalcoholic or tea or coffee or whatever.


[0:05:55.2] MN: Right.


[0:05:56.8] DA: Also, in terms of years of experience, it doesn’t say you need to have 20 years of web RTC experience. Like being a founding member of the body that proposed the standard thing there or whatever. It’s just like, you have to be an expert. And if it took you a year to get that expertise then that’s great. You just need the right experience, it doesn’t matter how many years.


[0:06:26.3] MN: Right, they ask for an expert, not like a ninja for example, a cowboy, they’re really specific in what they were asking for.


[0:06:38.7] DA: Yeah, I mean, those things that kind of paint a picture but like they’re not really specific to the reality of the job. Like, you won’t find yourself like on a horse, in a canyon, wrangling some web connections. Or like a Shinto village, like, throwing stars and you know, assassinating somebody, it’s like, “No, you just need to know your shit and —”


[0:07:09.6] MN: I’m flipping out, banging on the keyboard, flipping out again, that’s not what they’re expecting you to do.


[0:07:15.4] DA: “My god, this guy is too much, he’s doing back flips. Why did we write we needed a ninja?”


[0:07:27.6] MN: That would be hilarious. Someone shows up with actual, full-blown ninja skills.


[0:07:33.1] DA: Yeah, always sneaking up on you too.


[0:07:40.9] MN: Throwing ninja-stars down the hallway when you got something wrong on your PR.


[0:07:46.0] DA: Right, it’s like, just hitting you in the face with a ninja-star, it’s like, “Dude, come on bro.”


[0:07:52.8] MN: “What are you doing?” I think there was another, as we were looking for content for this episode, I was looking at a different website for a completely different job description. I think one of the things that I really enjoyed about this particular job posting is from descript.com who were having a conversation on —


[0:08:13.0] DA: — Yeah, we were, like, just completely over the moon about this, this product that just looks so cool, guys, give us a free trial, we’re shouting you out and job posting. Cool podcast tool, anyway.


[0:08:27.2] MN: Yeah, what are the things that I liked about the job posting is it was short and straight to the point. It wasn’t like a lot of fluff or a lot of buzz words and all sorts of different things that you would normally expect in the job posting. It’s like, “Hey, so in three sentences, what this company is about. Two or three sentences about the responsibility and then like, a generic detail, generic bullet-points of things that you would expect it to know when you’re doing the job.


I know we were talking about how, like, things can be pretty vague. But I think they were not — I would say they were not vague because they were asking for specific skills. At the same time, just giving you exactly what they need. And what they do and what to expect and that kind of stuff. It was like very short, there’s job descriptions that can be very long and have all sorts of lingos and nuances and it’s like, is that part of the job?


[0:09:28.6] DA: It’s kind of interesting like comparing the two as well. The Descript posting and the Tuple posting. Descript says that you are going to collaborate with the product and design teams on crafting great user experiences, that tells a great story. Obviously, who you’re working with and what your goals are. And Tuple is a really small company with like four people so they’re like, you’re going to work with Spencer and — here’s their Twitter accounts and you’ll track them out, you’re going to be best buddies or you know, nothing like that but you know.


[0:10:08.1] MN: But then they’re in different steps of their organization, they’re going to write different job posting but even then like there are definitely like have a lot of good points and like thumbs up to their job description and what they – where they currently are and what they’re looking for. I think they both have the same elements of ask and want and information for the individual to then apply for the job.


[0:10:35.5] DA: Right, like really trying to paint a picture of, like, what your experience will be like taking this position. As little number of sentences as possible.


[0:10:47.7] MN: Yeah.


[0:10:48.4] DA: In the Stride posting, I was curious because I haven’t looked at a Stride job posting in a long time. But like, we really quite literally break down the minute to minute day of what your day is going to look like. And who you might be having coffee with. It’s interesting because it is like — it’s a very varied experience working for a consultancy like there’s a lot of responsibilities and a lot of different things that we find ourselves doing.


I thought that was an interesting strategy for laying it out there.


[0:11:21.4] MN: Right, even then, not to say that a long job posting are bad but they lead to bad patterns that you would find in a bad job posting.. But if you're like super detailed and you’re given information enough where the individual to then pick it up and you know, understand what the job is and that makes — whether it’s short or long, it makes that job posting better if they craft it with good practices, like we mentioned before.


I mean like, well, we can jump right into what are some bad experiences when we’re looking at job posting. I just like the 10x stuff like the whole idea of a 10x engineer, my god. Who comes up with this stuff? I’m okay with being a 1x engineer and a father. And been likem the craziness that people expect the 10x to do, it’s like, pretty hardcore man. To ask specifically in a job posting is so dangerous.


[0:12:26.6] DA: Right like there are euphemisms for red flags, maybe, that kind of are similar to the 10X. Where they say if you have an entrepreneurial spirit, maybe that means they are going to work a lot of hours. Or you work hard, play hard. That means that we’re just never going to let you leave. It may be harder for you to be a father. Basically because you got play hard but, you know, Gio wants to play hard too so.


[0:12:59.6] MN: Oh yeah, you all can’t see him but he is back in the bedroom ready to play.


[0:13:06.0] DA: Oh well there, he is heading off.


[0:13:08.7] MN: Yeah, he is slowly crawling his way over here. Albie is in the kitchen, he wants to play. And, like, the idea of having that entrepreneurial spirit, we see that through all over the place. We’re just pretty much, “Well, you gotta work to the bone and we’re going to have you on call every week because that’s what we are planning to do for you because we have a product we want to run and be successful like that.”


If that is your kind of stuff man, then go right ahead. If they’re paying you right, then sure but that could be very, very energy draining for an individual to want to work in that environment.


[0:13:45.1] DA: If there’s been like — if the thing that you mean is that, like, we expect that you’ll be working lots of hours then maybe you’ll say that instead of saying, euphemism. There is a balance too between being funny in a job posting, like you are talking about, like talking about ninjas and cowboys and being authentic versus being bureaucratic. And on edge, kind of thing. Because you do — there is a little bit of marketing spin to it. Which, I think, is maybe why people want to bring cowboys and ninjas into it because, like — “That’ll sell,” right?


[0:14:32.3] MN: Yeah, we will get somebody who would want this job.


[0:14:36.4] DA: Right, we got your butts in seats and cowboys and ninjas get butts in seats and so but, you know, maybe you could do it by being authentic and having your own voice.


[0:14:48.6] MN: Right and yeah here is another one I think a lot of people may have seen. We want someone who has five years of experience in Graph QL or like 10 years. I need an engineer who has been working in React for 10 years. Must mind —


[0:15:12.3] DA: Okay, you are looking for the inventor of those things. You are looking for somebody for Facebook.


[0:15:19.4] MN: Yes, you’re looking for Facebook.


[0:15:23.1] DA: That or like, you know, 13 years ago I just really need well authors of Go.


[0:15:30.6] MN: Yeah, I need the gopher to work on this project right now. It’s just so unrealistic to ask for someone when those numbers of years that come out of these job descriptions can be a bit extreme, right? Like we have just mentioned frameworks and program languages that were asked for more years in their actual existence, which is crazy. But this is not, like, I have seen this before, which is insane that they are doing this.


[0:15:59.8] DA: Right but it’s like they kind of — there is a weight to it. It is like multiplying it by something and making it bigger. Or maybe you could put it in a different size font. If it is 10 years it’s like in size 10 font or size 100 font or whatever.


[0:16:21.5] MN: Yeah, it could be a bit extreme.


[0:16:23.3] DA: I mean really, you could be more inclusive to people’s perspective of themselves and their experiences just by indicating, like, level of familiarity, maybe. If you want someone to be an expert then maybe they should be an expert and if it will take them maybe six months to become an expert or 10 years to become an expert, it doesn’t really matter. Or if you just need someone to be familiar with it like, okay are you familiar with SQL? That’s fine.


[0:16:57.7] MN: Yeah.


[0:16:59.0] DA: Another thing that I think that will be hard to get right is similar to how we are talking about listing years of experience for specific technologies. There is a balance between listing the stack that you might be using versus having a general description of responsibilities. So the two companies that we called out earlier the Descript and Tuple both have pretty good job postings but very different approaches on that particular aspect.


Like people going out looking for someone who knows a very specific technology, Web RTC, very well. Whereas, Descript is just kind of saying, “We want strong CS fundamentals, experience with web technologies, HTML desk, CSS and rest APIs.” And you know, maybe writing code that’s maintainable, performance tested or testable, whatever. General kind of things but really not specific. So I mean looking at this and it is good because I don’t feel excluded. Because I don’t know the specific stack that they are using. “Well, what are you using? Are you using Python? Are you doing some Python with key learning in there?”


[0:18:32.6] MN: Yeah.


[0:18:33.2] DA: “Are you doing some React?”


[0:18:35.8] MN: That in View or Angular like?


[0:18:38.8] DA: Yeah, is it Angular? Oh man, putting that maybe. I don’t know, I would like to know. Whatever. But I mean I think that reflects the attitude of the company — maybe that, it doesn’t matter.


[0:18:53.5] MN: Yeah, I think like an extremely vague one, according to the article that we mentioned before it is like, “Join us at X, where your mission is ours. Our customers tackle the hardest missions.” Like those things, that is super vague and not really knowing exactly what they are working on. “Those that demand extraordinary amounts of courage, resilience and precision,” like what? What’s going on there? I don’t know what that job description is asking for. Those are for a software engineering job, not going onto the field and whatnot.


[0:19:25.8] DA: Yeah or who knows?


[0:19:29.5] MN: I don’t know what they are asking. I don’t know what stack this is talking about. But I’ve got to be courageous. That is what they are asking me to do. And I think that’s how even though we mentioned that both a lot of Tuple and Tuple and Descript, job descriptions are a little different. I think they still drive the point home of what the stack is and what they expect and they may leave some room for mystery, which is not ideal.


But I still think like they go over, generally, what it is or what it takes to get the job. And, you know, they could be one of those place where it’s like, “Oh we have Elixir. Oh, we are picking up Elixir for this project. Are you willing to learn Elixir and make it happen?” And that kind of stuff. So maybe they can’t mention the text stack because it can change depending on what you want or what value you may bring as an engineer to the team.


[0:20:21.8] DA: Yeah, I think also there is a degree of leaving it open for conversation and being, like, a marketing pitch for it. Where I looked at the Descript job posting and it doesn’t talk about what frameworks or technologies you are using. And I’m like, “I am going to look at your website and then I am going to pull it apart. I am going to see what you are using. Very curious. I want to know.” This is why I look at job postings all the time, I just want to see what your stack is. I want to know.


[0:20:53.8] MN: Yeah, what are people asking for like what’s popular right now. Is Broccoli JS finally a thing? I don’t know.


[0:21:02.6] DA: [Inaudible] in the sun. I feel like we’re thinking about this, like, leading up to our discussion. It reminded me of reading online dating profiles to a degree. You are trying to craft the perfect profile and you want to list out all of your favorite songs. Like all of your favorite bands or something like that. But maybe that is too much. You don’t want to list out all of your favorite databases but you want to be like, “Okay what fundamentally about database is it that’s important to me?” I like relationally modelled schemas that — in sunsets —


[0:21:47.6] MN: — Yeah and then you gotta make sure that what you currently have or are learning skills that the industry is asking for, right? You want to make sure that you are up to shape. If you got to go back there in the field and be on the market again, you have to make sure that you are marketable, I guess, you know? So there are people out there who still listen to Green Day. That’s good or some other punk rock band. I haven’t listened to punk in forever, people. Don’t make fun of me. Green Day is my jam though.


That is a totally interesting look at the job postings as we currently are in jobs right now but what are people having to learn to stay and to get a job? And are we capable, kind of deal?


[0:22:37.7] DA: I mean like good software engineering doesn’t go out of style.


[0:22:41.9] MN: There you go.


[0:22:43.0] DA: Go listen to all of those Rabbit Hole Podcast episodes. [Inaudible], software engineering testing — and you know you’re good.


[0:22:51.4] MN: I got two —


[0:22:52.6] DA: Web RTC, then you’re good. Web RTC, then you’re not good. Get that out there.


[0:22:56.2] MN: Yeah, get out. Go ahead, make it happen. Two more websites I want to shout out that also bleeds into this conversation is the 10x.engineer that’s a good one if you want to figure out the list of what it takes to be a 10X engineer, you can definitely go and check that out. And the other one OneX. What was that?


[0:23:16.4] DA: — Please add us, let us know what you found on the website.


[0:23:19.1] MN: Yeah, when you find the list then you let us know, 10x.engineer and the other one is onex.engineer and let us know what you think about that particular website. I thought it was pretty cool and definitely —


[0:23:31.1] DA: — I think [inaudible] about that. It is a good job posting itself I guess.


[0:23:37.2] MN: Yeah, it is awesome and maybe sometime soon we’ll talk about the OneX engineer. If you find a job posting that you do like, please share it with us. I’d be more than happy to share good job postings but job posting for people who are looking for work too. We mentioned before, Tuple is looking for engineers. Just to shout out to Ben Orestein again on that. Descript, holler at us please, you want to want to check out the sweet, sweet app.


There is a job description, job posting for that. Stride is hiring. And I imagine many others. So definitely find some examples of job descriptions out there and we can help job descriptions be better.




[0:24:11.8] MN: Follow us now on Twitter @radiofreerabbit so we can keep the conversation going. Like what you hear? Give us a five star review and help developers like you find their way into The Rabbit Hole and never miss an episode, subscribe now however you listen to your favorite podcast. On behalf of our producer extraordinaire, William Jeffries and my amazing co-host, Dave Anderson and me, your host, Michael Nunez, thanks for listening to The Rabbit Hole.




Links and Resources:


The Rabbit Hole on Twitter


Michael Nunez

David Anderson

William Jeffries

Episode 156


Tuple Jobs

Ben Orenstein

India Amos


Descript Jobs

Green Day



Stride Jobs