Дмитрий Каневский разрабатывает продукты, которые помогают людям общаться с близкими, коллегами, мобильными устройствами и целым миром.
Дарья, динамическое программирование означает рекуррентный спуск к подзадачам, а не что-то вроде адаптивного дизайна)
Подскажите, что именно нужно поправить в тексте?)