Hiring Graduates
-
Mark Wallace wrote:
God knows where universities get the gall to come up with course names that even hint that they teach people how to code.
I don't doubt that. I remember some of the projects my fellows did for their final year. I spent practially all my time writing software and they were spending it all writing bizzare essays on "ubiquitous" computing.
Upcoming FREE developer events: * Glasgow: Agile in the Enterprise Vs. ISVs, Mock Objects, SQL Server CLR Integration, Reporting Services, db4o, Dependency Injection with Spring ... * Reading: SQL Bits My website
Colin Angus Mackay wrote:
I remember some of the projects my fellows did for their final year. I spent practially all my time writing software and they were spending it all writing bizzare essays on "ubiquitous" computing.
Precisely. Too much time is spent on the philosophy of computing (and on studying how to puff out CVs and bull your way through interviews). Do we need philosophers in IT, or do we need people who can write and QC code? It would probably be advantageous to set up apprenticeships, taking on 18-year-olds who are still willing and eager to write code, and haven't been perverted by the academic attitude toward "those dreadful computer thingies". I'd be willing to bet they'd be up and running in production in a much shorter (and less painful) time.
-
The company I work for is having a terrible time hiring quality software developers. It seems that they just don't exist. We received in total about 20 CVs from various sources. We interviewed 5 of those, only one got to the second interview stage. We are thinking that perhaps the best thing to do is to spend our budget on a couple of graduates fresh out of university and train them up. The previous company I worked for did that, but I wasn't involved with that aspect. Does anyone have any advice for hiring graduates?
Upcoming FREE developer events: * Glasgow: Agile in the Enterprise Vs. ISVs, Mock Objects, SQL Server CLR Integration, Reporting Services, db4o, Dependency Injection with Spring ... * Reading: SQL Bits My website
Be careful with what you spend on training new graduates. The previous company I worked for did that very generously, but the money went away with the trained engineers who jumped ship immediately when they became experienced enough to get a higher pay, more importantly to get rid of the name tag as being a new grad.:-D
-
If you know the university you can get some idea from their transcript, but I have found the most reliable technique is to give them a technical grilling in the interview. Not to test their knowledge, but to see how they think (if in fact they do). I would do it with my 2IC, we would have the initial niceties and start asking about things they had worked on, then when we found something they should know about, we would give them a whiteboard marker and start giving them problems. If we hit a blank we would move on, anyone who is any good has some area of technical expertise that you can probe. Not only would we ask them to solve problems, we would sometimes give alternate answers and see if they had any sense of good design, if they didn't pick up on the issues we would raise them and see if they appreciated it. Good people's eyes light up when exposed to new ideas. The good ones pick themselves in this sort of interview, they are good at something and clearly know the limits of their knowledge (this is probably more important than what they know). They have some idea, or can at least appreciate, why some solutions may be better than others. The bad ones are impossible to talk to in depth about anything, guess way past the limits of their knowledge and have minimal ability to differentiate good designs.
Peter "Until the invention of the computer, the machine gun was the device that enabled humans to make the most mistakes in the smallest amount of time."
:-D I was hired as a graduate for a really big IT company in SA as part of their intership programme. the pay was real crap but i figured that the experience was what counted the most...it was a really good experience, i learned alot but didnt stay long. I found a company that paid me better and didnt stump my growth as a person.I reckon its a great way for recruitment of graduates cos youre training the graduates according to your policies and standards and it would be easier for the company in the long haul...but the problem is that if you don t pay well enough and keep them there, theyre going to look elsewhere and they will move because they are young and they have their new found experience...its a gamble, but it depends how look at it.. sharonaM
-
We are part of a college and we hire plenty of graduates.
Colin Angus Mackay wrote:
Does anyone have any advice for hiring graduates?
The guys who get the highest scores aren't always the best guys. I never used to do much with references but with graduates it is very useful. These kids just spent four years being lectured by someone. Go ask that someone what they think of the kid. And don't ask questions that have answers from a book e.g. In OO, what is an interface. These guys just graduated, they remember all the names but little of the meaning. I also put a lot of weight on the projects they did as opposed to their written exams. Ask to see the project, look at the code and ask them to explain what they did and why they did it that way. Last bit of advice, and this applies to any programmer IMO, is to ask; When did you start using computers? Our best hires have always been guys who started young and have computers at home. Our worst hires are super clever kids who took the computer course having never used computers before but thinking it was a good career move. The good guys will show a passion for computers. They go home and code, they wake up in the mornings and code, they do their own projects and not just what college told them to do. Finally; Don't let them have root privileges. One of our grads did "sudo rm -r" on /.
regards, Paul Watson Ireland & South Africa
Shog9 wrote:
And with that, Paul closed his browser, sipped his herbal tea, fixed the flower in his hair, and smiled brightly at the multitude of cute, furry animals flocking around the grassy hillside where he sat coding Ruby on his Mac...
Paul Watson wrote:
These guys just graduated, they remember all the names but little of the meaning.
We tend to follow that up with a "Why would that be useful?" and then present a situation and ask "So, would that be useful in this situation?" Just to find out if it is just words memorised from a book, or if they can think through the problem.
Paul Watson wrote:
I also put a lot of weight on the projects they did as opposed to their written exams.
Absolutely. I agree with that. If their project was software development based then that is much better than a project that is an essay on writing software.
Paul Watson wrote:
When did you start using computers?
Good question - I started with a ZX Spectrum at the age of 9.
Paul Watson wrote:
The good guys will show a passion for computers.
Yes. Its the passionate ones we want. Excellent advice and points to think about there Paul. Thanks.
Upcoming FREE developer events: * Glasgow: Agile in the Enterprise Vs. ISVs, Mock Objects, SQL Server CLR Integration, Reporting Services, db4o, Dependency Injection with Spring ... * Reading: SQL Bits My website
-
Paul Watson wrote:
These guys just graduated, they remember all the names but little of the meaning.
We tend to follow that up with a "Why would that be useful?" and then present a situation and ask "So, would that be useful in this situation?" Just to find out if it is just words memorised from a book, or if they can think through the problem.
Paul Watson wrote:
I also put a lot of weight on the projects they did as opposed to their written exams.
Absolutely. I agree with that. If their project was software development based then that is much better than a project that is an essay on writing software.
Paul Watson wrote:
When did you start using computers?
Good question - I started with a ZX Spectrum at the age of 9.
Paul Watson wrote:
The good guys will show a passion for computers.
Yes. Its the passionate ones we want. Excellent advice and points to think about there Paul. Thanks.
Upcoming FREE developer events: * Glasgow: Agile in the Enterprise Vs. ISVs, Mock Objects, SQL Server CLR Integration, Reporting Services, db4o, Dependency Injection with Spring ... * Reading: SQL Bits My website
BTW we are having the same recruitment problems in Ireland. Severe shortage of experienced programmers, pretty much in any field (we are trying to find senior Java devs and mid-level web-devs and getting nowhere. We are "forced" to hire graduates.)
regards, Paul Watson Ireland & South Africa
Shog9 wrote:
And with that, Paul closed his browser, sipped his herbal tea, fixed the flower in his hair, and smiled brightly at the multitude of cute, furry animals flocking around the grassy hillside where he sat coding Ruby on his Mac...
-
The company I'm starting with today said they can't find any .Net programmers with the level of experience they require, so they had to lower the bar in terms of what they were looking for, and they STILL couldn't find anyone. I guess it's so bad they had to settle for me (no real .Net framework knowledge, but can write in any language you might care to mention). :) We're in San Antonio, and they advertised the job in Austin and Houston, and evidently, anyone that *did* meet their requirements wanted to relocate/commute, much less come to San Antonio to interview. At my last job, we had a Stanford graduate who was one of the best natural programmers I'd ever seen. He had that kind of programming skill that they don't teach in any school, if you know what I mean. As to your question, the problem would be finding the guy that can adapt to your requirements. I think the best way to approach it is to 0) Call them in for a face-to-face interview. Tell them the interview may last all day (so they have to be there early in the morning - testing promptness here). 1) Ask if they have a laptop, and if they do, tell them to bring a it with all of their preferred development tools on it, and a wireless card if their laptop didn't have a built-in one. 2) Tell them to bring any books they think they'll need. 3) Prepare your network to allow a wireless connection that disallows anything but web access. If the interviewee doesn't have a laptop, provide a desktop machine that contains all of your company's dev tools on it. You may also have to allow access to a database server if the project requires database functionality. 4) Prepare a project with a detailed list of requirements that the interviewee will have to implement. The object of this project isn't to produce anything really useful, or even necessarily to be finished. It's more to see if the interviewee can follow specs and see how he responds to nebulous requirements that don't specify any/many details about how something needs to be done. You can also see if/how he comments his code. I think you get the idea - come up with something that could be finished in about six hours by someone with the desired level of experience, and see what happens. Highly motivated programmers should be able to finish the project before the end of the work day. This is much better than asking prospective employees how to reverse a string in place.
John Simmons / outlaw programmer wrote:
I think you get the idea - come up with something that could be finished in about six hours by someone with the desired level of experience, and see what happens.
We actually already do this, but a 2 hour version. It really weeds out those that aren't skilled enough.
Upcoming FREE developer events: * Glasgow: Agile in the Enterprise Vs. ISVs, Mock Objects, SQL Server CLR Integration, Reporting Services, db4o, Dependency Injection with Spring ... * Reading: SQL Bits My website
-
I've notice that with some of the recent grads we've hired and friends of mine have hired, although they only lasted a year before they left for twice the salary. And speaking of salary has anyone noticed that almost every college grad, at least in the US, comes out expecting to be given te job simply because they have a degree and expect to be paid $50,000 USD+ a year to do it, hell when i graduated almost 2 years ago my first job and the one i'm still at paid me 30k now they've given me some nice bonus's and very nice raises, but i'm only now coming close (might be there in a year or so) to what most of these people think they'll get by having a piece of paper which is rapidly becoming as meaningful as a HS diploma. Also if any of you know of a way to nicely burst their salary expectations bubble i'd love to hear it.
SomeGuyThatIsMe wrote:
Also if any of you know of a way to nicely burst their salary expectations bubble i'd love to hear it.
Let them wait until they've been unemployed for a while without getting an offer at a salary they want.
Upcoming FREE developer events: * Glasgow: Agile in the Enterprise Vs. ISVs, Mock Objects, SQL Server CLR Integration, Reporting Services, db4o, Dependency Injection with Spring ... * Reading: SQL Bits My website
-
As a soon to be graduate in Computer Engineering I have found this topic to be quite interesting. I was hoping to get some feedback on how I can sell myself in future interviews. My biggest fear is that potential employers will focus too much on grades. My grades are, in one word, terrible. I have been working on my own developing ASP.NET pages as well as some small windows apps. What are some qualities I can highlight that might counteract my grades? I really do believe that I could be a quality software developer. Its not my nature to be arrogant or a know it all, but I am still very confident in my abilities. Also, do you think its best to explain my grades or just leave that topic alone?
Here Colin and I have been interviewing with very varying degree of success. All we want is Really good understanding of OOP Be able to explain things. Language grasp of a .NET language Be able to demostrate application structure. We've have folk with 10 years experiance with MCAD etc... unable to describe a db connection, what a clustered index is and how an interface works. Its sad really :(
Grady Booch: I told Google to their face...what you need is some serious adult supervision. (2007 Turing lecture) http://www.frankkerrigan.com/[^]
-
As a soon to be graduate in Computer Engineering I have found this topic to be quite interesting. I was hoping to get some feedback on how I can sell myself in future interviews. My biggest fear is that potential employers will focus too much on grades. My grades are, in one word, terrible. I have been working on my own developing ASP.NET pages as well as some small windows apps. What are some qualities I can highlight that might counteract my grades? I really do believe that I could be a quality software developer. Its not my nature to be arrogant or a know it all, but I am still very confident in my abilities. Also, do you think its best to explain my grades or just leave that topic alone?
R C W wrote:
My biggest fear is that potential employers will focus too much on grades. My grades are, in one word, terrible.
The most of what I'll see is that you got a degree in X. A simple pass/fail. Usually people who got the high marks will advertise it on their CV e.g. 1st class Honours Degree in X. Next, I'll probably look at the institution. A person who passed from one university may not be as good as a person who passed from another. On the flip side some excellent universities do some very highly theoretical courses that aren't much use outside academia. What sort of university do you go to?
R C W wrote:
I have been working on my own developing ASP.NET pages as well as some small windows apps. What are some qualities I can highlight that might counteract my grades?
Do you use proper OO practices, design patterns and the like? That is the sort of thing I'll be looking for. If you don't know what design patterns are get "Head First Design Patterns" it is an excellent introduction to the subject.
R C W wrote:
Also, do you think its best to explain my grades or just leave that topic alone?
Leave the topic alone. If you passed your degree, just say you have a degree in X. That is what I do - not because I got poor grades (I was 5th top of my class) but because I dropped out to start a company and I asked the uni' "If I leave now what will I get" and they told me I had enough credit for an ordinary degree (no distinction, honours, or anything like that, just a plain scraped pass style degree).
R C W wrote:
I really do believe that I could be a quality software developer.
Documentation is important. Don't pay it lip service. If you have home projects that you have written, document them - even if that is just XML comments on methods. Make sure they have unit tests. So few people know what unit testing is, and it is so important for producing quality software.
Upcoming FREE developer events: * Glasgow: Agile in the Enterprise Vs. ISVs, Mock Objects, SQL Server CLR Integration, Reporting Services, db4o, Dependency Injection with Spring ... * Reading: SQL Bits My
-
oh well - all depends I suppose. I have found and heard a few cases where people are too busy talking about the way they do things and the things they have done, rather than doing things to fit in with the way everyone else does things. And they want to continue doing it their way, regardless. Whereas a graduate doesn't even have a way to do things yet, so you can give them one :) Plus, the people I know were more terrified when they got their first programming job than thinking they know everything. Some great people I knew at uni probably WOULD have a problem with customers and timeframes because they just program all the time and creatively and they really DO know a massive amount - and you can't let anything, like eating, or customers, get in the way of programming the thing, whatever the thing is. True hackers. Of course, if you can control them and get them to work on their work, then they will be brilliant and you'll get a lot of random extra contribution besides.
"Your typical day is full of moments where you ask for a cup of coffee and someone hands you a bag of nails." - Scott Adams
this is my first year of working as a programmer, i was fortunate enough to be hired straight out of uni, and i was thrown straight into the deep end and had to adapt very quickly, it is still an ongoing learning experience i dont think i know it all, i dont think anyone knows it all but its the willingness to learn that drives me on. I still am in contact with some of my old class mates and they say its impossible to find a job without experience which is the case for any job, but i guess the point im trying to make is how are we (graduates) supposed to get anywhere if you don't give us a chance to prove our potential. Instead of looking for skilled programmer hire a graduate and mould them to your company standards
-
I think it is worth finding someone who can learn, then it doesn't really matter if they have experience. Even if someone has experience, if it takes them ten years to learn a new concept, that is not useful. Plus - if you get graduates they will not be "stuck in their ways" and they will (hopefully) not think they actually know anything, so they will be easier to integrate into you companies ideal work strategies and methodologies. I know you didn't really ask WHETHER you should hire graduates, but I think the "suitability for brainwashing" is so seldom brought up normally that I thought I should ;)
"Your typical day is full of moments where you ask for a cup of coffee and someone hands you a bag of nails." - Scott Adams
Well said. I agree, there is a lot of people out there with loads of experience, but don't learn well. Yeah they've coded in a dozen languages on everything from a vacuum tube computer to a 64 way SMP box. But what they don't mention is they purchased the software and wrote a script to call the program. Or they had a buddy at the company that was a guru, and they never had to learn something new because if they got stuck they asked him, and he spit out the code for him. Give them a couple problems, see how they think. Explain the challenges of the job, and if the problems excite them, and they can problem solve, they'll be thinking about their project when they are at home watching TV. I like my current job, and I've spend numerous hours on the side thinking up solutions to problems. Ask them as a kid what they played with. That should throw them off. But if their answer is lego, Rubix cubes and puzzles, chances are they like to solve problems.
-
R C W wrote:
My biggest fear is that potential employers will focus too much on grades. My grades are, in one word, terrible.
The most of what I'll see is that you got a degree in X. A simple pass/fail. Usually people who got the high marks will advertise it on their CV e.g. 1st class Honours Degree in X. Next, I'll probably look at the institution. A person who passed from one university may not be as good as a person who passed from another. On the flip side some excellent universities do some very highly theoretical courses that aren't much use outside academia. What sort of university do you go to?
R C W wrote:
I have been working on my own developing ASP.NET pages as well as some small windows apps. What are some qualities I can highlight that might counteract my grades?
Do you use proper OO practices, design patterns and the like? That is the sort of thing I'll be looking for. If you don't know what design patterns are get "Head First Design Patterns" it is an excellent introduction to the subject.
R C W wrote:
Also, do you think its best to explain my grades or just leave that topic alone?
Leave the topic alone. If you passed your degree, just say you have a degree in X. That is what I do - not because I got poor grades (I was 5th top of my class) but because I dropped out to start a company and I asked the uni' "If I leave now what will I get" and they told me I had enough credit for an ordinary degree (no distinction, honours, or anything like that, just a plain scraped pass style degree).
R C W wrote:
I really do believe that I could be a quality software developer.
Documentation is important. Don't pay it lip service. If you have home projects that you have written, document them - even if that is just XML comments on methods. Make sure they have unit tests. So few people know what unit testing is, and it is so important for producing quality software.
Upcoming FREE developer events: * Glasgow: Agile in the Enterprise Vs. ISVs, Mock Objects, SQL Server CLR Integration, Reporting Services, db4o, Dependency Injection with Spring ... * Reading: SQL Bits My
First off, thank you for your response. I attended a good university. When I started it was in the top 20 engineering schools. I have learned/use OO practices and design both in and out of school. I too dropped out one semester shy, but now I'm returning to school for my last semester. However, instead of withdrawing from classes, I just left so my GPA was ruined even more than before. I have learned unit testing and used it in school projects, but unfortunately not outside of school.
-
The company I work for is having a terrible time hiring quality software developers. It seems that they just don't exist. We received in total about 20 CVs from various sources. We interviewed 5 of those, only one got to the second interview stage. We are thinking that perhaps the best thing to do is to spend our budget on a couple of graduates fresh out of university and train them up. The previous company I worked for did that, but I wasn't involved with that aspect. Does anyone have any advice for hiring graduates?
Upcoming FREE developer events: * Glasgow: Agile in the Enterprise Vs. ISVs, Mock Objects, SQL Server CLR Integration, Reporting Services, db4o, Dependency Injection with Spring ... * Reading: SQL Bits My website
There are pros and cons to hiring fresh graduates. Some pros are you can pay them less because they are inexperienced, and you can mold them to the way things are done at your company. A con to hiring a graduate would be the fact that it will take time for them to learn and so will be unproductive until the process of learning is well under way. I know companies that had deviced non programming 'logic' tests in order to see if candidates had the aptitude to be software developers. Maybe a search in Google would turn up some info on that type of testing. I'm surprised your company only received 20 CVs. Has you company posted an ad in Dice.com or Monster.com?
-
"It" could be anything but you would still be nude!!!
regards, Paul Watson Ireland & South Africa
Shog9 wrote:
And with that, Paul closed his browser, sipped his herbal tea, fixed the flower in his hair, and smiled brightly at the multitude of cute, furry animals flocking around the grassy hillside where he sat coding Ruby on his Mac...
Paul Watson wrote:
"It" could be anything but you would still be nude!!!/blockquote> Of course, now off you go and read my new post.
Michael Martin Australia "I controlled my laughter and simple said "No,I am very busy,so I can't write any code for you". The moment they heard this all the smiling face turned into a sad looking face and one of them farted. So I had to leave the place as soon as possible." - Mr.Prakash 24/04/2004
-
The company I work for is having a terrible time hiring quality software developers. It seems that they just don't exist. We received in total about 20 CVs from various sources. We interviewed 5 of those, only one got to the second interview stage. We are thinking that perhaps the best thing to do is to spend our budget on a couple of graduates fresh out of university and train them up. The previous company I worked for did that, but I wasn't involved with that aspect. Does anyone have any advice for hiring graduates?
Upcoming FREE developer events: * Glasgow: Agile in the Enterprise Vs. ISVs, Mock Objects, SQL Server CLR Integration, Reporting Services, db4o, Dependency Injection with Spring ... * Reading: SQL Bits My website
I have had my best sucess with technical school graduates rather then university. Most of them at least understand the concept of reports with totals rather then a dozen different esoteric storage systems. Having interns also works even for smaller companies. You just have to gear the work required to their level and it gives you an opertunity to try them out to see how they work/think. The big thing is that they are all used to "passing" grades - if it works 75% it works. Most don't get that the client will only focus on what doesn't work, 99% is a passing grade. Look for people who are both logical and artistic you need both to be a good programmer. Lena
-
Colin Angus Mackay wrote:
I remember some of the projects my fellows did for their final year. I spent practially all my time writing software and they were spending it all writing bizzare essays on "ubiquitous" computing.
Precisely. Too much time is spent on the philosophy of computing (and on studying how to puff out CVs and bull your way through interviews). Do we need philosophers in IT, or do we need people who can write and QC code? It would probably be advantageous to set up apprenticeships, taking on 18-year-olds who are still willing and eager to write code, and haven't been perverted by the academic attitude toward "those dreadful computer thingies". I'd be willing to bet they'd be up and running in production in a much shorter (and less painful) time.
*Waves moronically* I say I'm a student, because I'm about to hit a Computer Games Design course (with 2 directions: Design or Coding, and I'm taking the Coding). As of yet I've not started and I can tell you; the way I code is far different from anything I've looked at that was done professionally. One difference is that people like me are more about the functionality - get it working. Once you're told to do other things you get caught up trying to make code readable and extensible and any other fancy-sounding adjective just to make it "better" (or not). Much agreed on the idea of hiring Undergraduates. Oh, and if you want your first applicant? ;P
Ninja (the Nerd)
Confused? You will be... -
bryce wrote:
some of us clever trouser types to be found here on CP have quite some experience in it :)
...and I do it in the nude while drinking beer!
Michael Martin Australia "I controlled my laughter and simple said "No,I am very busy,so I can't write any code for you". The moment they heard this all the smiling face turned into a sad looking face and one of them farted. So I had to leave the place as soon as possible." - Mr.Prakash 24/04/2004
...that sounds like productivity to me! After all, everyone wins: You enjoy your work therefore are more likely to stick at it; you scare off any oncoming people who would bother you (except your wife who's seen it all before); and you keep the breweries open for the rest of us!
Ninja (the Nerd)
Confused? You will be... -
John Simmons / outlaw programmer wrote:
I think you get the idea - come up with something that could be finished in about six hours by someone with the desired level of experience, and see what happens.
We actually already do this, but a 2 hour version. It really weeds out those that aren't skilled enough.
Upcoming FREE developer events: * Glasgow: Agile in the Enterprise Vs. ISVs, Mock Objects, SQL Server CLR Integration, Reporting Services, db4o, Dependency Injection with Spring ... * Reading: SQL Bits My website
Sounds like that movie Swordfish where they guy has to crack a 1024 bit encryption password in under 60 sec while rated R content.
Todd Smith
-
this is my first year of working as a programmer, i was fortunate enough to be hired straight out of uni, and i was thrown straight into the deep end and had to adapt very quickly, it is still an ongoing learning experience i dont think i know it all, i dont think anyone knows it all but its the willingness to learn that drives me on. I still am in contact with some of my old class mates and they say its impossible to find a job without experience which is the case for any job, but i guess the point im trying to make is how are we (graduates) supposed to get anywhere if you don't give us a chance to prove our potential. Instead of looking for skilled programmer hire a graduate and mould them to your company standards
Yeah, everyone wants experience around here, but they seldom ever want to pay for the experience they want. I am actually only one year into my job, which I started one year after doing mostly nothing for a year after graduating. However, my husband is also a programmer and has been for at least 10 years, so I get to hear a lot about his office and staff ;) There are a lot of small companies here, and not a lot of experienced programmers, and a university with a comp sci department, so there are probably better opportunities for graduates because people know they are available and what they can do (as everyone already working is also from the same uni) - and no one has much money so they want to hire graduates because they are cheap! It is harder for an experienced programmer to get a job here that will pay anything like what they would already be getting (which is how the "bad" companies keep (most) of their staff).
"Your typical day is full of moments where you ask for a cup of coffee and someone hands you a bag of nails." - Scott Adams
-
Well said. I agree, there is a lot of people out there with loads of experience, but don't learn well. Yeah they've coded in a dozen languages on everything from a vacuum tube computer to a 64 way SMP box. But what they don't mention is they purchased the software and wrote a script to call the program. Or they had a buddy at the company that was a guru, and they never had to learn something new because if they got stuck they asked him, and he spit out the code for him. Give them a couple problems, see how they think. Explain the challenges of the job, and if the problems excite them, and they can problem solve, they'll be thinking about their project when they are at home watching TV. I like my current job, and I've spend numerous hours on the side thinking up solutions to problems. Ask them as a kid what they played with. That should throw them off. But if their answer is lego, Rubix cubes and puzzles, chances are they like to solve problems.
I don't know what it is like with other jobs, but I agree that in the case of programmers, they often give extra value by "thinking on the side". Even if they don't actually program out of work hours (like I don't) then they will be thinking about the problem. Programming obviously involves a lot of thinking, so this thinking is very valuable. And it doesn't even seem like work since you can do it while walking, exercising, showering, whatever! That "what toys did you play with" question is awesome :-D
"Your typical day is full of moments where you ask for a cup of coffee and someone hands you a bag of nails." - Scott Adams