Congratulations! Those advantages you list are too big to ignore.<p>I think the biggest stumbling block to SOA is that failure states have to be considered up-front, and the responsibility of concerns have to be designed into the system up-front. Degrees don&#x27;t train you how to do this, so engineers stick with what they know will never fail (function calls).<p>We&#x27;ve been experimenting with plugin-based architecture on some work projects, which force us to address separation of concerns (at least) while still keeping things in the same process.