My counterpoint is that it takes time for someone to become productive in a tech job. In my pocket of the industry, I'd say as long as 3-9 months. In fact, in that time the employee is a time sink: you get less done as you're still onboarding the employee.
So if they are going to leave after a year, that's a big disincentive to hire, regardless of how they are at problem solving.
Sure, there's good reasons to leave quickly, but if these stack up, I'm inclined to pass.