
Игорь Панасюк
Игорь Панасюк - Senior-разработчик из Яндекса, занимающийся разработкой платёжного движка для коммерческих сервисов компании. Также является лектором по Golang в ИТМО.
Курс The Nature of Concurrency от Игоря Панасюка - это шестинедельная программа по многопоточному программированию в Go, созданная для разработчиков, которые хотят глубже разобраться в механизмах параллелизма. Он подходит тем, у кого есть базовые знания языка, но не хватает опыта работы с конкурентностью и системными примитивами, а также тем, кто готовится к собеседованиям или стремится прокачать понимание работы многопоточности «под капотом».
Программа курса охватывает все уровни - от теоретической мотивации и аппаратных особенностей до прикладных паттернов и современных подходов. Студенты познакомятся с внутренним устройством планировщика Go, кэшами процессора и когерентностью памяти, изучат атомарные операции и ассемблерные детали, разберут ключевые примитивы sync и свойства блокировок. Важное внимание уделяется продвинутым инструментам вроде sync.Map, условных переменных, пула объектов и реализации собственных алгоритмов блокировок. Отдельный блок посвящён каналам в Go и связанным паттернам (WorkerPool, Pipeline, FanIn/FanOut), а также формальной модели памяти, понятию happens-before и linearizability. Завершают курс разбор lock-free структур данных, асинхронного программирования и транзакционных моделей (MVCC, STM).
Формат обучения сочетает лекции, практику и разбор заданий. Два занятия в неделю сопровождаются домашними задачами с автотестами и ручной проверкой, есть групповые Q&A-сессии и финальный проект. Участники получают доступ к лекциям, материалам, чек-листам и чату для обсуждений.
Таким образом, курс позволяет не только освоить практику конкурентного программирования, но и получить фундаментальное понимание того, как работают многопоточные системы на всех уровнях - от железа до высокоуровневых паттернов.
Игорь Панасюк - Senior-разработчик из Яндекса, занимающийся разработкой платёжного движка для коммерческих сервисов компании. Также является лектором по Golang в ИТМО.
Практический курс Concurrency in Go для Golang-разработчиков. Длительность курса - 2 месяца. 10 практико-ориентированных уроков и решение задач, с которыми сталкивались IT-компании.Программа курса охватывает ключевые аспекты конкурентного программирования в Go, включая работу с горутинами, каналами и примитивами синхронизации. Студенты научатся эффективно использовать эти инструменты для создания производительных и масштабируемых приложений.Курс
Раскройте потенциал параллельного программирования в Go с помощью этого практического руководства. Этот курс предназначен для разработчиков среднего и продвинутого уровня, предоставляя им навыки, необходимые для создания эффективных, отзывчивых и масштабируемых программных решений.Погружаясь в мир параллельности Golang, вы изучите основные компоненты конкурентной обработки: горутины, мьютексы, условные переменные, группы ожидания, атомарные опера
Параллелизм - ключевой аспект Go. Узнайте, как использовать основные механизмы параллелизма, как проектировать параллельные потоки, а также как отслеживать и устранять неполадки в параллельных сервисах.