How to avoid switching layers and import an object directly into a specific layer?
When a new object is added to a scene, it is always placed on the active layer. It should be easy enough to modify an import script to work around this.

When creating an object by script, that is when not using bpy.ops, you create the mesh data, create a new object that uses the mesh data and then link the object to the scene. It is possible to set the objects layer visibility after linking it to the scene and before updating the scene so that it should not show briefly in the render. Worst case would mean setting the objects data to None, linking it to the scene, placing it on a layer and then setting the data property back.

For the obj importer, line 1297 is where it links the object to the scene. The following addition of one line (base.layers=) seems to work with importing new objects into layer twenty, I haven't tested during rendering or with multiprocessing to check if it might show.

# Create new obj
for obj in new_objects:
    base = scene.objects.link(obj)
    base.layers = [x in [19] for x in range(20)]
    base.select = True


Note that Collada and Alembic support is compiled into blender so would need some more work and a custom build of blender to make this adjustment.