I had an eyebrow raising experience in the interview process. I have a doctorate in physics, 30 years of programming experience (since I was a kid, actually, I knew Niklaus Wirth's book by heart in the eighths grade, was writing recursive programs for fractals, knew Fortran, Pascal, C, PDP11 assembler when I was in school), and work for 18 years in the SW industry. I applied for a physics simulation position. An ideal blend for me: half physics, half software engineering. The technical quiz was interesting, even with a physics question in the end. Then they had a programming challenge: a task for 6 hours. Since this is a physics simulation position, I expected something like: interpolate this function, filter out noise, solve an integral equation numerically and estimate an error, minimize computation error here, use finite elements method to solve this equation, regularize an ill-posed problem, etc. The problem I received instead was a primitive DB task to print out a check out of the cash register using an input from the scanner. The product database was in a text file and the scanner output is a set of integers. So it's a simple task of reading a db, indexing and search for records. There's some complication with discount cards. But it's pretty straightforward. Now the interesting part. It's C++. But I cannot use any standard library means. I.e. I have to write my own containers, sorting algorithms, tree search, etc. Really? The last time I had to think about sorting implementation was in 80s. It's absolutely unrelated neither to the contemporary software engineering nor, most of all, to the physics simulation. Don't get me wrong, I know the CS stuff, algorithms complexity, sorting, etc. But I would have fired a dude who had tried to implement his own sorting algorithm or his own container. Also as a senior engineer, I know that even an accurate container in C++ with strong exception safety requires more than 6 hours of work. Save a balanced tree implementation. To set the perspective right, I came up with an anology. Imagine you are an experienced chef applying to a position in a very fancy world famous French restaurant. They organize an important 6 hours test for your skills. When you arrive the task is to peel potatoes with a pocket knife. You will be like: hmm... hey guys, am I at the right place? Is it really the position I applied for? Why should I spend 6 hours of my life doing that? When I voiced my concerns, they were: sorry you have decided not to pursue this position, good luck with your endeavors, and everything, etc. I.e. basically they said to eff off. Wow, guys. Good luck in search for a good senior engineer with this approach. :-D
Yep. The best interview practice we developed in my company is to discover what a candidate knows, not what he doesn't know.
I hear what you're saying about the level of the question, but pushing back on a question that's been asked of you is generally death during an interview. Answer their questions as best you can. Rock their world. At some point they should ask you for your questions and that's when you start respectfully probing on the expectations for the job. If they never allow you to ask questions then that's a super bad sign. FWIW, I have not heard super great things about Space X. Work you hard with low-ish pay.
Presumptuous line of questions indicate they didn't bother to understand the candidate's profile. It's a waste of time after that and both sides lose!
@th47. No, no, as I said, I don't mind questions. Stupid or tough. If they asked, I could answer a lot of stuff a newbie doesn't know. For example why quick sort is not the best choice for almost sorted data. Or that in contemporary std sorting is not quick sort. But it was more than just questions. But I understand what you are saying. And I disagree that we should not push back. How they treat you during the INTERview (inter means both ways, right) sets the bar for how they will treat you if they hire you. If they don't give a shit about your opinion now, they won't in the future. We should not be beggars. The company should be. They should show the respect and the interest should be mutual, not like: we are making you a favor, you disagree, then eff off. Otherwise the corporate culture that treats developers as expendable crap won't change. They need us.
Not even surprised. Same shit happens in tesla. Here is how it goes. Shit recruiters find candidates who don't fit the job description I.e a front end guy to work on compiler optimizations🤦🏻♂️ All of a sudden the team gets tons of unqualified resumes. So now you either spend time coaching these dumb ass recruiters to find proper candidates I.E do their job for them or create a take home test to weed out unqualified candidates . Often times the manager is too lazy to create a good take home test, that tests what they are looking for. So the manager will either ask the new grad on the team or steal a take home from a different team and hand it to the recruiter. The dumb ass recruiters will send this stupid test to everyone who applies. Even good candidates with 30 years of industry experience or candidates who have a full time job. That's how you ended up with this test.
Yeah I’m trying to get candidate on the phone for a “fit” discussion *before* we do anything technical with them. To make sure the right person will do the right phone screen, and we set the right challenge if needed.
This is the most mysterious part. We did have a fit interview, then there was a technical quiz, then a technical phone interview. Everything before was quite adequate. This one was absolutely out of blue.
Did you voice your concerns after or before you attempted it?
Before. I honestly thought they mess up something and sent me a wrong task.
How come they didn’t ask you to invent the stored program computer
Ikr, getting too easy
I also had a strange interview experience there. Probably the worst recruiting experience I've ever gone through. They were incredibly disorganized, forgetting about multiple scheduled calls. I did their online quiz, the recruiter screen, engineer screen, and take home test. All of that took about 5 weeks. After that, recruiter tells me they've put all hiring on hold for two weeks. I get back to her in two weeks, she says they are still on freeze. I email her after two weeks again... same thing. A few weeks after that I check in and she says they are postponing all hiring for the foreseeable future and that they'll reach out to me as soon as they can take someone on.
Sounds like a bad plan to fill the position. That's ludicrous.
Space X Seattle is no more.
Not true
Peeling potatoes at the interview doesn't end at the interview. I have two master degrees in engineering yet I'm expected to be a technicians gofer because they are too cheap to hire enough people. Salary is free goes the SpaceX motto. After going through an interview if 1 person out of 20 doesn't think you're a fit then you don't get hired. Or funding drys up b4 the candidate signs paperwork so your SOL. It's a an act of elon to get any one though the hiring process. By the time we get 1 person though at least 1 has quit. For the MS peeps: Elon hates you. Almost everyone he fired in Seattle were former MS employees. Good luck getting in, you will need to prove yourself more than others.
Yeah, sorry man. Why are you still there? I got a feeling that peeling potatoes wouldn't stop at the interview. So I am glad it ended this way.
Same as most. Believed the initial Elon con and a significant amount of our TC is vesting stock. Got to vest b4 leaving to make the BS worth it.
What ???
I don't mind question. Simple or tough, doesn't matter. That was different than just questions. :) Why do you need to peel tomatoes, btw? :)