Practically, it doesn't work. We're going to go back to hiring full-time engineers again.
* It takes months for an engineer to be properly ramped up on a new codebase and even longer for business domain expertise. Until then they might actually be negatively productive due to onboarding questions other devs must answer.
* Enforcing any coding standards is difficult so you get a lot of technical debt over time.
edit: Also, a good engineer on a well functioning team will push back on bad or inefficient feature requirements. If you're just getting paid by feature and feel no ownership of the product then you have little incentive to do that.
People tend to produce better work, on a faster timeline, when the respect of their teammates is on the line.
Also, with any given team and codebase, team members will tend to carve out unofficial roles that best fit their abilities. This of course increases the net productivity of the team.
The future is gonna be filled with disinterested one time contractors and employers who fraudulently refuse bounty payout.