6 ms·
Out of necessity, tech startups are changing the way workers are hired
- symkat 16y agoResume: "C/C++, PERL, Python, LISP, Scheme" Interviewer: "So, we'll start with some really simple questions on the stuff on your resume. How do you concatenate two strings in C?" Interviewee: "With a dot?"
- tszming 16y agoYou can outsource the programing tests to codility.com, it is a great timesaver.
- Aegean 16y agoIt's exactly the same problem we are facing. When the job requires very high technical skills its a dead end. I am looking for talented kernel engineers. If I go for employing someone high caliber, the costs would be in the 100K >= range. Not a smooth option for a startup. Also it's still hard to attract them even if you pay well. If I go for contractors, there is the problem of IP disclosure. Contractors are probably worse; you disclose IP, pay more, and they disappear after certain level of training investment. You are back to square one. If you get someone with lesser talent, (done twice, and parted ways after several months) it's also terrible. In this case you usually pay for nothing. E.g. a month of struggle with code, reaching nowhere, dumping their code. This happened a few times. The hiring is also key. If you have 8 high-caliber engineers, it means you get many times more done. What you could do in one year is done in, say 3 months. A huge difference for a startup. I have been thinking about hiring talented grad students like they did, maybe that's the best way to go. So its really a tough problem with no straightforward solution. From the article: We try to ask about the difference between cooperative and preemptive multitasking. I ask what is kernel preemption. Silence. A blocking mutex and a spinlock? Silence. I think a good candidate should know what event-based and threaded programming means, and even go further to explain the implications and best scenarios for both. Its not easy to get that far.
- HilbertSpace 16y ago"kernel"? For WHAT operating system(s)? Or do you just expect them, naturally, to be expert in all of them, so little their efforts are worth, so great your cash is worth? Then for WHAT work? Writing device drivers? Tweaking the TCP/IP stack? New, tricky things in video? For WHAT? Here is the general situation: A successful information technology startup is a RARE thing, among entrepreneurs, businesses, and even information technology startups. So, you are trying to do something RARE. So, being rare helps you attack a part of the market not attacked well now and have a barrier to entry, etc. But the 'flip' side of this is that getting people to do the work for you will be difficult. Or, if very many people knew how to do what your startup is doing, then your startup would be in serious trouble. Net, if you have a good startup, then hiring people to do the technical work will be from difficult to impossible. To be more clear, your 'idea' where you want all the technical work done by others doesn't amount to much. Here's what you are missing: You need to do the hard technical work yourself. Uh, for the person you want to hire, they didn't just sit around studying for the past 15 years getting ready for your startup. And if they are deep into the internals of the kernel of some operating system and not a company founder, then they about have to be in a big company where they are likely reasonably well valued and compensated. A long, very general lesson in computing is, if you want someone expert in just the topics you have in mind, then basically you have to PAY them to LEARN those topics. Sorry 'bout that. Back to Mother Goose, you look like The Little Red Hen who wants to hire the other chickens to do the clearing, plowing, sowing, cultivating, harvesting, threshing, brick laying, milling, mixing, rising, and baking while you own the business. Nonsense. The Little Red Hen did all her own work -- do yours. For the Slate article, that was written by a 'writer' who writes on law, etc. So that writer likely doesn't know much of anything about computing. So, likely all the writer did was find the two startup persons, interview them about their struggles, and then make a 'story' out of it. But the 'story' doesn't make much sense; nearly all the comments to the story make more sense. For the recruiters, sure, they don't know dip squat or jack sh!t about computing. That's a special case of the more general situation: If you want to hire specialists, then you need specialists to evaluate people. Then both the people you want to hire and the people to do the evaluations are rare. So, basically the evaluation has to be done by the hiring manager, and that manager needs to know the technology quite well or make the new person a co-founder. This whole subject just reeks of a nasty attitude: For any project, there are rivers of highly qualified people, with whatever specialities we need, who spent the last 15 years becoming expert in what we decided last week we need, and they will be grateful to move half way across the country for our semi-, pseudo-, quasi-promising job. The really rich one was when Java first came out and the recruiters were looking for people with five years of Java experience! Gee, just call up Gosling, although then he may not have had such experience! Nonsense. Special case of, mostly there is nonsense. Necessarily high success is rare. For my startup, I am doing ALL the significant technical work myself, with my own ten fingers. I am making sure that any people I will have to hire will need only very routine qualifications. The good news is that I know in fine detail, documented in fine detail, ALL the significant technical work. Some bad news is that doing all the work myself takes longer. But, nearly all the work is just learning the tools: So, read for a week and write code for half a day, and document for a half a week. Sorry 'bout that. Just do it yourself. Finally, you are writing about essentially the subject of 'concurrency' in operating systems. I've never written an operating system, but I have done some significant work on concurrency, enough to understand monotone locking protocols, deadlock detection and resolution, and 'fairness'. For your "cooperative and preemptive multitasking" it seems to me your terminology is not both well defined and common. So, it looks like you are deliberately asking tricky questions. I could guess at what you mean and answer that, but still your question is vague. Also, any significant chunk of software that wants to do much with concurrency needs something of a well designed 'architecture' for concurrency. So, just what such architecture a particular operating system has is open to question; can't expect one person to know them all. Similarly for your "kernel preemption. A blocking mutex and a spinlock". Again I can guess, but I doubt that your terminology is both well defined and common. I remember what a spinlock was in MVS, but that was a long time ago, and I have no idea if any other operating system ever did any such things. Gee, you omitted Dijkstra semaphores! If you want people who understand some things about operating system software development and concurrency, for specific parts of a specific operating system, then focus on those topics. Are you looking to build a business or to pump up your own ego by claiming that no one else is qualified to do your work?
- tomh- 16y agoI think the other way around is also hard, many startups require such diverse combination of skillsets that its hard to know what you should learn in order to be hirable. As college grad student I have no clue what to learn to get hired by an "exciting" company. The only way seems to learn either the .net or the java platform as "safe" path, which in turn these exciting companies are not looking for.
- cageface 16y agoTech startups are at least partly to blame for this as well. I've seen so many job postings requiring years of experience in exactly the same combination of technologies the company itself is using. I know it's harder to hire people for their innate abilities than it is for the number of years they've done rails or django or rspec but if you're going to be that inflexible you've got nobody but yourself to blame for the empty desks.
- HilbertSpace 16y agoWell put.
- yxhuvud 16y agoI think you are adressing job postings in the wrong way. See it more as a wishlist and not as something with hard limits. Sure, you still have to be able to fit the role they want or replace someone else that can fit the role, but don't overestimate the importance of the requirements. There might be a case to take them really serious if the job posting really differentiate between what the candidate have to know and what they wish for. Other than that, don't take them too hard.
- Daniel_Newby 16y ago> There might be a case to take them really serious if the job posting really differentiate between what the candidate have to know and what they wish for. That is the problem. Very many of them say things like "flash in the pan technology X a must" or "latest silver bullet Y mandatory". They are basically advertising that their start-up only hire liars and people who actually believe management consultants. And then they are surprised that all the good people run away screaming. RethinkDB says "For that matter, you think SQL is a terribly designed language." Oh, dear. Refined by the hardest of the hard-core engineers for half a century, foundation of the world economy, and they only want people who have an ironclad, dogmatic belief that it is unconditionally terrible. Good luck recruiting actual information retrieval experts, guys.
- maukdaddy 16y agoA big part of the problem is startups that want world-class talent but are only willing to pay 50k. The economics simply don't work.
- zwetan 16y agohere an idea, hire a very very very good programmer or world-class talent, however you want to name them, and yeah pay them the dough that they deserve. And have them train/teach those rookies. that is called: "building a team" it always amuse me to see some people thinking they can get away having the cream and the butter for a cheap price.
- techiferous 16y agoBy the way, this is not just happening in Silicon Valley. It's been very hard for people to find good Ruby on Rails developers over here in Boston.
- dean 16y agoThis article is a bit of a contradiction. On the one hand, it says: "Unemployment is chronic in much of the country, but in Silicon Valley, employees have their pick of jobs." Then on the other hand it says: "And in four months, the hundreds of resumes, dozens of phone screens, and numerous four-hour meetings with viable candidates yielded no one who fit their criteria." This tells me that the easy job market is there if you are a star. No so much if you're just 'competent'. But the 'stars' have an easy job market in any industry. This company has the same problem as the New York Yankees. The Yankees have an opening for .350 hitter and it's very difficult for them to find qualified talent. Similar problem, but it's worse in Silicon Valley. At least the Yankees will pay what you're worth if you 'fit their criteria'.