Como dice la respuesta seleccionada, puede usar findAndModify para generar ID secuenciales.
Pero estoy totalmente en desacuerdo con la opinión de que no deberías hacer eso. Todo depende de las necesidades de tu negocio. Tener una identificación de 12 bytes puede consumir muchos recursos y causar problemas de escalabilidad significativos en el futuro.
Tengo una respuesta detallada aquí .