Sincronizar en pararelo
Estaba evaluando los eventos de Firebase sobre sincronización y veo que en muchos casos no se llega a terminar la sincronización. A sugerencia de @Nulo lo modifiqué para que se lancen varias cosas en paralelo.
Si con esto la sincronización no mejora la otra opción que se me ocurre es no hacer todo junto en 30s, sino hacer las distintas sincronizaciones en orden y que cada cual tenga sus propios 30s.