Разработчикам ПО в начале работы требуется освоить целый ряд инструментов:
• Хотя бы один язык программирования, а чаще больше.
• Интегрированную среду разработки или текстовый редактор, подходящий программисту (vim, Emacs и т. д.).
• Различные форматы данных (JSON, XML, YAML и т. д.) и языки разметки (в том числе HTML).
• Командную строку и скрипты для взаимодействия с операционной системой.
• Системы управления версиями (Git. Тут без вариантов).
• Средства для непрерывной интеграции и сборки (Jenkins, TeamCity, GoCD и т. д.).
• Средства развертывания и управления сервером (Docker, Kubernetes, Ansible, Chef, Puppet и т. д.).
• Средства коммуникации (электронная почта, Slack, английский язык).
• Инструменты тестирования (фреймворки для модульного тестирования, Cucumber, Selenium и т. д.).