Hacker News new | comments | show | ask | jobs | submit login

I don't know where you find candidates that can even approach this level of skill or desire to solve puzzles. Most people I interview struggle with a few lines C program coding.

You want experts? Try paying them like they're in the top 1% of their field and their work is worth at least 10 times if not 100 times the average salary to many employers. Make an effort to actually, you know, compete to get them.

The market for programmers is really inefficient for pay. Google has exploited that to the max and succeeded hiring a lot of very talented engineers at rates you pay for average tax accountants and attourneys. Just like the way they exploited Free software licensing by expempting themselves from the publish part by distributing access to the software not the software itself. That's their two best tricks right there.

Where they crossed the line massively is when they engaged in a criminal conspiracy with Apple et al to act in a cartel keep those wages down. This in addition to all the other legal ways they try pushing the market down when it really should be a sellers market. Andrew Moreton paid less than a football player of similar standing? How about 2 orders of magnitude less.

It doesn't take experts - and shouldn't take top 1% salary - to know how to count the set bits in a word or reverse a string in place.

I've found that your job post determines the types of candidates you get.

If you describe a really hard programming job, people self select out. If you describe an easy one, everyone applies.

iOS developer? Floodgate.

Crypto expert? Trickle.

Same experience here. We have an offering for normal java development with high performance aspects - tons of applications. Our monitoring/devops position? Few and far between.

Hehe. I was in DevOps and it was intellectually challenging but not really an exciting gig. I find more excitement in creating new tools for the public consumer over locking down servers, building scripts, setting up automation testing and doing configuration management. I do recognize that all of that is critical to being able to scale your operation but I'd rather have someone else do it than myself. That being said, I would still do it, if no one else knows what they're really doing--I just wouldn't apply for a job with DevOps in the title.

iknorite. Job post for pool boy at Hugh Hefner's mansion - tons of applications. Stall cleaner at adult video arcade - just a trickle.

You're comparing a fun job to a job where at best nobody ever says anything to you and at worst, you're taking the blame for the whole company's servers being down.

This looks like a standard crack-me.

Most programmers don't need to know how to do this. As it says in the blog he is applying for a security position.

It all comes down to how well you can translate assembly code.

You could help them find you. I see many people like you lament about not being able to find people with certain skills, but their lamentations provide no information about who they are hiring for or how to contact them. :)

This is fairly basic stuff. If you want to meet hundreds of people who do things like this every day you could attend RECon in Montreal.

Or send me an email. We're an expensive group to hire though. :-)

Yeah that's why I was always thrilled with (cr|h)ackers. Back in the time when I was young actually this word ( hacker ) meant something completely different than what it is now. I think people like this have a talent in another direction, compared to programmers.

Something like : "As much as I am good in making programs I am not good at all in reverse engineering them."

It's an infosec job, so this kind of thing is actually quite appropriate. Though of course, perhaps not so much depending on the exact area, e.g. for network security it would not be as relevant compared to application security.

Speaking for the security community as someone who's graduating this year, everyone I know who works on CTFs regularly has an astounding level of enthusiasm. It's really a fantastic group of people to be working with.

What kinds of positions are you interviewing for?

Firmware engineers. Basically C programming and working close to the hardware.

My experience with this (as a C and C++ developer who's worked with embedded systems before) is those kinds of job postings tend to require an engineering degree, and most electrical engineers I've talked to want to do hardware not firmware (and didn't like their programming classes).

You could try either relaxing the degree requirements, or reaching a wider audience -- I generally don't see firmware jobs advertised on HN and StackOverflow and those are basically the only two places I ever pay attention to job ads. Depending on your existing volume of applicants you might also ask them to attach a semi-trivial C assignment to their application. Yes, this is accessible to anyone who can google, but you might weed out the disengaged who don't care enough to read the instructions that way.

Hmm, as andrewljohnson said, I expect that the posting impacts who applies, but I would expect that to disproportionately turn up applicants who can write C.

Another dynamic at play is the fact that those who don't have useful skills apply more often as they continue to be out of work, that doubtless accounts for some of it.

Still a bit strange.

Some examples of coding questions I've asked in the past: reverse a string in place. Ones count of an integer. I'm testing if they understand pointers and bit manipulations for example. These should be answerable in 5 minutes max in 5 lines of C code. The incorrect answers candidates generate surprise me.

Yeah, certainly stuff one should be able to manage if they're going to be working on firmware. Could you link to a posting you've got up somewhere?

In my interviewing experience (looking at the time for something not dissimilar), lots of people think that 'knows C' and 'embedded systems' are the same as "I took a single module involving C at university, and by the end of it, my things were only randomly segfaulting maybe 70% of the time."

Or they've never touched either C or an embedded system in their life, but somehow it ends up on their CV and they tell you about how passionate for learning they are. Which may well be true, but it raises questions about your honesty and/or capacity for introspection. Also, bare-metal embedded really isn't the place to learn C[1], given that most failure modes are "It doesn't work. And maybe something caught just fire."

[1] Ask me how I know...

I have had great luck hiring game devs and cross training into embedded.

"Oh I have to stream data into my processing routines with not nearly enough bandwidth? No problem."

I've also had smiles of delight when devs got 100% raw access to every little bit of hardware. Discovering DMA controllers is /fun/ for them. We came super close to getting a decompression routine running completely by our DMA controller!

Most people in this area are now older. I'm approaching 40 and I was recently at a tech demo and everyone around me seemed to be older than me. I remember taking Assembly in college and our professor explicitly telling us that we would not need to know any of it, but it was a good foundation to build on. As far as I know, of the people in that class I'm the only one that ended up actually writing a ton of assembly after joining a semiconductor company. Most of the embedded people were from EE, but didn't actually have as much of a programming background. I had approx. 2 college courses dealing with hardware in undergrad and that was not enough.

So, it seems you need to either accept a recent CS grad who seems adept at programming and can learn, or pony up the 200k+/yr to poach someone if you want to hire quickly. Most people I know that have done embedded work tend not to move around a bunch and aren't motivated by small amounts of money to move jobs, so you'd have to offer a large incentive to find the good people.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact