Hierarchy isn't always bad, nor are managers. I mean, the army (special case perhaps) probably wouldn't function without it.
Perhaps in companies that can experiment in this manner, a better approach is to try and organically grow models that fit that specific company. As another commenter mentioned, you could start with giving developers x% time to do whatever they want, and scale up from that. Then regularly review any metrics that matter to you (the boss), and adjust.
The way I see it, humans in any context need structure of some kind. Why not focus on having people that are good at feeling the needs within the company, and grow structures from there. Maybe some parts of the company actually need hierarchy, and maybe others don't.