Что даст этот курс
Освоите язык, который сочетает в себе высокую производительность с гарантиями безопасности и надёжности. Rust помогает избегать утечек памяти, гонок данных и непредсказуемых сбоев ещё на этапе компиляции. Именно поэтому его выбирают для системных решений, веб‑сервисов и WebAssembly.

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

Rust
Cargo
Clippy
Unsafe Rust
FFI
C-style ABI
Tokio
async/await
HTTP API
Axum
gRPC
serde
WebAssembly
Miri
Valgrind
Flamegraph
Perf
GDB/LLDB
Трейты
Дженерики
Blockchain
Solana
Программа курса
Рассчитана на 4 месяца, прохождению курса нужно уделять 10–15 часов в неделю
~1 час
Бесплатно
Rust: знакомство с курсом
Вводный модуль — бесплатно, чтобы вы познакомились с платформой и определились, подходит ли вам курс
  • Программа
  • Навыки
  • Нагрузка
Как устроен курс
Узнаете больше о том, какие навыки вы получите
Нагрузка
Поймёте, сколько времени будет занимать прохождение курса
0
Основы Rust
Это дополнительный модуль на курсе «Rust для действующих разработчиков: погружение в блокчейн», который можно пройти по желанию, и обязательный на курсе ‭«Rust для действующих разработчиков: переход с Python, С++ или C»
  • Rust
  • Библиотеки
  • Cargo
  • Типы данных
  • Управление данными
  • Память
  • Умные указатели
  • Мутабельность
Утилиты Cargo, пакеты, крейты и модули
Научитесь создавать Rust-библиотеки и приложения, а также применять к ним инструменты Cargo: build, run, clippy/check, fmt. Выберите и настроите среду разработки.
Основы синтаксиса: скалярные составные и пользовательские типы данных
Познакомитесь с функциями, условиями и циклами. Научитесь применять встроенные и пользовательские типы данных для описания объектов. Разберёте подход языка к мутабельности.
Стек и куча: перемещение, копирование и клонирование
Разберётесь с разными способами размещения данных в памяти. Научитесь управлять данными: перемещать и дублировать их.
Форматирование строк и обработка ошибок
Познакомитесь с трейтами и макросами, которые позволяют формировать строковую информацию из объектов. Изучите подход Rust к обработке ошибок.
Умные указатели и коллекции
Научитесь использовать умные указатели и коллекции стандартной библиотеки, чтобы хранить данные, находить их и распределять к ним доступ.
Выполните набор мини‑заданий на отработку синтаксиса и концепций Rust
1
4 практические работы・3 недели
Основные фичи Rust
  • Cargo
  • Clippy
  • Трейты
  • Дженерики
  • Владение
  • Заимствование
  • Модули
  • Крейты
  • Тесты
  • ADT
  • Деструкторы
  • Pattern matching
Проект, типы данных и элементы std
Изучите организацию кода через крейты и модули, сможете работать со стандартными коллекциями и писать модульные тесты
Владение и заимствование
Отработаете ключевые концепции владения и заимствования, научитесь работать со строками и слайсами, а также реализуете трейт Drop и тесты для проверки логики
Алгебраические типы данных и матчинг паттернов
Освоите продвинутые возможности Rust: pattern matching, явные лайфтаймы и операции со слайсами
Дженерики и трейты
Освоите статический полиморфизм через дженерики и трейты, научитесь работать с ассоциированными типами и константами, а также создавать макросы для кодогенерации
Создадите банковскую систему с переводами, внесением и выводом средств. Также подготовите тестовую среду, имитирующую поведение пользователей
2
4 практические работы・ 4 недели
Сеть и многопоточность
  • Многопоточность
  • Синхронизация
  • Mutex
  • RwLock
  • Atomic
  • Memory model
  • TCP
  • UDP
  • Трейты
  • Object safety rules
Безопасная многопоточность
Разберётесь с основными проблемами многопоточного кода и решениями этих проблем, которые предлагает Rust
Многопоточный TCP‑сервер
Разработаете библиотеку управления банковскими ячейками и TCP‑имитатор с многопоточной обработкой и синхронизацией данных
Многопоточный приём данных по UDP, зависимости и фичи
Научитесь создавать сетевые сервисы на UDP, погрузитесь в многопоточную обработку данных с каналами, работу с Сargo‑фичами
Трейт-объекты, object safety и Fn‑трейты
Разберётесь в проектировании систем на трейт‑объектах, применении функторов и интеграционном тестировании сложных компонентов
Реализуете систему безопасности банка с удалённым контролем состояния помещений и управлением банковскими ячейками
3
4 практические работы・4 недели
Асинхронные веб-приложения и CLI-инструменты на Rust
  • HTTP
  • gRPC
  • async
  • await
  • Future
  • Tokio
  • actix-web
  • axum
  • Dioxus
  • CLI
  • clap
  • WASM
  • WebAssembly
HTTP API
Реализуете HTTP API. Познакомитесь с популярным бэкенд‑фреймворком. Научитесь писать код, используя синтаксис async/await, а также выполнять HTTP‑запросы.
Асинхронность
Разберётесь с внутренним устройством асинхронности и действиями компилятора при сборке async/await‑кода.
gRPC API
Освоите создание gRPC‑сервисов на Rust, CLI‑утилит и работу с асинхронными API.
Фронтенд
Познакомитесь с WebAssebmly и кросс‑компиляцией. Реализуете фронтенд, используя популярный в Rust веб‑фреймворк.
Создадите веб-сервис биржи. Реализуете HTTP API банковской системы и gRPC API для торгов. А также CLI‑утилиту и фронтенд на WebAssembly для взаимодействия с перечисленными API
4
2 практические работы ・2 недели
Механизмы FFI и использование unsafe‑кода в Rust
  • FFI
  • unsafe
  • Биндинги
  • С-style ABI
  • Data layout
  • Линковка
  • Статические и динамические библиотеки
  • Статическая линковка
  • Линковка при запуске
  • Плагины
  • Линковка в процессе выполнения
C-style ABI и линковка библиотек
Разберётесь с динамическим подключением библиотек в соответствии с C‑style ABI. Посмотрите на виды линковки C‑style‑библиотек. Познакомитесь с возможностями Unsafe Rust.
Библиотека с С‑style ABI
Научитесь собирать системные библиотеки из Rust‑кода и писать безопасную реализацию для unsafe API.
Реализуете поддержку торговых ботов на бирже и библиотеку торгового бота
5
2 практические работы・2 недели
Использование инструментов для отладки и оптимизации кода на Rust
  • Профилирование
  • Бенчмарки
  • Инструментирование
  • Санитайзеры
  • Отладка
  • Perf
  • Flamegraph
  • GDB
  • LLDB
  • Valgrind
  • Miri
Оптимизация
Разберётесь с общим подходом к оптимизации кода. Выполните профилирование и выявите проблемные участки кода. Напишете бенчмарк, оптимизируете код и повторно его проверите.
Отладка
Изучите отладку через терминал с помощью GDB и LLDB. Познакомитесь с GUI‑решениями для отладки. Выполните динамический анализ с помощью Miri и Valgrind.
Научитесь находить узкие места в коде с помощью профилирования и оптимизировать производительность, сокращая время выполнения и потребление памяти
6
2 практические работы・2 недели
Проектирование и рефакторинг
  • ООП
  • Функциональное программирование
  • Паттерны
  • SOLID
  • builder
  • new-type
  • decorator
  • singleton
  • visitor
  • Инварианты
  • Контракты
Паттерны, элементы ООП и ФП
Познакомитесь с Rust-паттернами и антипаттернами. Проведёте аналогии с ООП и парадигмами ФП.
Описание контрактов и сохранение инвариантов
Создадите промежуточный слой между unsafe C‑ABI и Rust‑кодом, обеспечивающий безопасное выполнение операций.
Спроектируете фреймворк для создания safe торговых ботов
3 практические работы・3 недели
Blockchain-разработка
Этот дополнительный модуль есть только на курсе «Rust для действующих разработчиков: погружение в блокчейн»
  • Blockchain
  • Криптографические алгоритмы
  • Смарт-контракты
  • Solana
  • Токены
Основы blockchain
Разберётесь с хеш‑функциями, цифровыми подписями и алгоритмами консенсуса.
Solana
Узнаете, как устроены аккаунты, транзакции, программы и токены.
Погружение в разработку
Научитесь писать безопасные и оптимизированные смарт‑контракты на Rust с помощью Anchor.
Взаимодействие с блокчейном
Освоите Solana Rust SDK и создадите оракул для связи блокчейна с реальными данными.
Создадите полноценный DeFi‑проект
С наставником
Воркшопы для разбора сложных тем, сессии Q&A
Получите сертификат о завершении курса
Как устроен курс
YandexGPT помогает осваивать курс
Когда в теории что-то непонятно, нейросеть объяснит это другими словами. А в конце каждого модуля подготовит краткий пересказ о самом главном.

Если у вас есть вопросы про курс, оставьте заявку — мы позвоним

Наш менеджер свяжется с вами и пришлёт промокод

Попробуйте любой формат курса бесплатно — выбрать один-единственный можно позже

  •                                        

Что входит в любой формат

  • Ещё можно платить частями Практикуму столько месяцев, сколько идёт курс. Общая стоимость будет меньше, чем в рассрочку от банка
  • Вернём деньги в любой момент за остаток курса,
    если что-то не понравится. Подробности — в 7 пункте оферты
Этот курс может оплатить
ваш работодатель
Полностью или разделив оплату с вами,
например 50/50 или 75/25
  • Расскажем всё про курс
  • Сообщим стоимость
  • Ответим на ваши вопросы
  • Подготовим договор и счёт
Отвечаем на вопросы
Каким требованиям нужно соответствовать?
Курс рассчитан на разработчиков с опытом, поэтому мы подразумеваем, что вы:
  • Знаете основы Computer Science.
  • Понимаете принципы императивного программирования.
  • Умеете работать с терминалом.
Также важно, чтобы у вас была возможность уделять учёбе 10–15 часов в неделю.
Кто будет помогать мне проходить курс?
Все наставники — практикующие Rust-разработчики со стажем больше 2 лет: сотрудники Яндекса и других крупных компаний. Программу составляют опытные преподаватели и методисты, а ещё действующие специалисты Яндекса, Школы анализа данных и других лидеров технологической и образовательной индустрий.
Что делать, если я не справлюсь с нагрузкой?
Если случилось непредвиденное или понадобилось уделить больше времени закреплению материала, напишите своему куратору. Он поможет перенести дедлайн сдачи проекта или перевестись в более позднюю когорту. На общую стоимость курса это не повлияет.
Если не понравится, я могу вернуть деньги?
Конечно. Если курс ещё не начался, вернём всю сумму. Если уже начался, придётся оплатить прошедшие дни со старта вашей первой когорты — но мы вернём деньги за остаток курса. Более подробно рассказываем об этом в 7 пункте оферты.
Получу ли я какой-то документ после курса?
Да, для этого нужно закончить курс и успешно выполнить итоговый проект. Тогда вы получите сертификат о завершении курса в электронном виде.
Вы поможете сменить или найти работу?
На этом курсе не предусмотрена помощь с трудоустройством, поскольку он для действующих специалистов, у которых уже есть навыки поиска работы.

Но если у вас появится вопрос о карьерном развитии, обратитесь в нашу службу поддержки — постараемся ответить.
Как можно оплатить?
Банковской картой: внести всю сумму сразу или платить ежемесячно.

Ежемесячные платежи работают так: вы вносите первую оплату, и в этот момент привязывается карта. С этой карты автоматически будут списываться следующие платежи каждые 30 календарных дней. Например, оплатили 25 марта — следующий платёж пройдёт 24 апреля. Курс будет стоить меньше, если оплатить его сразу целиком.

Через компанию: юридические лица также могут оплатить курс в Практикуме. Чтобы заказать счёт для оплаты, оставьте заявку на странице для корпоративных клиентов.
На каком языке проходит курс?
Всё будет на русском: теория, практические задания и вебинары, а ещё чаты с куратором, наставником и другими участниками курса.
В какой валюте можно оплатить курс?
Оплатить курс можно в любой валюте, кроме российских рублей.

Чтобы вам было проще сориентироваться, мы указываем примерную стоимость в долларах США, но списание будет в казахстанских тенге, а конвертация — по курсу вашего банка.

Давайте поможем

Напишите, как вас зовут и по какому номеру можно связываться, — в течение 30 минут позвоним и расскажем всё про курсы