Impromptu testing a junior's mettle part 4
-
Continuing the discussion from The Olly-Olly-Asbestos-Free Status Thread:
Guy came in for a job interview. Since this guy is going for a medior/senior position, I skipped right over to the CSV task.
"So your job is to parse this loosely formatted data, which you can download right from my Windows IIS home server.... that is now decommissioned, because I'm playing with Mac.... shit".
Had to scramble to find some old and inferior version of the task.
Since this is going worse than expected, what the hell.
2-3 years experience, 1 year doing "freelance" work (meaning making free sites for mommy and local businessmen), 1.5 years working on some legacy PHP monstrosity.
It took him 15 minutes to figure out explode.
Filed under: No two of these can be in the same category.
-
He tried adding PHP's csv_parse thing, but it didn't work.
Now he's been looking at this screen for 5 minutes. In deep concentration.
(it's the output from his parsing code)
-
Why oh why is PHP being used to parse data :-(
-
Wow, he's stuck even worse than the intern candidates from a year ago.
-
As I recall, cartman lets them use whatever language and toolchain they want.
-
-
Nice, typos on variable names. Classy.
-
As I recall, cartman lets them use whatever language and toolchain they want.
This time the guy is explicitly coming in as a PHP guy. So I presumed PHP expertise.
But I'll let him switch, if he asks.
-
Do you have a remote viewer installed? If I can ever get permission to do code in the interview, I'm totally doing that and livestreaming to a conference room full of the rest of the team.
-
What was the task? Order a csv? Sort by name, price or quantity?
-
He has collapsed columns, OK.
Now all he needs is to figure out
explode
.But the bigger problem is, he doesn't seem to have a good understanding of arrays in general.
-
What was the task? Order a csv?
It's the same CSV task from Part 2, I think. That's the one I was able to find after my server kerfuffle.
PRODUCT PRICE QUANTITY Apple 0.75 125 Orange 0.80 218 Pear 0.99 116 Pineapple 1.75 45 Watermelon 1.15 20 In a language/IDE of your choice, read in the CSV file. Print the contents of the file to the screen, sorted by highest price first, and ignoring items with a quantity less than 50.
-
If I ever get a hint that is being done to me, I'd solve the problem using 68K Assembly. MAKE FUN OF ME NOW!
-
Do you have a remote viewer installed? If I can ever get permission to do code in the interview, I'm totally doing that and livestreaming to a conference room full of the rest of the team.
Yeah, teamviewer in read only mode (learned after the first time).
I find it a good balance between pressure of an interview situation and seeing how the candidate operates.
-
If you can get a working 68k development and emulation environment going on one of our machines, I do believe I would hire you on general principles.
-
Ok, some progress.
-
But not much.
-
TIL about var_dump
I will forget it by this evening.
-
This isn't going anywhere.
I could jump in and put him on the right track, but I don't know should I.
This isn't a junior... supposedly.
-
Continue the struggle.
-
2-3 years experience qualifies someone for a senior position?
-
2-3 years experience qualifies someone for a senior position?
No. Desperation at being unable to find good coders does.
-
unable to find good coders
From what you're posting here, I'd say you still haven't found one.
-
Spoke to him for a bit. He was hiding code when I came, I guess he's also ashamed of it.
He understands he needs to create a multi-dim array, but can't figure out how. His current code generates an extra nested array. Since he wouldn't show code, I pointed that out and left him at that.
We have agreed another 30 mins for the test.
-
FINALLY
But now comes the hardest part. Create a "data loading" module and "data processing" module. And then, later, "data presentation" module.
The real test.
I don't have high hopes.
-
BTW, I can't overstate enough how great this task is for coding job interviews. It's PERFECT.
-
So a shell command line with awk would be allowed too? That's then literally 30s of typing.
It's not CSV, though. It's tab delimited text.
-
So a shell command line with awk would be allowed too? That's then literally 30s of typing.
It's not CSV, though. It's tab delimited text.
THAT'S THE TRICK.
At no point in the text (at least in my current version of the text) do I call the data "csv".
And it's not even tab delimited.
-
Ok, ok, you can show the data as it is (without string to number conversion, mind you).
But what now?
All the juniors fail here. It takes some kind of intellectual leap, that surprisingly few candidates seem to be able to make.
-
You do dirty tricks with spaces? O dear. I inferred you'd tell them it was CSV, because you called it "the CSV task". Anyway, awk wins.
-
Doesn't the example you pasted say:
In a language/IDE of your choice, read in the CSV file.
Print the contents of the file to the screen, sorted by highest price first,
and ignoring items with a quantity less than 50.
-
In a language/IDE of your choice, read in the CSV file.Print the contents of the file to the screen, sorted by highest price first,and ignoring items with a quantity less than 50.
Yeah, read the OP.
I lost my current text and data, which is much better IMO.
-
Ok, I'm going to give him one last hint, as we are entering last 15 minutes, and it's obvious he won't make it.
-
Lol, again hiding the code.
I'm not gonna eat it, dude.
-
Trying for the filtering.
Let's see if my sage advice helped him.
Maybe.
-
Lol, again hiding the code.
BTW, I like how there's a huge teamviewer icon sticking from the side of the screen, and he's still not realizing I can see what he's doing.
-
Is programming really this hard? Am I some sort of supergenius? My actual experience with PHP can't be more than a couple man-month, but this is a trivial task. I would have to look up the functions online though, which feels like cheating.
-
Oh god, no.
Even stack overflow copy pasta isn't helping with this lack of understanding.
-
Frankly, this is embarrassing.
This guy is maintaining a relatively well known website. He came in, saying he wants to expand into new technologies.
I thought he would blast though this test. What the hell!?
-
OH COME ON
-
Even stack overflow copy pasta isn't helping with this lack of understanding.
Just ask him what each line does...
-
Maybe this well known web site runs on WordPress and he does everything with plugins. There are a while lot of WordPress "developers" who can't write PHP or JavaScript, and barely know HTML and CSS.
-
Ok I'll start slowly packing up, so he'd get a hint the interview is ending.
My recommendation will be DO NOT HIRE.
Probably my last live post, here's the final screenshot.
-
"I filtered them, just to sort them"
Hmm?
...... I suppose.....
..... Ok, fine. A few more minutes.
-
Google.rs is a really fun domain name.
... Hell, .rs in general is an awesome tld.
I wonder if I can register those from here.
-
Nope, he gave up.
"Well I didn't expect this kind of task. I mean, who would ever store data in this strange format?"
You understand even less than you've demonstrated here, buddy.
Interview over.
Going home.
-
... Hell, .rs in general is an awesome tld.I wonder if I can register those from here.
Gandi says it's fairly expensive ($107 a year) and requires a corporate subscription.
-
"Well I didn't expect this kind of task. I mean, who would ever store data in this strange format?"
Comma Separated Values is definitely an unusual file type that's rarely used in the real world...
-
So what does the data to be parsed look like anyway?
-
How do people have this much trouble with simple tasks? Here's a quick implementation of that in C++: http://cpp.sh/8v5ce (you can even run it!) Cheated a bit with the formatting of the file because I'm writing the Split function by hand but it wouldn't take much to accommodate multiple spaces.