C# углубленный

30 апреля 2025

3 месяца

Онлайн

Для кого этот курс:

  • Middle/Senior C# разработчиков, стремящиеся углубить знания по внутренним механизмам C# и .NET, чтобы повысить эффективность кода и перейти от стандартных CRUD-задач к более значимым ролям в команде
  • Разработчиков, которые создают библиотеки и внутренние инструменты, используемые всей командой компании. Их основная цель — писать стабильный и производительный код, который станет основой для других модулей и приложений
  • Разработчиков, отвечающих за ускорение работы высоконагруженных приложений и сервисов, которые ищут способы оптимизировать использование памяти, минимизировать паузы сборки мусора и ускорять выполнение асинхронных операций.

Необходимые знания:

 
  • Опыт работы с C# на уровне Middle и выше — понимание ООП, делегатов, событий и работы с коллекциями
  • Опыт работы с многопоточностью и async/await — понимание основных концепций потоков, задач (Task) и асинхронного программирования
  • Знание базовых принципов работы CLR — понимание, что такое стек и куча, базовые знания о сборщике мусора (GC) и области памяти
  • Навыки работы с IDE — умение настраивать окружение, компилировать и отлаживать приложения.

Что даст вам этот курс

Возможность писать высокопроизводительный, безопасный и легко поддерживаемый код, который используется другими разработчиками внутри компании. Курс поможет разработчикам (и не только) прокачать навыки и улучшить качество своего кода, но и повысить свою ценность в компании. Глубокое понимание внутренних механизмов C# и .NET делает участника курса более востребованным специалистом, способным работать в командах ядра продукта, платформенных командах и отделах по оптимизации производительности. Эти знания критически важны для карьерного роста до уровней Senior, Lead и System Architect.
 

Вы научитесь:

  • Создавать производительные библиотеки и инструменты ядра — их код будет использоваться другими командами, а его производительность и предсказуемость станут конкурентным преимуществом
  • Повышать производительность приложений — оптимизация памяти, улучшение работы GC, уменьшение накладных расходов многопоточности.
  • Обеспечивать предсказуемое поведение приложений — снижение времени отклика, уменьшение зависаний и замедлений, вызванных сборкой мусора или ошибочным использованием асинхронности
  • Стать ценными специалистами внутри компании — знание глубинных механизмов C# и .NET повышает ценность разработчика в команде, помогает в продвижении по карьерной лестнице и прохождении собеседований на Senior/Lead позиции.

Процесс обучения

Обучение проходит онлайн: вебинары, общение с преподавателями и вашей группой в Telegram, сдача домашних работ и получение обратной связи от преподавателя.

Вебинары проводятся 2 раза в неделю по 2 ак. часа и сохраняются в записи в личном кабинете. Вы можете посмотреть их в любое удобное для вас время.

В ходе обучения вы будете выполнять домашние задания. Каждое из них посвящено одному из компонентов вашего выпускного проекта.

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

Оптимальная нагрузка

Возможность совмещать учебу с работой

Портфолио

Индивидуальная разработка итоговой проектной работы 

Перспективы

 

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

Партнеры

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

  • Получите помощь с оформлением резюме, портфолио и сопроводительного письма
  • Разместите свое резюме в базе OTUS и сможете получать приглашения на собеседования от партнеров
  • Пройдете карьерную консультацию с нашим HR-специалистом
  • Получите рекомендации, как искать работу, и советы по прохождению собеседования
Формат обучения

Интерактивные вебинары


2 занятия по 2 ак.часа в неделю. Доступ к записям и материалам остается навсегда

Обратная связь


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

Активное комьюнити


Чат в Telegram для общения преподавателей и студентов

Программа

Память, типы и коллекции

Разбор фундаментальных механизмов хранения данных, различий между типами-значениями и типами-ссылками, организация памяти, выбор эффективных структур данных и использование неизменяемых коллекций.

Тема 1: Value vs Reference Types: Жизненный цикл и хранение

Тема 2: Организация памяти и взаимодействие с ОС

Тема 3: Классы, структуры и неизменяемые коллекции

Тема 4: Коллекции и алгоритмы: List, Dictionary, Equals/GetHashCode

Тема 5: Дополнительные структуры данных: Graph, Tree, Expression Trees

Асинхронность и многопоточность

Изучение внутренних механизмов асинхронного программирования и управления потоками, оптимальное применение задач (Tasks), async/await и cancellation для повышения отзывчивости и эффективности приложений.

Тема 1: Потоки в .NET: фоновый и приоритетный поток, ThreadPool

Тема 2: Задачи (Tasks) vs Потоки (Threads)

Тема 3: async/await под капотом

Тема 4: Управление асинхронностью: CancellationToken, ConfigureAwait

Тема 5: Event-driven программирование и многоадресные делегаты

Параллелизм и производительность

Глубокое понимание параллельных коллекций, Garbage Collector, низкоуровневой работы с памятью, а также принципов JIT и AOT компиляции для достижения максимальной производительности.

Тема 1: Параллельные коллекции

Тема 2: Garbage Collector: алгоритм работы

Тема 3: Работа с памятью: Unsafe, Span<T>, Memory<T>

Тема 4: JIT и AOT: Влияние на производительность

Внутренние механизмы CLR

Анализ внутренних компонент CLR, работа со стандартными режимами исполнения, использование LINQ под капотом, рефлексии, Expression Trees и сериализации для гибкости и расширяемости решений.

Тема 1: Предопределенные типы исполнения и Interop

Тема 2: LINQ под капотом

Тема 3: Рефлексия и Expressions

Тема 4: Сериализация в .NET

Тема 5: Code Contracts и статические анализаторы

Расширения, Interop

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

Тема 1: Interop, DLR и dynamic

Тема 2: Анализ, оптимизация и масштабирование

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

Выпускной проект


Каждый курс завершается финальным проектом, который предстоит защитить перед преподавателями и командой. Вам будет, что обсудить на собеседовании!

Вы можете выбрать одну из предложенных преподавателем тем или реализовать свою идею.

Корпоративное обучение для ваших сотрудников

OTUS помогает развивать высокотехнологичные команды. Почему нам удаётся это делать успешно:
  • Курсы OTUS верифицированы крупными игроками ИТ-рынка и предлагают инструменты и практики, актуальные на данный момент
  • Студенты работают в группах, могут получить консультации не только преподавателей, но и профессионального сообщества
  • OTUS проверяет знания студентов перед стартом обучения и после его завершения
  • Простой и удобный личный кабинет компании, в котором можно видеть статистику по обучению сотрудников
  • Сертификат нашего выпускника за 5 лет стал гарантом качества знаний в обществе
  • OTUS создал в IT более 120 курсов по 7 направлениям, линейка которых расширяется по 40-50 курсов в год

Сертификат о прохождении курса

OTUS осуществляет лицензированную образовательную деятельность.
В конце прохождения специализации вы получите сертификат OTUS и официальный диплом о получении новой специальности

Почему специализация выгоднее, чем отдельные курсы?

  • Стоимость ниже, чем покупка курсов по отдельности
  • Диплом о профессиональной переподготовке
  • Расширенная опция помощи с трудоустройством

Частые вопросы

Что, если в середине курса я не смогу продолжать обучение?
У вас есть право одного бесплатного трансфера в другую группу
Обязательно ли защищать выпускной проект?
Для получения сертификата OTUS необходимо сдать проект. Кроме того, проект необязательно защищать перед аудиторией, а можно сдать в чате с преподавателем.
С какого момента я смогу заниматься трудоустройством?
Получить карьерную консультацию вы сможете уже в начале обучения. Остальные опции: помощь с резюме, добавление резюме в нашу базу специалистов и т.д. будут доступны после окончания обучения.
Я могу вернуть деньги?
Да, вы можете сделать возврат средств пропорционально оставшимся месяцам обучения.