I've seen a couple articles on HN regarding aptitude tests for finding qualified developers during a interview processes. Being that I'm fairly new to the development world, I've found these tests to be an interesting way to challenge myself and gauge my own aptitude. I found a couple of these challenges through a recent article on HN http://www.codinghorror.com/blog/2007/02/why-cant-programmers-program.html.<p>Does anyone know where I can find more random challenges? Someone pointed me to codegolf.com but the site seems to be down.
I'll recommend two books: <i>Programming Interviews Exposed: Secrets to Landing Your Next Job, 2nd Edition</i> and <i>Puzzles for Programmers and Pros</i>. Especially the latter is a great resource to sharpen your skills on puzzle type questions. Also, there's the classic <i>How Would You Move Mt. Fuji</i> about puzzle questions.
Try <a href="http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8" rel="nofollow">http://uva.onlinejudge.org/index.php?option=com_onlinejudge&...</a> (UVa Online Problem Set Judge). That used to be the ACM Valladolid Online Judge, but at some point they changed servers.<p>This one's more intended for high school folks (hadn't touched them since then), but try out USACO's training website. Anybody can sign up and do problems. <a href="http://train.usaco.org/usacogate" rel="nofollow">http://train.usaco.org/usacogate</a><p>Both of these sites test your algorithmic knowledge, too, but that's always nice to brush up on anyway.
TopCoder, where you can challenge others and win prizes: <a href="http://www.topcoder.com/" rel="nofollow">http://www.topcoder.com/</a><p>SPOJ: <a href="http://www.spoj.pl/" rel="nofollow">http://www.spoj.pl/</a>
It may not be exactly what you desire, but Project Euler (<a href="http://projecteuler.net/" rel="nofollow">http://projecteuler.net/</a>) presents a series of mathematical problems of variable difficulty. Working out solutions in code is a great problem-solving exercise, in my opinion.
<a href="http://programmerpuzzlers.com/" rel="nofollow">http://programmerpuzzlers.com/</a><p>Contains logic and (eventually) pseudo-coding puzzles, but all fitting into the realm of brain benders and technical interview questions.