12 ms·
> When someone tells us in an interview they’re excited about working here because they like functional programming (say), we count that as an indication they m
by pickledish 4y ago
> When someone tells us in an interview they’re excited about working here because they like functional programming (say), we count that as an indication they might not be a good fit.
Hmm. I’m not one of these tech-stack-driven types of developers they’re talking about in this paragraph, but even I had to raise an eyebrow here — this seems like the kind of rule that’d have a super high false negative rate. I understand the kind of person they’re trying to avoid hiring by accident, but… being excited about a cool language being a “point against” to try to serve that goal? Seems a little over the top
- deleted 4y ago[deleted]
- autarch 4y agoHe doesn't go into much detail here but what I _imagined_ he meant was that if someone came to an interview excited about Elm but knew nothing about the company, that would be a strike against them. If someone came excited about Elm _and_ was interested in the company's product that was fine. But this is just me filling in the blanks as I think they should be filled in. It'd be great to see him spell this out a bit more.
- duxup 4y ago> but knew nothing about the company How much does anyone really know about a company they don’t work at? And if that’s the issue (I don’t think it is from what o read) then they just have to say that and not the bit about functional programming.
- whateveracct 4y agoIt's just ego imo.
- bawolff 4y ago> If someone came excited about Elm _and_ was interested in the company's product that was fine. We're talking about a company that makes workplace engagement surveys. I have trouble imagining anyone is actually truly excited about that product. No 5 year olds ever said that they want to grow up to write engagement surveys. They aren't saving the world. And that's ok. Most products aren't very exciting when you get right down to it. One of the most toxic beliefs in tech companies is that everyone should be obsessed with the product.
- whateveracct 4y agoI had a leader once who told us outright any mention that Haskell was a motivation for the job is a red flag. He explicitly didn't want people who were significantly interested in us due to our Haskell use. Turns out Haskellers tend to be drawn to Haskell companies in no small part due to Haskell, so we failed to hire basically anyone after the leader came aboard (most were all yes but a single no from the leader) and then the leader pushed us to move off Haskell citing difficulty hiring and that he had hired people in another office who didn't know or want to learn Haskell. Dirty tactics.
- ParetoOptimal 4y ago> I had a leader once who told us outright any mention that Haskell was a motivation for the job is a red flag. > then the leader pushed us to move off Haskell citing difficulty hiring and that he had hired people in another office who didn't know or want to learn Haskell. Dirty tactics. Yeah, that was planned from the beginning.
- whateveracct 4y agoOh definitely. There was even more bad actor nonsense too but I don't wanna say to much or else I sky demask myself. But I promptly quit and the dude went from buttering me up to to make me stay to insulting my new job in the exit interview real quick once I made it clear I had no interest in being his employee. I had never experienced someone so manipulative in a workplace before. If my current employer hired this dude as VPE, I would immediate quit. Just an asshole.
- Jcampuzano2 4y agoBe honest though, I'd say a good 95% of jobs are literally something I could give 2 shits about or I have absolutely 0 interest in what their core offering is. I have rarely worked in a place where I was "excited" about the company or its mission. Sometimes the tech stack itself IS the interesting part of the job or there were interesting problems to solve, but the company itself? Sorry, I honestly don't care outside of the paycheck.
- ParetoOptimal 4y ago> If someone came excited about Elm _and_ was interested in the company's product that was fine. Why hold people interested in Elm to a higher bar than the 90+% of hires who don't care about the company they work for and just work for $$$?
- autarch 4y agoI'm not suggesting people have to care deeply about the company they work at. I'm just saying that I'd expect people to come to an interview having read the company website and job description. That's all.
- joneil 3y ago(I work at Culture Amp) In our interviews one of the things we look for is people who care about our mission (improving workplace cultures, basically). Its not a requirement but it is one of the factors when it comes to making a decision, particularly if we have more qualified candidates than roles. > If someone came excited about Elm _and_ was interested in the company's product that was fine. I'd even say if someone is excited about Elm _and_ was interested in making a great quality product (great UX, accessible, performant, maintainable etc.) that would also be a good fit. I also mentioned above that the engineers we hired to work on features that happened to have Elm front ends would have been working on Ruby on Rails backends most of the time, and we generally expected engineers to be willing to jump into both sides of the stack, even if they specialised in one or the other. A person who is really excited about functional programming and joining only for the chance to work in functional programming languages might end up grating against working in a rails codebase. That's the sort of practical thing we were trying to avoid. (The same would be true today for candidates who are super excited about TS / React / Next.js - they're still going to be expected to occasionally jump into whatever backend stack their team is using).
- mynameisvlad 4y agoYeah, that seems like a weird rule to have. If anything, I’d want engineers to be excited about languages, tools and paradigms, even if they weren’t exact fits with the current stacks we’re using. The whole article’s point is that these change, anyway. So those people they’re rejecting on this silly rule might eventually become the people they crave if functional programming becomes cool again at Culture Amp in 5 years.
- topaz0 4y agoI think the idea is you want to avoid hiring the person who will quit if you eventually stop using their pet technology.
- mynameisvlad 4y agoThat would be reasonable if the post put it that way, and said they ask lots of additional questions and back and forth to determine this specific thing. But as it is stated, it just seems like an overly broad rule that will hurt more than it helps in the vast majority of cases.
- topaz0 4y agoThe previous couple sentences before what your parent quoted make this clearer IMO. e.g. they don't want hires to be "purely technology focused".
- kelipso 4y ago> if functional programming becomes cool again at Culture Amp in 5 years I think that's kind of the thing they're actively trying to avoid. They don't want one type of programming to become popular and have the team decide to spend $X and y months and switch to it because it results in increase in some nebulous programming productivity or whatever because they hired a bunch of z programming paradigm fans, and then later spend more money and time to switch to another thing etc etc when the importance of programming language or frameworks on the making money aspect of the business is not clear at all.
- wpietri 4y agoMost hiring rules have notable false negative rates and that's fine because you have multiple applicants per position and because getting it wrong can be very expensive. Personally, I think being excited about a cool language is a mixed signal. An interest in technology is great, but on the clock that has to be thoroughly suppressed in favor of actual business needs and constraints. At home, I like fucking around with all sorts of stuff. At work, I'm a confirmed member of the Boring Technology Club. [1] [1] https://boringtechnology.club/ https://boringtechnology.club/
- duxup 4y agoIf all you want is something to thin a stack of resumes why not be honest and just randomly throw out the required number?
- wpietri 4y agoBecause you're looking to thin it differentially, such that the odds of a good hire go up, or at least the odds of a bad hire go down. One kind of bad hire is the technology-lover who values their own preferences over the needs of the business. E.g., a friend of mine took over a team with a couple of strong FP advocates on it. They had written a core tool in very FP-ish JS. They enjoyed the novelty of the greenfield work, but once it was down to just making the changes users needed, they got bored and moved on. The remaining part of the team tried picking it up, but it was too alien, either because of the FPness or just because the code was opaque. Either way, they eventually had to rewrite it. Or personally, I have made a lot of good money coming in after some would be brain genius, ripping out their supposedly cutting edge work, and replacing it with something boring. I remember one place where a core part of a system was build on the 0.7 version of then-fashionable technology. Except it wasn't even 0.7 as released, but something with custom patches applied. None of the people there could maintain it. Looking at git blame and doing a little web searching, it turned out the developer responsible had then done a self-promoting conference talk about their amazing work, and then quit shortly thereafter. After I removed it and replace it with something much simpler, not only could the people there maintain it, but it worked better than before.
- duxup 4y ago“Culture fit” always seems like a cover for decisions that are arbitrary or just personal biases…. or in some cases bigotry.
- deleted 4y ago[deleted]
- shrubble 4y agoMy take on this is that he wants to avoid "science projects" being produced rather than client work being finished.
- jrumbut 4y agoIt does feel like a landmine they've set up, perhaps another benefit for them of moving to React is that they can stop worrying about it? I've seen a lot of companies that superficially resemble Culture Amp. I've seen one that uses Elm. I'm probably going to come in talking about Elm. I have some sports-related decoration in my living room. It would be a weird experience for someone if they came in, saw it, started discussing sports, and I was put off by that.
- ironmagma 4y agoAgreed. It's almost as baffling as a company rejecting an applicant for mentioning they like to make money.
- vector_spaces 4y agoI interviewed somewhere once and mentioned that I did some projects in Erlang and learned a bit about functional programming. The founder told me that functional programming is a joke and that I'm clearly a computer scientist and not an engineer, and told me he'd never hire me as an engineer. This was one of my first tech interviews after spending nights and weekends self-teaching. I only mentioned this at all because the dudes LinkedIn said he was involved with some Erlang orgs. Anyway, I did take a non-eng role there, and it was easily the worst and most abusive (like verbally abusive, psychological abusive, generally fucked up) places I've ever worked. Eventually i got my first engineering gig at a more humane company and have been doing great since I learned recently that the other company went to zero. Good riddance (though I am bummed for folks who lost their jobs)
- victor9000 4y agoI would just stress to folks that red flags go both ways. If the work environment seems toxic from your experience as a candidate, chances are it will only get worse once you join.
- scrame 4y agoThat's not both ways. That's exactly what a red flag in interviewing means.
- victor9000 4y agoEmployers look for red flags in candidates, candidates should do the same. My apologies for confusing you.
- Yoric 4y agoI've recently had an interviewer tell me that "Erlang is an academic language" and promptly stop the conversation after that. That's in a company that was attempting to make distributed applications easier to write. This was both: - factually wrong; - a bright red flag that the company doesn't know their own domain as well as they think/claim; - a bright red flag that their scope is much more limited than what they claim in the job description. :shrug:
- bawolff 4y agoIt also seems like the type of bullshit people would spout when asked "why do you want to work here". (Real answer is because i like money, but you can't say that in an interview, and talking about language is generally pretty safe)
- _the_inflator 4y agoTo be honest, I don't ask this question, because of this. Why ask people to lie? Better talk about their interest and how we can both benefit from aligning them in the context of our tech stack.
- hgsgm 4y agoThere are thousands of companies that pay money. Why do you want to work here? Are you literally applying to every company you see a listing for? No.
- bawolff 4y agoIt is a job, not a religion. I want to work at X due to some combination of having skills that match their needs, room for growth, reasonable work culture and reasonable compensation. Just like everyone else who applies. I am not going to have some deep seated emotional attachment to the company, and i am definitely not going to have it at the interview stage. For that matter i might not have even heard of the company before seeing their job advert. My knowledge of what the company is really like at this stage of the game is very limited.
- azangru 4y agoThousands of companies that have openings for positions that match your skills, that advertise at a time when you are looking for a job, and that are roughly within your reach (geographically or sponsoring a visa)? I don't believe you.
- Barrin92 4y ago>Why do you want to work here? Because it's 30 minutes from where I live and the office seems friendly. Most people in the world choose their job for prosaic reasons and because they need to pay rent, they're not on some heroes journey. Employers in the software world need to stop it with the self-inflated ego. You have firms out there who write ad software for billboards and they'll ask you whether you truly believe in their mission during an interview
- jrsj 4y agoEspecially since it's Elm. How many people would have any idea how to even use it & not mention that they're excited by it an interview? Counting that against someone is probably an even worse interview practice than being overly reliant on leetcode. And I hate leetcode driven interviews.
- dkarl 4y agoAfter ten years of using Scala, I think if I was running a Scala team, the safest thing would be to hire people who are not excited about Scala. Like it, yes, but not be super pumped. Developers who are primarily motivated by the excitement of learning new technology tend to write code that commits everyone around them to learning just as much, just as fast, which obstructs and pisses off developers who are primarily motivated by getting shit done. A team needs to strike a healthy balance between powering up with new ideas and getting shit done, and having people in the team who skew to one side too much to either side of that balance is a recipe for conflict. Eventually people will leave, often highly productive get-shit-done people, unless you fire the disruptors first.
- didericis 4y agoI’ve had the good fortune to work at a small place where the understanding between R&D disruptor types and get-shit-done GSD types was pretty good. When R&D types contain themselves/keep the playground from spilling over until whatever they’re playing with is ready/explored, and the GSD types don’t bulldoze the playground and let it feed them new tools/approaches/ideas when ready, it’s like an organization level flow state. Wish I had a formula for how to replicate that, is magical.
- rgoulter 4y agoIn my experience, the failure mode for "GSD" is more likely a thoughtless approach of pumping out code, without consideration for efficiency or effectiveness towards providing value.
- adamwk 4y agoAs an ex-Scala developer I feel like Scala is also the worst language in this regard, even compared to more academic languages. At least Haskell is somewhat prescriptive; in Scala people continually invent new ways to do the same thing. How many iterations of dependency injection or IO are we at now?
- therealdrag0 4y ago
- rwmj 4y agoI run an OCaml project, but I would reject interview candidates who say they are primarily interested in the project because of OCaml. It's definitely a negative factor in the evaluation. I don't need someone adding baroque functional programming purity into a working project with real customers and regular developers. Plus there's a vast amount of C code which is not going anywhere, so I assume they would hate dealing with that.
- neodypsis 4y agoOne can enjoy OCaml while also being proficient in C and C++. I don't follow your logic.
- rwmj 4y agoIt's more that it's a negative indicator. From time to time when we advertise a job we get a candidate straight from a university research background who can't wait to tell us how they love functional programming. We always pass on these.
- doodpants 4y agoThere's a well-known phenomenon where a person who has just learned a programming language will tend to write code that resembles the idioms of a different language that they have more exprience with, until they learn to write properly idiomatic code in the new language. For example, someone coming to Python from Java might write so-called "Java-flavored-Python" until they become more familiar with how things are generally done by experienced Python coders. Your comment comes across to me as "I run a project written in C-flavored-OCaml, and the last thing I want is for someone to come along and pollute it with properly idiomatic OCaml". Because otherwise, if you had good reasons to choose that language, and your code takes advantage of the language's strengths, wouldn't the code already be "baroque" to some degree? Why would you assume a new person would make it worse?
- satvikpendem 4y agoThat's not what it sounds like to me at all. To me it sounds like they have some FFI into C and that OCaml may just be a part of the larger project. There is nothing that indicates that they write "C-flavored-OCaml."
- zac23or 4y agoHiring rules in general are bizarre. I worked at a place that doesn't hire developers who use Visual Studio! Another only hired ugly and disabled women for specific jobs to combat male sexual misconduct. Of course, an "ugly, crippled woman" got pregnant by a co-worker in no time.
- marci 4y agoConflating getting pregnant and sexual misconduct is a weird take. To whom it may concern: being respectful when attracted by someone is a thing.
- zac23or 4y agoThe company does not accept sex between employees, pregnancy is irrelevant, relevant only to find out the relationship between employees.
- charlieflowers 4y agoI thought that same thing. Besides, it wasn't liking a particular _language_ they took as a bad sign, it was _functional programming_. If you like functional programming, and you encounter a candidate who also likes it, and you consider that a red flag ... that seems highly irrational and inconsistent. (Not trying to sound combative. I appreciate the original post! Just being candid about something that sounds odd to me). Edit: I would bet there's more context that was out of scope for the original post. I would not be surprised if it were much more than just "liking functional programming." If someone is overly zealous to the point where you might wonder if they'd start an uprising or storm off in a rage if asked to do anything other than functional programming (or anything else for that matter), that would be a red flag.
- snovv_crash 4y agoI think it's the over-zealous part. If someone can't name a few cons of some technology relative to its competitors, they probably don't have a balanced perspective of when it should be used and when not.
- bsnyder788 4y agoMy thoughts exactly when reading that.
- zem 4y agosomething I always remember from my brief time lurking on comp.lang.lisp is a post saying a really good language is one that would get you to take a job just because you would get to work in it. it's the pleasure of using a tool that fits well in your hand and works with you to get the job done.
- rapind 4y agoI’d wager some big bucks that this never actually happened. Sounds super made up. No way they were like “Well Shelly really knows what she’s talking about, but too bad she’s excited about functional programming… that’s just so 2015.”
- BFLpL0QNek 4y agoIt’s not uncommon. I’ve twenty plus years experience building software on the JVM. From EJB’s of early 2000s to original Spring, then the more recent Spring Boot, a plethora of other JVM tooling. Then I’ve used various languages on top of the JVM, Groovy, Clojure, ETA, Scala. I haven’t used Kotlin only because not had a role that needed it. Then I have a list of non JVM languages, frontend stacks and sysadmin/cloud or as they like to call it DevOps Scala has been my JVM language of choice for the past ten years. When I was last applying for jobs my experience with Scala seemed like it was a huge negative for the companies I interviewed at. It was “you’re one of them” and things got frosty after mentioning I’m reasonably experienced in Scala and its functional programming libraries and enjoy it as find I have less bugs. If I removed Scala from my cv and never mentioned it I got a much more positive experience. Some of the roles I didn’t mind it going frosty. My red flag radar went up aswell and I got the sense of big balls of mud and I’d probably hate it but needed a job. Some it was a huge disappointment, exciting company, exciting projects, perfect fit skills wise but I was seen as a Scala developer not a great fit for Kotlin as excited as I was to use it because of the companies projects. Not sure what I’m trying to say but this “not good fit” attitude doesn’t seem uncommon if you have used specific languages/tools/things people interviewing you don’t like or didn’t grok. Tech talks a lot about diversity which is mostly virtue signaling and forget diversity of minds is also good.
- theK 4y agoI think the original point wasn't about it being uncommon but about it being a significantly problematic rule.
- ParetoOptimal 4y ago> It was “you’re one of them” and things got frosty after mentioning I’m reasonably experienced in Scala and its functional programming libraries and enjoy it as find I have less bugs. You made people feel bad for not questioning their preconcieved notions... that's a nono! :(
- xwdv 4y agoIt’s best not to hire an employee who is excited about anything. These people are running high on emotions and will almost certainly be a troublemaker later. Better to hire a professional who is ready to work and is cautious about rocking the boat.
- paddw 4y agoIt's always seemed to me like one of the main perks of having your company use a weirder functional language was the ability to attract talent that preferred it to more standard choices. An experienced developer might be willing to actually take a pay cut if it means using a favorite language rather than grinding out another Python/Typescript CRUD app or what have you. I understand where the author is coming from, but I think having a preference and being excited about a tool your going to be working with all day is a reasonable thing, and it's ok if developers are excited about a technology for its own sake as long as they can make that compatible with continuing to make the business work.
- hobofan 4y agoAs they said, it's an indication not a "rule". Anecdotally in interviews, it seems that most people that say that they like functional programming, tend to like the idealized notion of functional programming more than actually building real-life systems with it. When asked about their past experiences with functional programming you'll rarely hear about anything else than toy projects (in contrast to other things people often list as things they are "excited about"). Connected to that (anecdotally) when working with them, those same people tend to be the ones that try to make the code "clever" or overly perfect (in an attempt to fit into the ideal functional programming paradigm). That usually leads to code that's extremely hard to read and maintain as a team. I think full functional programming languages can have its niche, but I think most projects are better served programming languages that only borrow from functional ones in certain aspects of the language/standard library.
- darkerside 4y agoI agree that this sounds concerning, but in the context of the article, I see where it's coming from. They identify as a "product organization", not a tech one. They want people who are more excited about the problem they are solving than the tools they will use to solve it. It reminds me of an article I've seen that talks about how companies have such generic "values" that they're not even worth having. Innovative? Well, of course. Integrity? Duh. Better values would be those that not everyone will agree with because it tells you what that company actually stands for. "Product over Tech" seems like a great one. Anyway, as someone who has definitely been super intrigued by FP, I was initially alarmed by this comment, but understood it better after some thought. After all, he's not saying it was a litmus test, just something they noticed that might be a hint for who would and would not work well at this particular company.
- Buttons840 4y ago> I understand the kind of person they’re trying to avoid hiring by accident I think I might be that kind, firmly in the ivory tower. I always feel frustrated and isolated because people just don't engage and acknowledge my concerns. I post in a busy Slack channel that the new API we're developing wont respond in less than half a second on my own computer, I ask if my setup is wrong or if our API code is just slow as shit. Nobody answers, but it reinforces my role as an ivory tower trouble maker. Two months later everyone is panicking that the new API is slow as shit. Or I find that our test database has a millions of plaintext passwords from real users (yes, some of you reading this were probably included), after arguing that this is effectively a data breach and we're failing our customers I finally prevail, and we wipe out the passwords from the test database at least, but this causes some extra work fixing some automated tests. Again, I did the right thing but in the end I was viewed as a trouble maker. Etc. This reflects my entire career. It just feels like something is wrong with the industry.
- ParetoOptimal 4y ago> I always feel frustrated and isolated because people just don't engage and acknowledge my concerns. I've adapted by expressing only my highest concerns and making myself not care as much, honestly. The amount of this you have to do if you're this type varies from place to place in my experience. > I post in a busy Slack channel that the new API we're developing wont respond in less than half a second on my own computer, I ask if my setup is wrong or if our API code is just slow as shit. Nobody answers, but it reinforces my role as an ivory tower trouble maker. Two months later everyone is panicking that the new API is slow as shit Then if you bring it up you're just dragging everyone through the mud ;)
- brundolf 4y agoI think it's fair, even though I'm probably someone who would be knocked by it. You make different tech decisions when you're motivated by the results vs the technology, even if it's not conscious What's unfortunate is that it's really hard to get motivated by a lot of the products our industry pays us to produce, so we drift towards focusing on the technology instead
- michaelcampbell 3y agoI felt the same and wondered what the right answer would be. I generally haven't interviewed at companies where I didn't know enough about them to be excited about their domain, and then be excited about their domain, but ultimately as a dev they pay me to write code so I want to also be at least as, if not more so, excited about doing that. I guess the right answer, if the goal is honesty here, is to couch it in terms of "I'm mostly excited about <your problem domain>, but to be honest one of the reasons I even decided to go this far in the interview process is <tech feature>" or something? I'm not good with people, so I'm as much thinking out loud here and asking for feedback as much as asserting what I'd do.
- joneil 3y agoI work at Culture Amp and have been involved in hiring decisions, including for people who were excited about Elm so happy to comment here. As others have guessed, this is an "indication" not a "rule", and it was more about people who were applying _only_ because of the tech stack, rather than a sense of wanting to build a quality product, or alignment to the company's mission (improving workplace cultures). We hired plenty of people who mentioned Elm. I mentioned Elm in my interview. Part of the reason for this is very pragmatic: during the time when Elm was in common use at Culture Amp, almost all of the APIs that Elm would have been talking to were written in Ruby on Rails, and our engineers were expected to be able to contribute to work that required changes in both the Elm front end and the Rails API. If someone was a functional language purist, and only wanted to work in say Haskell on the backend... then they wouldn't enjoy being on one of our product teams where writing Ruby on Rails code was part of the day-to-day.