One of the things I always ask about at the end of an interview is what the next step in the process is and what the time frame for that step is. If you feel that things are moving slowly you can send an email to the recruiter. Thank them for their time during the interview, say you're still excited about the position and then ask.
I've interviewed at Google for a software position in the past. Their process typically takes a while but they have a lot of flexibility. Shortly after I started interviewing I received another offer. I told my recruiter and she was able to fast track the process. I think I went from the initial phone interview with a recruiter to on site in about a week.