We are a non-hierarchical company, but we do have a structure in which people take up specific roles. What does it mean in practice? Our ideal development team consists of:
We work in self-organized teams. PM is not the boss, but handles stakeholders, budget and risk management. Every nomtek employee is responsible for overall successful delivery of the product.
There are cases when we don't cover all roles listed above. Either, because the client has its own resources or the project doesn't require them. But there is always one designated person called the Delivery Leader responsible for the overall smooth delivery of the project.