Yes that would be a good implementation, Plus i think it can be further optimized if the mongoose layer does population intelligently so like if i get 1000 documents in total that need to be populated. If 300 out of those 1000 have the same DBRef, meaning the same _id for population, mongoose should just use the already populated doc for populating those docs. So like a mini cache during the time of population.
I think optimizing population method in mongoose is a must as it seems to be a core feature.
Aaron Heckmann, what do you think ?