My main issue is you can bet that for a long software load the tech is working on another car while yours is doing its own thing, and that work isn't likely to be free either. There is almost guaranteed to be some double dipping going on.
Having worked at a dealer, you usually don't go onto another job. Being a contractor vs being a mechanic is different too.