AI - JOB Interviews.
Hi All,
can anybody has some hints - suggestions- faq questions of how an interview process will be for an AI Programmer role![ especially for an entry into the game AI sector with a degree in AI Specialisation]
Thanks and waiting for replies
T!
p.S. for sure demos will sell us, also do UML stuff on previous project will do?
For an intro position fun questions I ask are:
1) Let's say we hire you and assign you to the whole AI system, give you an unlimited budget and no deadline. What would you do with the AI on this specifc project: describe conceptually and also architecturally
2) Come up with an algorithm that solves dynamic object avoidance for pathing finding/following.
3) Describe and/or code an A* search
4) Describe and/or code a basic flocking algorithm
5) Basic engineering questions like: find the bugs in this code, what does this bizarro code do.
6) Basic Linear algebra questions: what's a dot product, how do you take a cross product and what's it good for, matrix math, etc.
7) If there are projects on your resume I'd pick the one that sounds most interesting to me and ask you to explain in detail what you did and how you did it to see if you're lying about how big a role you played, etc. It's sad how many people overstate beyond their capacity to explain on a resume.
Other people i work with ask classic brain teaser questions like:
http://256.com/gray/teasers/
Anything you can provide: demos, UML, whatever can help get you a job provided they are presented professionally. A crappy demo or meaningless UML will hurt you more than help you.
-me
1) Let's say we hire you and assign you to the whole AI system, give you an unlimited budget and no deadline. What would you do with the AI on this specifc project: describe conceptually and also architecturally
2) Come up with an algorithm that solves dynamic object avoidance for pathing finding/following.
3) Describe and/or code an A* search
4) Describe and/or code a basic flocking algorithm
5) Basic engineering questions like: find the bugs in this code, what does this bizarro code do.
6) Basic Linear algebra questions: what's a dot product, how do you take a cross product and what's it good for, matrix math, etc.
7) If there are projects on your resume I'd pick the one that sounds most interesting to me and ask you to explain in detail what you did and how you did it to see if you're lying about how big a role you played, etc. It's sad how many people overstate beyond their capacity to explain on a resume.
Other people i work with ask classic brain teaser questions like:
http://256.com/gray/teasers/
Anything you can provide: demos, UML, whatever can help get you a job provided they are presented professionally. A crappy demo or meaningless UML will hurt you more than help you.
-me
I'm going to hijack this thread a little bit (sorry).
For a few years, I've been considering chaging careers and going into game AI. I would do very well in the type of interview that Palidine described, except for the demos/experience part; but I can probably put together something impressive if I work at it.
The main reason why I haven't tried is that I am currently grossly overpaid working in the financial industry. At some point I may decide to take the cut in salary, but I don't know how low I'd have to go. So the question is, what are reasonable salary expectations for a very strong candidate? And does the initial salary improve significantly in the job if performance is good?
For a few years, I've been considering chaging careers and going into game AI. I would do very well in the type of interview that Palidine described, except for the demos/experience part; but I can probably put together something impressive if I work at it.
The main reason why I haven't tried is that I am currently grossly overpaid working in the financial industry. At some point I may decide to take the cut in salary, but I don't know how low I'd have to go. So the question is, what are reasonable salary expectations for a very strong candidate? And does the initial salary improve significantly in the job if performance is good?
Quote: Original post by alvaro
So the question is, what are reasonable salary expectations for a very strong candidate? And does the initial salary improve significantly in the job if performance is good?
OMG hijak!
There are a couple surveys listed on the site about game industry salaries. It's entirely location specific (because of massive cost of living differences in the US).
Anywhere from 30k - 70k starting salary depending on region. 70k in SF is more or less the same as 30-40k in Tennessee.
If you have coding experience outside of games your starting salary will likely be a tad higher, but very very very few people push the 100k salary point in game programming.
-me
Quote: Original post by PalidineQuote: Original post by alvaro
So the question is, what are reasonable salary expectations for a very strong candidate? And does the initial salary improve significantly in the job if performance is good?
OMG hijak!
Well, yes, but the same people that know about the main topic are likely to know about my question.
Quote: There are a couple surveys listed on the site about game industry salaries. It's entirely location specific (because of massive cost of living differences in the US).
Anywhere from 30k - 70k starting salary depending on region. 70k in SF is more or less the same as 30-40k in Tennessee.
If you have coding experience outside of games your starting salary will likely be a tad higher, but very very very few people push the 100k salary point in game programming.
-me
That's about what I expected. I guess I can stay in finance for a few more years, and make the move when I have a big enough nest egg.
Thanks. I got the information I wanted, I apologize again for the hijacking and I hope that the rest of the replies are about game AI interviews (which I am interested in as well).
What Paladine said describes pretty much what should be asked for an "real game AI position". The thing is that gameplay positions are often considered as "ai positions" as well... so the pathfinding / flocking part might be irrelevent if the candidate will end up scripting FSM transitions or something. Anyway, if you can do well in what Paladine said, I guess most employers would hire you.
Well, I would say you probably should do research in what the company you're interviewing for produces. A company/studio specializing in racing games will ask something different from an AI programmer than one that specializes in first person shooters.
And the truth is, for the most part, AI people take kind of a back seat in most projects. Don't expect to be doing AI full time, especially when you're in game play. So, at an entry level, always show an ability to diversify into doing other things, like debugging network code, UI hook ups, databases, some graphics, etc. Because they will definitely ask you whether you're willing to do other thing, even though you have a tendency towards AI.
Depending on the length of the interview, you may or may not need demos. If it's a 2 hour long interview, then maybe a demo would be nice. But anything within an hour will fly by in no time before you get to actually show anything.
And the truth is, for the most part, AI people take kind of a back seat in most projects. Don't expect to be doing AI full time, especially when you're in game play. So, at an entry level, always show an ability to diversify into doing other things, like debugging network code, UI hook ups, databases, some graphics, etc. Because they will definitely ask you whether you're willing to do other thing, even though you have a tendency towards AI.
Depending on the length of the interview, you may or may not need demos. If it's a 2 hour long interview, then maybe a demo would be nice. But anything within an hour will fly by in no time before you get to actually show anything.
October 25, 2006 02:05 PM
Thnkx for inputs...
well WeirdoFu can u eloborate in ur point ...
different AI's for different games!
well WeirdoFu can u eloborate in ur point ...
different AI's for different games!
I believe what he's saying is that the amount of AI work required for a project varies a lot. In some games there's not enough work for a fulltime AI programmer so they put one guy on it part time and the rest of the time he works on something else. For that type of game you want to demonstrate an ability to work in other types of development (game systems, graphics, audio, etc).
For other games however there is a huge need for AI programmers. We currently have 3 full-time AI programmer and will probably need a 4th eventually. And even then it will be a miracle if we finish on schedule.
But the key to any intro job is an ability to diversify. They may be looking for someone to plug in wherever they are needed most. It may be most likely that you'll be on AI, but there may be other needs that you'll be asked to meet.
-me
For other games however there is a huge need for AI programmers. We currently have 3 full-time AI programmer and will probably need a 4th eventually. And even then it will be a miracle if we finish on schedule.
But the key to any intro job is an ability to diversify. They may be looking for someone to plug in wherever they are needed most. It may be most likely that you'll be on AI, but there may be other needs that you'll be asked to meet.
-me
Quote: Original post by Palidine
But the key to any intro job is an ability to diversify. They may be looking for someone to plug in wherever they are needed most. It may be most likely that you'll be on AI, but there may be other needs that you'll be asked to meet.
I couldn't agree with this statement more... junior programmers are the filler in teams... the guys/girls that do the grunt work and that you move around to maintain the development schedule (as best you can). While you might start out with a particular role during initial development, as the project progresses, imbalances in production mean that people need to be flexible and able to work outside their assigned role. Having a team of diversified programmers means that when one section of the code base is lagging behind, you can throw one of those people into that team and get things back on track. So part of being a junior programmer is learning these different areas and part is applying these diversified skills. This is true of whether you are making a game or any other commercial application.
As for interviews... the best advice I can give is something Palidine pointed to... don't overstate your abilities at this stage in your career. The people interviewing you will most likely know a lot more about the subject matter than you will. They'll know when you're bullshitting them. Be honest about what you know, but show your enthusiasm to learn and to be a team player. Sell your ability to do what you know efficiently and to a deadline.
Cheers,
Timkin
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement