1) Look into configuration management. Ansible and Salt Stack are both python-based so everyone should be able to contribute if needed.<p>2)It&#x27;s popular to run your automation through CI tools like Jenkins because it has auditing and logging built in and it&#x27;s easy to set up.<p>3) Don&#x27;t run bower&#x2F;npm install&#x2F;update on production because if npm or github go down then your production site will break because a partial code change has taken place. You should build (and test) on a separate server and then copy the code changes over to production.<p>Really you&#x27;re looking for a Capistrano for python apps. If you&#x27;re going to build a deployment tool on your own it&#x27;s worth looking at their approach. For python, fabric is a fairly standard way to automate code deployments.  The good news is that you&#x27;re on the right path. Having automated deployment procedures will give devs a lot more time back AND remove a whole class of errors<p>I&#x27;ve moved my current company&#x27;s deployment from manual line by line ftp deployment to an automated build and deploy using Jenkins to trigger ansible playbooks. Given the choice, I&#x27;d probably just use capistrano or fabric instead of building from scratch. I&#x27;d estimate that we&#x27;ve saved several months of work per a year in both deployment time and in debugging production issues.