Get job offer first, then
Here are what I did:
1. Had a very good interview with the hiring manager. During the interview, I avoided to dicuss anything about salary. But, the manager insisted to know what I expected. In the end I gave up, and gave him what my current salary - BIG MISTAKES.
2. After one week, HR (human resource dept.) gave me an offer letter, with salary, and all other benefits (401K, annual raise, vacation, etc.). I got about 8% increase in salary.
3. Waited for a couple of days, and told HR I need more by considering vacation reduction, and others. Also had an interview with another company. After two days, HR told me if I can accept a new offer for a total 14% increase. I got this offer by signing the offer letter. I did like this new position better than my old job.
My experience is that you get the offer first, and then negotiate the salary after having an offer. If they need you, most companies should be able to have a few thousand dollar flexibility.
You may search Google about this issue, and should be able to find thousands of links.
