*Spin-off* Coding Education & Practise

Just some personal experience.

Ok, so anecdotal. To be relevant, we'd need to know how many candidates you talked to, what position they were interviewing for, what level of prior experience and education they had, where you are conducting the interviews, and what kind of pre-screening process you had.

My experience has not been that bad, but someone like that would not get an interview in the first place.
 
I'm guessing personal experience and he probably has a good sample size. I've heard things from friends conducting interviews where they asked people to do something simple like reverse a linked list and they can't do it. I'm not sure how they could have graduated, but they do. That said, there are a still a lot of smart skilled people graduating.

It's not impossible that a Java programmer who used the built-in containers exclusively wouldn't give an answer immediately.
 
It's not impossible that a Java programmer who used the built-in containers exclusively wouldn't give an answer immediately.

I disagree... granted, I've written plenty of my own linked list structures in Pascal, C, C++ and before all that, the first real compiler based (vs interpreted) programming SDK implementation in an AGOL 68-like (which also influenced C++) language called "Action!" on an 8-bit Motorola 6502 Atari 800 (Spoiler: 2^8=256, but I would have failed the test because I'd have just written: 11111111!).

Nevertheless, I would say that I think any Java developer, may even offer a solution quicker than a developer who's used to creating their own linked list structures.

I could easily imagine a scenario where someone used to creating their own list structure will say something akin to:

"well, if I had a standard, singly-linked list structure, I'd modify the list structure to use a doubly linked list. The extra overhead in creating the list would be more than made up for by the flexibility in reading the list in reverse."

or even:

"to minimize the lines of code, I will use recursion to read each element of the list, from the beginning, and as I rewind the stack, print each element in reverse."

Both are "correct" but represent different ways that actually will take more time to develop than using the standard java.lang and java.util class libraries.
 
Last edited by a moderator:
Scott_Arm said:
Can't answer 2^8? That's terrible.
That's reminiscent of my experience - majority of candidates I get struggle with "Given the Vector V(vx,vy,vz), what is its projection on axis Y?".
And that includes people that put "graphics 3d programming" on their resume as their specialization/important skill.

ban25 said:
My experience has not been that bad, but someone like that would not get an interview in the first place.
Unless you do prescreening 'interviews'(by e-mail or whatever), how can you prevent cases like that (or mine above)? I mean, if people lie on the resume (or embelish what they actually know) the only way to find out the truth is to test them somehow - hence, interview. Ultimately it's still time taken to do this, whether by phone, e-mail/messenger, or in person.
 
I just looked this morning ( not quite awake ) - and realised I couldn't remember the formula...
I had to spend about 15 minutes working it out from scratch... ( I know I could have google'd - but I thought what would happen in an interview situation... )


2^8 is inexcusable though :)
 
Unless you do prescreening 'interviews'(by e-mail or whatever), how can you prevent cases like that (or mine above)? I mean, if people lie on the resume (or embelish what they actually know) the only way to find out the truth is to test them somehow - hence, interview. Ultimately it's still time taken to do this, whether by phone, e-mail/messenger, or in person.

Typically, we'll send a small test via email (one or two questions). We'll look over that test answer and then set up a phone interview with one or two engineers. At that point, if the result is positive, we'll arrange for an on-site interview. The on-site interview usually involves a written test, lunch with a group of engineers, and a series of interviews throughout the rest of the day.
 
Pretty much any GC language is an improvement over C/C++ from a pure engineering standpoint, Garbage Collection removes all the most common "difficult" bugs that crop up in C/C++ codebases.

That's in theory unfortunately a lot of people I've run into learned just GC languages without understanding memory allocation or how the garbage collection works. Then when they get into a memory leak they are confused since they didn't think it was possible till they saw it. Personally my experience has been when I've run into a memory leak its often a case where all references were not deleted (which luckily makes them easier to debug).

Also, there is plenty of people who live and breath programming coming into the industry. Just they happen to be probably the same number coming into the industry as they were years ago while the number of other programmers has just increased as the industry needs more people and the game industry has become more accepted (so just proportionally they've decreased). Frankly I'm sad I wasn't in the industry in the early 90's because I really loved working in various assembly languages back in high school and rarely get to put those skills to use in PC development (more often than not I'm using them when I'm reverse engineering in my hobbies).
 
Back
Top