Below is a short list of some of the most popular software development tools we use. Individual projects are likely to use other tools as well.

Deployment

  • Docker – platform for building distributed applications.
  • Kubernetes – production-grade container orchestration
  • Helm – deployment for Kubernetes
  • Octopus Deploy – deployment with a Microsoft Windows slant
  • Puppet – manages large scale deployments.
  • Ansible – automates deployment across multiple hosts.
  • Juju – operate software at scale in any cloud
  • Chef – large scale IT automation.
  • Salt – deployment orchestration.
  • Vagrant – for setting up environments reproducibly.

Build Tools and Servers

Revision Control

  • Git – an open source distributed system pioneered by the Linux kernel project.
  • Subversion/SVN – an open source centralized system.
  • Visual Studio Team Services – Microsoft’s suite of development tools.
  • Mercurial/hg – an open source distributed system.
  • Bazaar/bzr – an open source distributed system supported by Canonical Inc.
  • CVS – an open source centralised system, of primarily historical importance.
  • Source Safe – Microsoft’s centralised system, still in use for smaller projects.