If you're applying for a PhD program, I suggest you check out the UC system in California. For computer science and engineering, the PhD programs are totally FREE if you can get in since it's super competitive. We're ranked pretty high up. My supervisor (who is a PHD student at UCSD) told me that by getting accepted into the PhD program she gets: a Masters degree, a monthly stipend, a TA position, and housing. So if you can get in, it'll be a full ride scholarship.