In this context, lock-in is a function of the size of the AWS user&#x27;s engineering team, and I don&#x27;t think the NYT Author thoroughly understands this aspect of the problem.  It wouldn&#x27;t be infeasible to, say, move from S3 to OpenStack Swift, but that project is much more feasible for either a large team or a small team with very little data.  Similarly, one could use say RabbitMQ instead of AWS SQS, but that takes a bit of effort.  The availability of Docker images (and, eventually, k8s- or Swarm-orchestrated cloud apps) helps here too.  While AWS might have proprietary APIs, the semantics of those APIs (e.g. &#x27;enqueue this blob&#x27;) don&#x27;t entail very much proprietary magic.<p>Instagram&#x27;s post about moving off AWS is enlightening here: <a href="http:&#x2F;&#x2F;instagram-engineering.tumblr.com&#x2F;post&#x2F;89992572022&#x2F;migrating-aws-fb" rel="nofollow">http:&#x2F;&#x2F;instagram-engineering.tumblr.com&#x2F;post&#x2F;89992572022&#x2F;mig...</a><p>The problem isn&#x27;t as bad as, say, writing your app in Objective-C or CUDA only to later find you don&#x27;t want to ship to iOS or NVIDIA cards.