When hiring employees, I ALWAYS tell them the salary. There's no reason to keep it a secret. I'm not looking for someone who "accidentally" qualifies.

If the salary is too low, the applicant will say so.

I never ask what salary they are looking for. That is irrelevant.

I never ask how much they earned in their last job. That is irrelevant, too.

I'm paying what I think is a fair salary for the position. I'm not going to disqualify someone because they've earned more in the past (especially in this economy with lots of well-qualified people out of work).

And I'm not going to try to trick somebody into asking for a salary less than I was prepared to pay just so I can save money. They'll eventually find out they were tricked and won't be very happy about it. And tricking people is wrong, anyway.

So, be honest about the position. Don't hide important information, like salary, benefits, direct reports, strategic plans, or financial reports (for CEOs).

Be honest, and you'll get better employees.