They didn't vote for parties. Elections happened at a local level where people knew candidates personally. Elected local councils ('soviets') would then elect members to higher councils in a 'tiered' system, all the way up to the supreme soviet.
A good-faith criticism of this model might be that it has a high degree of inertia, in that it may respond slowly to sudden changes in popular opinion.