Here are a bunch of, mostly language agnostic, programming problems for you to work on.
http://programmingpraxis.com/
Other than that I would suggest looking for smallish projects like...
A Twitter client
An instant messenger
A text editor
A todo list
An email program
A voice note recorder and tagger
Any game (2d, 3d, text or really anything), games are great because simple ones can be made by the most inexperienced of programmers and as you get better and better you can just make more and more complicated games. You literally can't be too good to make a game, there is unlimited complexity involved.
On the same note, simulations. You can make simple physics simulations and make them increasingly complex.
Or write your own programming language (it's not as hard as you may think, check out "Lispy in Scheme" on my blog, the first version is written in C and is available on github).