The chance that they won't deliver factors into the initial expectation and is reflected in the hiring and salary decision. You can evaluate this chance both globally and for an individual by considering their interview, past experience, recommendations. Presumably if a developer is routinely not doing their work, the employer will revise their expectation downward, and ultimately stop employing that developer if they are a net negative. I see no problem here beyond the inherent uncertainty that comes with working in a complex world where your knowledge is incomplete.
(edit to add: well, no problem except capitalism, but that's a story for another time)
(edit to add: well, no problem except capitalism, but that's a story for another time)