As others have pointed out, this is "the norm", just like group projects in school, there must be at least someone who cares enough and will go extra length. In software projects, they're the ones who make more effort to standardize stuff, refactor, code cleanup, etc. If everyone just do "the basic minimum", projects tend to fail or the quality suffers.
It's not ideal. The challenge is increasing the number of "heroes" (removing the bus factor), and preventing the heroes from burning out or falling back to indifference like the rest.
Note: I'm not saying the rest are lazy. In repetitive/predictable work, that's fine, but when there are lots of unknowns (like most software projects), you need to go the extra mile sometimes.
It's not ideal. The challenge is increasing the number of "heroes" (removing the bus factor), and preventing the heroes from burning out or falling back to indifference like the rest.
Note: I'm not saying the rest are lazy. In repetitive/predictable work, that's fine, but when there are lots of unknowns (like most software projects), you need to go the extra mile sometimes.