Live data from Hacker News

Things I Learned from a Job Hunt for a Senior Engineering Role

fuzzyblog.io

391–400 of 766 posts

Re: Things I Learned from a Job Hunt for a Senior Engineering Role

#391

Earlier quoted context omitted.

on a tangent, one way could be assign a number code to each alphabet. Add the numbers that occur in the strings. IF the sum matches, they are anagrams.

I don't see how the sum would be unique to a particular combination of letters.

Works if you assign prime numbers to each letter and multiply instead. So a=2, b=3, etc.

Re: Things I Learned from a Job Hunt for a Senior Engineering Role

#392
post #6

Number 2: No One Believes Anyone Can Actually Code It's surprising to see the number of people who interview for lead technical roles that cannot code, or whose work is exceptionally sloppy. Incompetence is more commonplace than the author believes, even at the highest level.

I understand that's a problem, but if I have an entire github of highly starred and heavily developed projects with reasonable commit histories... don't make me do your do damned homework or implement a toy BST. I have better things to do with my personal time than toy problems because you can't be bothered to open my github. The worst part is that usually these toy problems are justified with "but you can post this…

On the one hand, I agree entirely. An interview should not make people jump through hoops if they can answer their questions via existing material.

On the other hand, fakers have caught on to the "GitHub is my resume" thing. I have had applicants who have basically fraudulent Github projects, or who have taken group projects on which they did basically nothing and claimed them as their own. So a Github page now requires an expert to evaluate it.

Re: Things I Learned from a Job Hunt for a Senior Engineering Role

#393
> When I was recruiting, in years past, my HR department always strongly warned me against administering coding tests on the grounds of legal issues / fairness. Now that these are outsourced, I suspect that HR departments aren’t concerned at all about legal issues since they come from a vendor not themselves.

This kind of crap needs to stop. I think that some level of legal liability needs to pass through outsourcing companies and land on the company that uses them.

I also suspect that if legal liability started passing through outsourced companies, you would see outsourcing collapse very quickly as companies begin to see outsourcing as riskier than an actual employee.

Unfortunately, I'm not sure that we have the legal precedents to pull this off without new laws.

Re: Things I Learned from a Job Hunt for a Senior Engineering Role

#394
post #43

> As a hiring manager, I’ve given homework assignments to weed out candidates from the pack but I always kept it reasonable, just a few hours in length. "Just" a few hours has always, always been an underestimation when I've tried these. I've been burned a handful of times now; both from my time and from my belief that it would amount to something. I'm reminded of one instance where follow up emails kept coming after…

>I can't think of anything more I'd rather not do than some arbitrary company hiring project. I simply pass on these now and politely pull out from consideration.

Yep. If you're gonna throw crap at me like that NOW ...it's only going to get worse LATER

Re: Things I Learned from a Job Hunt for a Senior Engineering Role

#395
post #341

Earlier quoted context omitted.

I hear the opposite. They are stressing a technical opinion here, but for the sake of rationality and efficiency. These are usually not the same people that are overly concerned with "correctness" when communicating with others.

But it is only 'rational and efficient' if you are being obtuse... they aren't asking you to code a CSV parser because they actually need a CSV parser, they are asking because they want to see you code. The 'rational' thing to do is satisfy THAT requirement, which is the real one, not try to bypass the purpose by insisting on using a CSV library. The ability to understand the underlying need behind a request is impor…

> The ability to understand the underlying need behind a request is important to being a good employee. If a candidate fails completely to understand the purpose of a question during an interview, and in fact continues to argue against you as you explain it, they aren't a good candidate at all.

I agree with everything you've said, but that still makes it a bad and equally obtuse question. If they don't actually need a CSV parser, they don't need to know that you can parse CSVs, either (if you can - which is the other point - you might be a pretty good programmer if you can quickly parse a CSV, but there are tons of excellent programmers who can't).

Re: Things I Learned from a Job Hunt for a Senior Engineering Role

#396
post #334

Earlier quoted context omitted.

I'm as critical of how we interview in this industry as anybody, but I've never found this particular criticism compelling or charitable. It's implicit that you know the correct first answer is to seek prior art. Making that explicit is fine but a bit pedantic. The follow-up question is: "ok great, now say that you can't find any satisfying prior art for this on Google, how would you reason through your own solution?…

Are you serious? For any algorithmic question, if googling does not turn up a great answer, you would need to be a genius if you could come up with one on the spot.

We had a CS class at UNH, a state university, where we learned how to express the complexity of an algorithm and then how to refactor algorithms to be less complex, when possible. Although we do not do this type of work for most of our jobs, it is not a stretch to think that half of people with a CS degree might have at one point known how to do this on the spot.

Re: Things I Learned from a Job Hunt for a Senior Engineering Role

#397
post #252
post #202

Earlier quoted context omitted.

So what is the interviewer supposed to do to find out if you can code? I’ll take someone who gives an idiomatic answer over someone who reinvents the wheel anyday. Who is likely to be more productive on the job?

That depends on whether or not the job entails inventing new kinds of wheel.

Let's be honest: most commercial programming jobs don't. And the person with a thorough working knowledge of the standard libraries is in a better position to do it anyway.

Re: Things I Learned from a Job Hunt for a Senior Engineering Role

#398
post #83

Earlier quoted context omitted.

I'm not going to speak to the homework type of problem (because honestly I think you should be paid for that sort of thing), but I always ask people programming questions in on-site interviews, not strictly because I want them to prove they can program (although that's one useful side-effect), but because I want to observe the candidate's problem-solving process. I can't deduce anything like that from your Github or…

If the GH code is there, works, and is up to coding standards, why do you care about how the sausage was made? I'd look to see if the code is well-designed, organized, original, tested, etc. It's generally easy to see if the author of code knows how to decompose a problem into pieces. So..saying "we're looking for thought-process not the actual code" feels a bit disingenuous tbh. Now: If you care about being able to…

Alas, I really do care about the thought process. If a person arrives at a great decision for bad reasons, I may not want to hire them. More importantly, though, I'm interested in when candidates pick not-optimal choices for good reasons. So much of software development is about tradeoffs. Seeing and hearing how they tackle those tells me much more about how they'll do than the specific code in question.

As an aside, the reason not to work on novel-to-you problems with job-seekers is that it's very hard to fairly compare candidates after. I strongly prefer pairing on the same problem with all the candidates in a batch. Otherwise it's hard to tell if a bad result is due to a bad problem or an unacceptable candidate.

Re: Things I Learned from a Job Hunt for a Senior Engineering Role

#399

Earlier quoted context omitted.

I feel like this is a myth, what do you estimate the figure is? I think under 10%, maybe under 5%. I have significant experience interviewing senior, junior, and mid-range candidates. 99% of my candidates can code, as in iterate over collections, write case statements, and call functions. I've only had one junior candidate who couldn't code at all. Sloppiness is rampant, but sloppy code that gets things done is what…

> 99% of my candidates can code, as in iterate over collections, write case statements, and call functions. Honestly, that's way too trivial to call "can code". I usually ask something less trivial, yet still extremely easy like "a function to check if a string is a palindrome" (I explain what a palindrome is) or "check if a substring exists in a given string". You wouldn't believe how many people "with 10 years expe…

Do you get a IDE with compiler for the palindrom question?

Id say that close to 0 out off 10 engineers at work including me would get a working program without debugger or print statements.

Just tried in c and got me 2 compiles to get it right. Without the output I would just present a nonworking program.

Re: Things I Learned from a Job Hunt for a Senior Engineering Role

#400

Earlier quoted context omitted.

We set our in-house recruiter up with a coderpad question that screens candidates with a simple question: "Write a function that counts the number of vowels in a string" Candidates are allowed to run it multiple times and just have to produce a correct result within 10 minutes. It's not a trick question -- the test case in place makes sure you pay attention to case. Success rate for mid to senior devs? Only 60%.

This isn't bad. I've used one similar: "Write a function that reverses the words in a (string) sentence" i.e. (x) => x.split(' ').reverse().join(' ');

Just a little trivia;

The fastest way to reverse a string is in JS is:

  function reverse(s) { 
    var o = []; 
    for (var i = 0, len = s.length; i 
Post reply on HN