Проектирование абстрактной (конфигурируемой) архитектуры приложения на Python

На материале одного из открытых проектов нашей компании расскажу, как абстрагироваться от конкретных параметров задачи и окружения, чтобы создать универсальный инструмент. Покажу конкретные примеры и поделюсь мыслями.