Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Due to my bad performance on past job interviews, I decided to perform daily programming exercises out of my work.

Currently, I am concentrating on algorithms, design patterns, and unit testing in C++ language platform. But I'd like to have balance over more important areas. So if I may, I'd like to know how other programmers organize their programming exercises.

share|improve this question
3  
BTW, if you have a bad performance on job interviews, ask nicely on what went wrong and how to improve. Recruiters are generally willing to give feedback and constructive tips on how to improve. Sometimes it's not your coding skills that may be at fault. –  Spoike Dec 19 '11 at 9:34
    
Of course, I always do that but according to my small sample statistics, surprisingly, employers are reluctant to give feedback. –  Tae-Sung Shin Dec 19 '11 at 16:34

3 Answers 3

up vote 5 down vote accepted

I was there. I was also rejected at lots of interviews, and was guessing whats going wrong. For me one important thing going wrong was I was never good in C++, and I was saying that, yes I am good in C++. And falling on my face in interviews.
Then I came across this Modern C++ design, and I instantly know that I actually dont know anything in C++. I was thinking I know, but it opens a whole new universe. In your case, it may also be this basic part of programming of data structure and algorithms. But you never know.
Here are few programming sites which can help you. Choose suitable.
tocoder.com
codechef.com - [Comes with answer]
spoj.pl

These sites also help me, specifically to know that what I am missing in programming, and how to increase efficiency. For these you need to write the programs which completes some tasks on large inputs in less time. I have personally learn a lot by solving their assignments.

All the best!

share|improve this answer
    
Good point, there's a massive difference between "knowing C++" and "knowing modern and idiomatic C++". I only know the former. :-) –  Carson63000 Dec 20 '11 at 4:47

Are you sure it's just the technical part that goes wrong for you in interviews? If yes, good going - solve problems, learn from approaches taken previously, ask on SO/P@SE wherever relevant. I suggest you check out TopCoder - there are some fantastic tutorials and great problems to solve. Also, if you are particularly keen at learning some subject, say, neural nets for example, try implementing one for solving your own problem - that way, you'll actually be working out ALL your "programming muscles" at once. Though I don't always go for TDD, in your case, it should actually help.

All programmers are learning something or the other constantly, so you're not alone! :)

Project Euler is a great place to hone your problem solving and mathematical skills.

share|improve this answer

You might also, in addition of good reading and exercises, consider contributing to some free software project. This requires both technical and social skills (for good interaction with a development community) and will learn you a big lot.

And once you did contribute to some free software project, it is probably very positive on a CV.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.