- no upfront installation/agents on remote/slave machines - ssh should be enough
 - application components should use third-party software, e.g. HDFS, Spark's cluster, deployed separately
 - configuration templating
 - environment requires/asserts, i.e. we need a JVM in a given version before doing deployment
 - deployment process run from Jenkins