UnderGround Forums
 

ITGround >> Interview Advice


7/12/05 11:03 PM
Ignore | Quote | Vote Down | Vote Up
theseanster
270 The total sum of your votes up and votes down Send Private Message Add Comment To Profile

Edited: 12-Jul-05
Member Since: 05/13/2002
Posts: 7985
 

I've spent the last three weeks interviewing people for an entry level programmer/support position (several positions actually). For the most part, I am unimpressed. There have a been a few sharp people I've spoken to, but mostly everyone has been clueless.

Advice for recent CS/CIS grads

If you have no real experience outside of the classroom or "senior projects", expect to be asked about course-related subjects. Especially if you list these things on your resume! I can't tell you how many times I saw the words "Data Structures" on the resume. So I asked some simple questions (at least I thought they were simple and I have a CIS degree from many years ago) that I expect CS students to be able to answer reasonably well. I'll give you an example about what I asked when I saw "Data Structures" or something like "Data Structures and Algorithms blah blah blah"...

  • What is a Stack? What is a Queue? What's the difference?
  • If I asked you to write a Stack class in C++ or Java (or C# I don't give a shit), what would you most likely have for methods or member functions to put items on the stack and take items off. (A: I'm looking for something as easy as "Oh, I'd have a Push and Pop method" - 'nuff said.
  • What is a linked list?
  • If you have 100 items in the list and you are searching for a particular value, what is the most possible iterations you might have to make to search for that value?
  • If you have a linked list with 3 nodes (head, node1, node2), how would you delete node1? (A: just FYI, I'm only looking for conceptual answers here, not code).
  • What is a binary search tree? How is it structured? (basically here I'm just looking for someone to tell me that a node will have a left and right node)
  • (assuming the previous question went anywhere....) If I have a tree with only a root node and the nodes are holding integer values with the root holding a value of 10, if I insert a new node with a value of 6, does it go to the left or the right. How about 10? Then 3?
  • What is a Hashtable?
  • What data structure is best for searching values: hashtable, linked list, BST?
  • Which would be O(1), O(n), O(LogN)?

Even then, I'm not looking for perfect answers, but I am looking for most of that stuff to be covered. If not, I'm bumbed out because I have nothing else to judge you on if you don't have experience. Guys with experience, I don't really care if they get all of that stuff or not. Recent grads - do your best to know this stuff going in to an interview.

Don't Bullshit Me

If I asked you what a BST is for example and you say, "uh it's an algorithm for sorting stuff:" , I'm not going to comment and tell you you're wrong, I'm going to ask you to elaborate. If you then say, "well, uh you write a BST in function and a BST out function and monkey wag their weiners in the IN function but go poop in the OUT function, blah blah, I'm full of shit blah" Then I'll just let you keep talking. It's sad, but I've had people do this. Not with BSTs or monkey shit exactly, but you get my point.

You should know most of what I ask, but if you don't know the answer just say so and move on. If it is a problem solving question, don't give up. More often than not I'm anxious (personally this is just me) to help someone walk through the problem. If I get to the answer, I kinda forget that they didn't know exactly...unless it's a really really bad struggle. For example, I ask troubleshooting questions that are very vague just like a user would if they call for support. "Hi, this Web page is slow." I'll give them that scenario and say, "What do you do?" Dammit, you'd better work though this with me. It's really hard to get this wrong if you try. For example, say anything and ask questions like, "What kind of page is it? ASP, HTML? Are other pages slow?" Usually I have a pre-defined problem. In this case I would just imaging that someone F-ed up a stored proc and forgot a join. So the page loading is slow and then just ask them to identify the problem. I expect questions! I actually had one guy get very alarmed saying. "What do you mean?!?! What page? Oh, it's an ASP page is it calling a database? Where is the database? is there a lot of network traffic? How's the memory and CPU look? Let's look at the database query." That's EXACTLY what I want. Tell the person interviewing that you need more to go on, and ask them to clarify. Don't just say, "I dunno man" I had a few guys do that and I wanted to stop right there.

Make sure you know the stuff you listed on your resume

I pick stuff at random and ask you about it. This job I'm interviewing people for was for C#. I saw C# and they had never used it, just read about it. Why is it on your resume??!! Expect to be asked about things on your resume and to defend why they are there. Period.

7/12/05 11:04 PM
Ignore | Quote | Vote Down | Vote Up
theseanster
270 The total sum of your votes up and votes down Send Private Message Add Comment To Profile

Edited: 12-Jul-05 11:07 PM
Member Since: 05/13/2002
Posts: 7986

Don't Try to Outsmart Me...and if you do, actually BE SMART

OK, this really goes into the "Don't Bullshit Me" category, but this story is so good that I gave it its own section. I had a recent grad on the phone for a pre-screen and I asked him about a BST. He asked me what my degree was in. It was kind of an odd question to ask at the point, but what the heck, I told him "CIS with a minor in animal pornography production technology". So he said, "oh CIS...oh well in CS you probably haven't heard of this but what we used with red-black trees. Yeah, I did a lot of work with those."

.ASIDE:  Being a CIS loser, I never learned about those in school. But.....what he didn't realize is that I post on the OGs IT Forum, and we have a really smart guy here named Andrew Yao who made a short comment about red-black splay heaps one time on a thread I made. So, being the curious guy that I am, I did a google search and read about them and even played around coding one up in C++. So, I'm no expert...but I know a thing or two! Enought to fuck with this guy.

Back to the story...

 So, I thought...Cool! This guy is going to teach me some interesting shit. So I asked him what a red-black tree was exactly. He started to babble and what he said didn't make any sense. So I smelled bullshit. So I asked him, "What's the bottom line: what is one major difference between a BST and a red-black tree?"  I was expecting some kind of answer as a starting point...anything! Anything like, "a red-black tree is self-balancing". He said, well uh, all leaves are null...errrr...they are black...black and null" OK, "what's the difference between the red nodes and black nodes?"  (I honestly didn't remember, I was just curious, it was an interesting subject. I mean, he brought this shit up not me, right?"  He says, "I don't remember"

Wow, that was sad.

SQL statements

OK, nothing crazy here guys. Don't put T-SQL on your resume if you can't write SELECT, INSERT, UPDATE, and DELETE statements. All I asked was how to do a simple select out of a table, then a question that required the person to use a COUNT function and a group by. Then a "hard" question which built on the last question where the answer is HAVING COUNT > N.

If you don't know SQL, don't put databases on your resume unless you are some kind of freak with infrastructure support.

 

That's all of the advice I have right now. Let me know if you have questions and I'll try to clarify if anyone is interested.

7/13/05 12:15 AM
Ignore | Quote | Vote Down | Vote Up
theseanster
270 The total sum of your votes up and votes down Send Private Message Add Comment To Profile

Edited: 13-Jul-05
Member Since: 05/13/2002
Posts: 7988
Yeah, my client had 4 openings and there are still 2 openings even after interviewing everyone in the "hey my buddy knows C#" crowd. There are definitely jobs. It's too bad they don't focus more on ASP, JSP, or PHP at universities. Seems like students should get at least 2 courses in server-side Web development.
7/13/05 1:05 AM
Ignore | Quote | Vote Down | Vote Up
rfquinn
1 The total sum of your votes up and votes down Send Private Message Add Comment To Profile

Edited: 13-Jul-05 01:42 AM
Member Since: 06/26/2000
Posts: 1497
We're in the exact same situation...and we're just hiring mid-level PC techs. I had a recent MIS graduate apply. He got EVERY question I asked him wrong. HE DIDN'T KNOW WTF PING WAS!!! I was in shock when he told me he paid $30K per year of college. A few of my questions (based on WinXP): -Tell me about Windows' Profiles -What would you do if the BIOS password on a desktop is set, but unknown? -Any laptop hardware experience? Ever replaced a motherboard on a laptop? -What technical direction are you looking at? (Sys admin, networking, programming, etc) -How do you check what the computer is named? -How would you troubleshoot, "I can't get on the Internet!"? (I always have the problem in mind, and we'll walk through the scenario. I like using a down DNS server as the issue) -What is DHCP? What does it provide? -What does a subnet mask tell you? -What is a gateway address? -How can you tell what IP address the computer has? -What is DNS? -What does traceroute show you? -What is Ping? What are some of its options? -How can you tell what drivers need to be loaded? -How would you try to install an application, built only for Windows 98, on XP? -Any drive imaging experience? -Any partitioning experience? -Tell me about local Group Policies. How do I access them? -Have you done anything in the past year to further your IT education? (Important - Shows interest in learning) My favorite: Describe the last technical problem you couldn't fix. I'll always push to find out where the interviewee's skill boundaries are. They know what DHCP is? Good, then explain in detail the DHCP process, along with everything DHCP can provide. I'll keep going until I either stump them, or I'm satisfied that they're an expert in that subject. Above all, your attitude has to be in line. We're seriously considering hiring a guy with very poor technical skills because of his great attitude. You can train someone to be a decent tech; but you can't change someone's personality.
7/13/05 1:20 AM
Ignore | Quote | Vote Down | Vote Up
Revolver of Reason
Send Private Message Add Comment To Profile

Edited: 13-Jul-05
Member Since: 01/01/2001
Posts: 25063
"Seems like students should get at least 2 courses in server-side Web development." universities are not job training, they are supposed to teach you how to be a computer scientist.
7/13/05 12:26 PM
Ignore | Quote | Vote Down | Vote Up
Andrew Yao
Send Private Message Add Comment To Profile

Edited: 13-Jul-05
Member Since: 01/01/2001
Posts: 2848
You should ask them if they are familiar with the legendary red/black splay heap, and if they say yes, then tell them to get out. (There's no such thing.)
7/13/05 2:09 PM
Ignore | Quote | Vote Down | Vote Up
rfquinn
1 The total sum of your votes up and votes down Send Private Message Add Comment To Profile

Edited: 13-Jul-05
Member Since: 06/26/2000
Posts: 1498
One more thing. If the job posting says not to call, DON'T F'IN CALL!!!
7/13/05 6:25 PM
Ignore | Quote | Vote Down | Vote Up
tko13
Send Private Message Add Comment To Profile

Edited: 13-Jul-05
Member Since: 12/17/2004
Posts: 131

I totally agree.  I could rant on about this stuff all day long, but I think that you guys hit a lot of it dead-on.  I wish applicants would walk in and be honest more often.

One ballsy manager in our company did a pretty funny thing in an interview for an employee that was to be billed to the both of us.  At the beginning of the interview, he told the applicant, "Okay.  Everything on this resume is fair game.  We are going to grill you on EVERYTHING that is written here, so be prepared.  I'll give you 2 minutes to look it over and cross out anything that you may have misrepresented."   He handed the applicant a copy of his resume and a red pen, and sat back and talked to me while the guy started panicking. 

Well, the applicant probably should have crossed off everything on the damn resume other than his name, because he probably got 2 questions right out of 75.

I'm interested in hearing more about bad applicants that you guys have had.  I have tons of stories!

7/14/05 12:22 AM
Ignore | Quote | Vote Down | Vote Up
theseanster
270 The total sum of your votes up and votes down Send Private Message Add Comment To Profile

Edited: 14-Jul-05
Member Since: 05/13/2002
Posts: 7992
universities are not job training, they are supposed to teach you how to be a computer scientist. OK, fair enough. Do any of them teach database programming w/ T-SQL in college? Event-driven vs. procedural programming? Windows or other UI development? OOP and architectural concepts? Systems analysis and design? If so, I don't see the harm at all in teaching Web development so students get their arms around that kind of environment. Just my opinion, wtf do I know. :-)
7/14/05 12:26 AM
Ignore | Quote | Vote Down | Vote Up
theseanster
270 The total sum of your votes up and votes down Send Private Message Add Comment To Profile

Edited: 14-Jul-05
Member Since: 05/13/2002
Posts: 7993
I'm interested in hearing more about bad applicants that you guys have had. I have tons of stories! It's actually not funny to me except for the one BSer I had. It's sad. I get very uncomfortable when I go through the template of questions and people just aren't getting any of them right. I pretty much just write down "No way" in my notes and then ask extremely softball questions such as "what did you like the most about your last job." Then I end the conversation so they go out without feeling completely ass-raped. Seriously guys, I want people to be successful. I'm just shocked that most people are really just not qualified at all.
7/14/05 2:09 AM
Ignore | Quote | Vote Down | Vote Up
Revolver of Reason
Send Private Message Add Comment To Profile

Edited: 14-Jul-05
Member Since: 01/01/2001
Posts: 25066
"If so, I don't see the harm at all in teaching Web development so students get their arms around that kind of environment. Just my opinion, wtf do I know. :-)" some colleges have it, some don't. they have a Unix + PHP + Apache class at my school. "Do any of them teach database programming w/ T-SQL in college?" how about teaching as portable SQL as possible instead?
7/14/05 4:39 AM
Ignore | Quote | Vote Down | Vote Up
jonwell
6 The total sum of your votes up and votes down Send Private Message Add Comment To Profile

Edited: 14-Jul-05
Member Since: 01/01/2001
Posts: 32733
Man I applied for a help desk position at Qualcomm and studied my ass of at basic networking trouble shooting, etc. The phone screener asked my about every damn thing I didn't study. It was painful. I didn't bullshit him tho, I just said "I don't know" a lot :P
7/14/05 5:14 AM
Ignore | Quote | Vote Down | Vote Up
Fin
13 The total sum of your votes up and votes down Send Private Message Add Comment To Profile

Edited: 14-Jul-05
Member Since: 01/01/2001
Posts: 11118
Phew, thankfully, I feel I am strong if I get thrown anything in the basic cisco / medium server 2003 / advanced PC/windows/ advanced 802.11... yay
7/14/05 6:55 AM
Ignore | Quote | Vote Down | Vote Up
warez
248 The total sum of your votes up and votes down Send Private Message Add Comment To Profile

Edited: 14-Jul-05
Member Since: 01/01/2001
Posts: 4596
Be a people person, know your shit, and a leader. Be a catalyst for change for the better and not have an attitude of showing up for your paycheck. You are an investment for the company, and they have to make x amount of money off of hiring you, so if you're getting paid $50K/year, you should push yourself to make at least $500K for the company, otherwise you're dead weight.
7/14/05 7:14 PM
Ignore | Quote | Vote Down | Vote Up
theseanster
270 The total sum of your votes up and votes down Send Private Message Add Comment To Profile

Edited: 14-Jul-05 07:19 PM
Member Since: 05/13/2002
Posts: 7998
they have a Unix + PHP + Apache class at my school. Good! how about teaching as portable SQL as possible instead? Dude, WTF are you talking about?!?! Do you even know? :-)
7/14/05 7:15 PM
Ignore | Quote | Vote Down | Vote Up
theseanster
270 The total sum of your votes up and votes down Send Private Message Add Comment To Profile

Edited: 14-Jul-05
Member Since: 05/13/2002
Posts: 7999
Maybe you should phone screen these people. The HR person phone screens first. Then I phone screen, and that's what I'm talking about. If the person passes my phone screen they get a face to face with 2-3 other people.
7/14/05 8:45 PM
Ignore | Quote | Vote Down | Vote Up
Revolver of Reason
Send Private Message Add Comment To Profile

Edited: 14-Jul-05
Member Since: 01/01/2001
Posts: 25069
"Dude, WTF are you talking about?!?! Do you even know? :-)" SQL is a ISO or ANSI standardized language. I am saying you should teach a subset of SQL that works over as many SQL dialects as possible, although it's hard due to vendor extensions.
7/14/05 10:19 PM
Ignore | Quote | Vote Down | Vote Up
theseanster
270 The total sum of your votes up and votes down Send Private Message Add Comment To Profile

Edited: 14-Jul-05
Member Since: 05/13/2002
Posts: 8003
Yeah, great. Fine. Beautiful. I'm not sure what you are getting at with your comment. Maybe there was no point there and I'm reading too much into it. With a database class or two you should able to write SELECT, INSERT, UPDATE, DELETE statements. Take it step further, use standard aggregate functions like COUNT and know that you have to use a GROUP BY. Take it yet another step...throw a HAVING clause in there. That's all I'm saying. Even if you write T-SQL in Oracle and start querying SQL Server databases, you're still going to be able to do the job...and vice versa. The only 3 database classes I had in college were IMS, DB2, and MS Access, but in my first job was able to program against FoxPro, SQL Server, Oracle, and whatever lame-ass database came with PowerBuilder 4.0. My main point was: if colleges can teach database programming they can also teach Web programming. I honestly don't care if it is JSP, PHP, ASP, or anything else. In this case, ASP would help the candidates I'm interviewing.
7/25/05 8:28 AM
Ignore | Quote | Vote Down | Vote Up
asdf
3 The total sum of your votes up and votes down Send Private Message Add Comment To Profile

Edited: 25-Jul-05 08:30 AM
Member Since: 01/01/2001
Posts: 7570
Good thread. Even I can answer those questions, and I am an engineering major (with no CIS/CS experience). As an aside, IMO, pure technical interviews are a little overemphasized. As with rfquinn's example, you've got to ask some troubleshooting in there somewhere. Also, what I found out recently (rather painfully) is that the pure technical interview does not measure attention to detail or work ethic.
7/26/05 12:07 AM
Ignore | Quote | Vote Down | Vote Up
rfquinn
1 The total sum of your votes up and votes down Send Private Message Add Comment To Profile

Edited: 26-Jul-05
Member Since: 06/26/2000
Posts: 1506
asdf - Is it possible to gauge a candidate's attention to detail and work ethic in an interview? What kinds of questions would you ask? Make it quick...I have interviewees coming in on Thursday. :)
7/26/05 12:09 AM
Ignore | Quote | Vote Down | Vote Up
rfquinn1
Send Private Message Add Comment To Profile

Edited: 26-Jul-05
Member Since: 05/05/2005
Posts: 16
UMP!
7/26/05 10:51 AM
Ignore | Quote | Vote Down | Vote Up
asdf
3 The total sum of your votes up and votes down Send Private Message Add Comment To Profile

Edited: 26-Jul-05
Member Since: 01/01/2001
Posts: 7577
Good question rfquinn. I wish I knew (other than by calling references). I also like GPA, achievements in extracurriculars, and learning new things. But there's no guarantee there either.
7/27/05 11:34 PM
Ignore | Quote | Vote Down | Vote Up
theseanster
270 The total sum of your votes up and votes down Send Private Message Add Comment To Profile

Edited: 27-Jul-05
Member Since: 05/13/2002
Posts: 8049
Personally I like to ask what the last 3 books the person read. Not that books have a lot to do with work ethic, usually I can get that out of asking them to explain in detail what their last project involved and some of the problems they had to overcome.
7/28/05 1:24 PM
Ignore | Quote | Vote Down | Vote Up
T0ki
Send Private Message Add Comment To Profile

Edited: 28-Jul-05
Member Since: 01/01/2001
Posts: 20161
"universities are not job training, they are supposed to teach you how to be a computer scientist." But why are most people going to universities? To become computer scientists?
11/13/12 11:40 AM
Ignore | Quote | Vote Down | Vote Up
theseanster
270 The total sum of your votes up and votes down Send Private Message Add Comment To Profile

Member Since: 5/13/02
Posts: 21203

bump for CS students


Reply Post

You must log in to post a reply. Click here to login.