TL;DR Get the salary range up front.
I applied online and received a cryptic e-mail from HR (almost thought it was spam) asking me to fill out a form that would eventually allow a background check, which I agreed to. I was then called by a hiring manager (actually the hiring manager's manager) and we scheduled a phone interview. That went well, although no salary range was discussed.
The following week I had a second phone interview with the actual manager; that went well, but still no salary range was asked or discussed.
The following week the two of them got on the phone with me and offered me the job at $30k less than I make now (28% pay cut). I was disappointed, but thought maybe I could negotiate a bit. I did mention that it was lower than I was making, but not by how much. At that point I had received no benefits info, had not been asked for references, met no one face-to-face nor had I seen the client site. It all felt kind of ... weird. Like I was just a warm body and they needed someone in that role. So I asked to visit the client site and they had me contact someone there. (Neither manager works in that location.)
After that meeting at the client site, I was still interested in the job. The next step was a conversation with the manager during which I told her about the 28% pay cut I'd have to take. I purposely did not state a number that I wanted - just asked if they'd consider bringing me in at the higher end of the salary range (which still, no one had told me.) The next day I followed up with an e-mail asking the same thing: "Please consider bringing me in at the higher end of your pay range for this role. " The hiring manager wrote back saying she'd check with her manager, then wrote again later saying "We are too far apart on your requirements and what the position pays" and then wished me luck.
Here's the thing: I never gave them my "requirements". They could have offered me just a few thousand more and possibly got someone very experienced pretty inexpensively. I suspect they did not realize that I was over-qualified, and they wanted someone with less experience than the person who would be managing them. Either way BIG waste of time on everyone's parts.