What is a “Senior developer” ?

What does it take to be considered a senior developer? Number of years in the resume/CV or number of projects and clients worked for?
Are you willing to  hire a senior developer? Are you sure your recruiter has any idea what he should be looking for?

I see lots of job postings requesting a “Senior developer” and I see lots of resumes/CVs/Profiles of software developers presenting themselves as “Senior developer”
But it is rather unclear what this should mean. When will you say a software developer is “Senior” ? What are the criteria to distinguish  a senior from a non-senior developer?

Some would say a senior developer is one that has at least a certain amount of years experience of working as a software developer. But is that a valid criteria?
I’d say not even by far. I’ve seen cases (and not few) of software developers working for years in a company, for the same project, using the same architecture, handling almost the same bugs and problems. I don’t call that “experience”, I call that “routine”.
When, for years and years one only keeps himself busy with routine and nothing else, he would become specialised and  a quick solver of that particular routine.
But we’re talking here about software development, we’re talking here about software architecture.
In order to be able to find a good solution for a project’s requirements, it’s necessary that you already met a lot of situations, code styles, infrastructures, and you are able to identify patterns that best apply for the analysed project.

I would say, a senior software developer, not only needs to have years of experience, he/she also needs to have worked on at least a certain number of types of projects and different technologies.