Never require a specific length of professional experience unless absolutely necessary. Instead require experience with certain areas of expertise.
The more specific an item is, the more likely it isn't a requirement and probably belongs in the "Bonus skills" column.
Avoid being that company which lists three different positions (e.g.junior dev, dev, senior dev) with the only delineating factor between them being X to Y years of Rails experience. I see that all the time, and it's a really good indicator that the company probably sucks to work for since they can't even figure out how to hire correctly.
Moreover, good engineers are typically stack-agnostic. You'll miss out on these people if you have narrow requirements.
1. A recruiter: Do I have a CV in my DB with these keywords? 2. A referrer: Will my friend fit this? 3. Candidate: What should I know? What should I do? How much do they pay? Is this the right move for me?
In some forums you just cannot split them up (LinkedIn). In some other, you can (emails). Try splitting them up. It will be a lot easier.
Do: think what they must not do (b/c there would be problems if they did) and write what they should do instead.