I used to oversleep a bit, because I set my alarm about :30 - 1:00 hour earlier than I need to get up. My alarm clock is across the room from me, so I got used to tuning out the "BZZZ BZZZ BZZZ BZZZ BZZZ" sound.
Now, I set an alarm at
http://www.onlineclock.net/ and turn up my speakers loud.
This thing jolts me out of bed immediately and I run to go turn it off and set it for the next hour, when I can actually get up.
I set my alarm early so that I can actually enjoy falling back to sleep / laying in bed for another hour instead of waking up with a "shit, time to get up" feeling.
Jam it back in, in the dark.