We have a large application suite in ember that runs along the lines of what you describe above (autonomous teams, different delivery schedules and tools).
At first the different applications were written in different technologies (ember, knockout, angular), and we used an iframe/postMessage strategy. Essentially the application shell was an ember app and the iframed apps would send messages to a service in the ember parent when a route change was required. That worked ok for a while, but we desired a single technology solution and moved to Engines.
We also want to start looking into a more efficient redeploy method for engines, but its not a big problem for us because we have the app in a continuous delivery pipeline. With lazy engines it seems more of a dynamic update scheme could be possible, since engines are compiled into their own js and css, but I can’t say I’ve looked into it enough yet to tell you for sure. I think there would be some complexities around validating shared dependencies though.
I’ve given a couple of talks on our experiences setting up app platforms
meetup, with more on our iframing solution: https://vimeo.com/174421457
emberconf, with more on our engine setup: https://youtu.be/LqQi6e_Rlnw