Рассматриваются вопросы формирования профессиональной ИКТ-компетентности будущих учителей информатики и IT-специалистов при изучении программирования. Представлена методика организации эффективного обучения программированию на основе положений проблемно-семиотического подхода, современных IT-технологий и системы упражнений в рамках STEM-образования. Приведены результаты эксперимента по внедрению описанной методики на базе кафедры ИИТиМОИ ЮУрГГПУ (г. Челябинск).