The point about the salary is valid - if we are looking for someone outstanding we should be prepared to spend outstanding money.
I would contest the notion that a person who's been developing software for three years is in the middle of their career, though - even leaving the semantics aside, I see no way that's not a junior profile.