Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length

 
Advanced search

1362001 Posts in 63514 Topics- by 55393 Members - Latest Member: sherylbutler

June 25, 2019, 12:52:27 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityTownhallForum IssuesArchived subforums (read only)CreativeSimple games for testing job applicants
Pages: [1]
Print
Author Topic: Simple games for testing job applicants  (Read 5122 times)
Saint
Level 3
***



View Profile WWW
« on: June 18, 2008, 12:44:46 PM »

... Yeah, so I have been given the incredibly fun assignment to help create a test projects for programmer jobs, the test is supposed to be a simple game the applicants have to produce and then send in their code. I have a list of possible choices already, but I figured the vast combined experiences of the TIGgers could surely help extend the list (and who knows, maybe we can build a list of basic concepts for those days when you just want to make something simple, or revolutionize an existing concept rather than make something completely unique).

Since this is a generic test, the games have to be fairly simple and not involve any crazy stuff (basically graphics + input should be enough), they should also be extendable so that the concept would actually benefit from good programming practices. But any ideas will do, really =)

So this is what I've come up with so far;
Tetris (columns, puyo-puyo or any kind of falling blocks puzzle)
Pool (Essentially all games where you try and indirectly manipulate an object to a position)
Breakout (Pong is a little too simple)
Snake (or "nibbles")
Lander (or "Lunar Lander")
Racing (top-down, arcade style racing where you avoid cars, that is)
Asteroids (Or any kind of top-down, free moving shooter where enemies are more or less persistent)
Space Invaders (Or any kind of shooter where your movement is limited and you fight waves of enemies)
Platformer (your average, really simple platformer with a jumping main character and possibly scrolling and/or enemies)
Adventure game (point-and-click style with inventory and progression)
Hack-n-slash (sort of like the original Zelda, I guess, but without the items)
Pac-man (or generally collecting stuff while being chased)
RTS (making agents navigate through a tiled map)
« Last Edit: June 18, 2008, 05:13:01 PM by Saint » Logged
Terry
TIGSource Editor
Level 10
******



View Profile WWW
« Reply #1 on: June 18, 2008, 12:54:47 PM »

Anything with pathfinding would probably be a good test - making a little rts unit move around a tiled map, for example.
Logged

Eeriepanda
Level 0
**


View Profile
« Reply #2 on: June 18, 2008, 04:31:20 PM »

Asteroids with at least one alien.

This handles...

  • AI (for alien)
  • Collision Detection
  • Input
  • Geometry/Trig for figuring out where the ship should move
Logged
Melly
Level 10
*****


This is how being from "da hood" is like, right?


View Profile
« Reply #3 on: June 18, 2008, 08:22:39 PM »

Since you say really simple, pathfinding would probably be too complex for it.
Logged

Feel free to disregard the above.
Games: Minus / Action Escape Kitty
Saint
Level 3
***



View Profile WWW
« Reply #4 on: June 18, 2008, 11:36:22 PM »

Since you say really simple, pathfinding would probably be too complex for it.

Yes, it probably would if we expected applicants to write it themselves. On the other hand, it's quite possible that since we'll write the core functionality ourselves, we could include a pathfinding module and include it in the test just to see how well people work with different interfaces.

Those are some good ideas btw, since they lend themselves well to scalability and thus gives people an opportunity to show what they're good at. Thanks!
Logged
Crackerblocks
Level 1
*



View Profile WWW
« Reply #5 on: June 19, 2008, 07:51:19 AM »

Quote
since we'll write the core functionality ourselves, we could include a pathfinding module and include it in the test just to see how well people work with different interfaces.

Be sure to put a couple devious bugs in it. Now that would be a good test.

They'll either:
not realize it, and give you a buggy game.
realize it, and not use your code.
realize it, and fix your bugs. (instant hire)
Logged
Kianis
Level 0
***


self-portrait


View Profile WWW
« Reply #6 on: June 22, 2008, 02:03:40 PM »

Saint, are you saying that if one would make an
asteroids clone in c++ and send it in the particular
company you represent would hire one?
Logged

ColossusEntertainment
Level 1
*

Royal Leamington Spa, UK


View Profile
« Reply #7 on: June 22, 2008, 02:21:03 PM »

Have applicants take a similar test on-site, without an internet connection. Or you might end up with people who are unable to get the job done if your internet connection goes down...  Roll Eyes
Logged
Saint
Level 3
***



View Profile WWW
« Reply #8 on: June 22, 2008, 04:44:07 PM »

Saint, are you saying that if one would make an
asteroids clone in c++ and send it in the particular
company you represent would hire one?

Have applicants take a similar test on-site, without an internet connection. Or you might end up with people who are unable to get the job done if your internet connection goes down...  Roll Eyes

It's actually just a form of application. The people looking over submissions feel that the work examples they get are too random and often enough people send in projects where they have been one of many programmers - not only does this usually make the code-base large and time-consuming to browse through, if it is of uneven quality it is impossible to tell if the applicant wrote the "bad" code or the good one. So this is essentially just a test to determine which ones we call to an interview - it's not about being able to do an asteroids clone, it's about showing that you can write good code.

And it's by no means final, it's just a complement to the CV if you don't have any previous games industry experience - the programmer version of an artist's portfolio. If people cheat their way through it, their references or the interview will likely give them away and if they by some means should be able to pass those as well there's a 6-month trial employment that can be terminated (by either part) at a week's notice without giving any reason.
Logged
Kianis
Level 0
***


self-portrait


View Profile WWW
« Reply #9 on: June 23, 2008, 11:51:10 AM »

Ok, thanks for clearing that up. I was just a bit surprised
since I know that your company constantly works with the latest
technology and I couldn't see how employing someone who made
something as simple as an asteroid clone would fit with that.
I suppose not everybody's an engine programmer though.. and of
course you'd be able to tell a lot by going through a person's
code.

Wasn't saying I had the source for an asteroids game and
wanted to cheat my way in or anything... Wink
Logged

PoV
Level 5
*****


Click on the eye and something might happen..maybe


View Profile WWW
« Reply #10 on: June 23, 2008, 05:30:38 PM »

We gave applicants Space Invaders.  Since they were being hired for J2ME projects, we had them do them with Sun's J2ME kit.  It's interesting how revealing it as a game was.  Some got back to us within a day.  Some neglected the bonus ship that flies by the top.  Some included sound effects, title screen, particle effects, and high scores.

Kinda made hiring easy.  Smiley
Logged

Mike Kasprzak | Sykhronics Entertainment - Smiles (HD), PuffBOMB, towlr, Ludum Dare - Blog
cmspice
Level 1
*


View Profile
« Reply #11 on: June 24, 2008, 11:18:39 AM »

how about obscure art game :D.

Make sexy hiking and you get insta senior developer status!
Logged
Saint
Level 3
***



View Profile WWW
« Reply #12 on: June 24, 2008, 11:57:58 AM »

how about obscure art game :D.

Make sexy hiking and you get insta senior developer status!

While I'm behind this idea all the way, It might be a little hard to sell it to management =/
Logged
cmspice
Level 1
*


View Profile
« Reply #13 on: June 24, 2008, 01:58:15 PM »

how about obscure art game :D.

Make sexy hiking and you get insta senior developer status!

While I'm behind this idea all the way, It might be a little hard to sell it to management =/

Well, on a slightly more serious note, what position exactly is the application for?

While I understand basic guidelines are important, most the examples you listed there almost beg for a generic clone game. Wouldn't be all that bad to test for programming prowess but not that good for anything else.

I think, for creativity, maybe something a little it more open ended? Say, "create an original puzzle game." Or, give them a list of things that are just "suggestions" as to what they can make but encourage them to make their own game if they have their own ideas.
Logged
Ciardhubh
Level 1
*


View Profile
« Reply #14 on: June 24, 2008, 02:04:14 PM »

Since you say really simple, pathfinding would probably be too complex for it.

Yes, it probably would if we expected applicants to write it themselves. ...

What do you consider a programmer? Do you want people with some sort of education or just some "I can write hello world in C" kids right off school? For the latter this may be challenging but the former should really be able to do that. If somebody cannot implement a simple Dijkstra or A* search algorithm, he's no programmer Grin

I'd mention a few abstract key aspects like maintainability, changeability, application of design patterns, etc. and see how they realise them. Also consider not choosing something too generic and well-known, in order to reduce the risk of them copying somebody else's code Wink
Logged
Saint
Level 3
***



View Profile WWW
« Reply #15 on: June 24, 2008, 02:14:36 PM »

Well, on a slightly more serious note, what position exactly is the application for?

While I understand basic guidelines are important, most the examples you listed there almost beg for a generic clone game. Wouldn't be all that bad to test for programming prowess but not that good for anything else.

Oh, but it is only a test for programming prowess, and it's supposed to be for all game programmers. The point is that people who are new to the industry have very diverse ways to show their skills, and as we get a lot of applications from these people it gets difficult to determine which ones are good enough to be called to an interview, that is what this test is for. By having them make a small, generic game we can compare entries easily, we can force the applicant to solve a set of problems and query them about their solutions and we can get some idea of how much they think ahead. We had a meeting about it today and discussed possibilities of extending the test with specialized task should we need to hire a programmer with special skills.

So no, while creativity and innovation are certainly very important qualities in any game developer, this test is more or less only to establish programming skills; seeing how people clear tasks given to them rather than how good they are at creating their own.
Logged
Saint
Level 3
***



View Profile WWW
« Reply #16 on: June 24, 2008, 02:24:53 PM »

What do you consider a programmer? Do you want people with some sort of education or just some "I can write hello world in C" kids right off school? For the latter this may be challenging but the former should really be able to do that. If somebody cannot implement a simple Dijkstra or A* search algorithm, he's no programmer Grin

A very valid point, but it's not so much that we don't expect people to know these things, rather we don't want to include things in the test that we're not going to be looking at anyway - seeing as we want as many as possible to apply they shouldn't have to do any unnecessary work in order to complete the task.

We will provide systems for rendering and input as well as assets, for the same reasons. Now, if people want to go the extra mile and do it themselves then by all means, but seeing as low-level rendering is done by the engine programmers it's not likely to be of importance.

I'd mention a few abstract key aspects like maintainability, changeability, application of design patterns, etc. and see how they realise them. Also consider not choosing something too generic and well-known, in order to reduce the risk of them copying somebody else's code Wink

Yeah, maybe pointing out what the applicants should think about instead of just dropping the SDK in their lap is a good idea. I'll be sure to keep it in mind, thanks!

As for not choosing something too generic, we talked about that and while it certainly is something we're trying to avoid it's just a test to see who gets an interview. Any cheaters are likely to get caught in the interview or when their references are checked, and the worst case scenario is that they'll have to leave during their trial employment.
Logged
Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic