Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Some candidates, depending on their backgrounds, may be wary of being thought of as complainers or being "difficult." Something to look out for.


A question that I've been using lately is to ask a candidate to pick some technology (anything) that they have strong feelings about - positive or negative. I'll then throw out a couple of examples: "I really like A about B thing" and "In language X I really dislike Y because Z" -- I'm looking to see that they've really thought critically about some technology. Anything.


This seems better, it's more about tradeoffs.

I don't really feel the need to complain about languages. I just find the workaround and implement it and move on. All languages have trade offs. I can tell you that this one lends more to scaling projects or this one is easier to maintain, this one is easier to iterate, etc. But getting upset doesn't do anything. You just pick the best you can and work with it. I'm not going to get mad that my hammer isn't also a drill.


Every technology is designed through tradeoffs. Choosing a technology and the using it properly reqires understanding those tradeoffs. What they are, why they were made. I whine about the appetite for secret allocation that my C# program has. I whine about the mess that is writing the equivalent C++ or Go code, and the learning curve of doing it in Rust.

It’s whining on the surface but it’s really 90% tradeoffs and 10% badness.

Being able to critique design mistakes in eg. an API means you have a pretty deep knowledge on the domain (and/or API design in general). Being able to argue the downsides of a certain technological tradeoff (such as GC vs not, dynamic vs static) is also important. No one will be able to win an argument on tabs/spaces or dynamic vs static but everyone should be able to point out some drawbacks and benefits.

Describing the merits of a technology is just as good as describing the drawbacks. I chose drawbacks/whine because (unfortunately) I am myself much more enthusiastic when describing flaws than positive sides - itself a flaw, but a very common one.


I see where you're coming from. I think I just don't like the "complain about it" angle.

I can't change the language itself. I feel like a lot of people stress about those issues and can talk about them at length. I'm usually like "This isn't optimal, here's the workaround, this other language does it better but it's got other issues that are even worse for what we're building. Problem solved, moving on." Like, it's just another problem to solve at my problem solving job. The answer is not elegant, but that's the case with so many things in the real world...but this is probably the stoic in me.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: