Описание
Центральный университет ищет опытного backend-разработчика на роль лида курса «Бэкенд-разработка». Нам нужен практик, который строил и поддерживал сервисы в продакшене и готов научить студентов делать то же самое: проектировать API как контракт, держать бизнес-правила в домене, не терять данные при конкурентных изменениях, защищать доступ, тестировать и эксплуатировать сервис.
Задачи
•доработка программы курса и детализация тем по неделям
•написание учебных материалов: лонгридов к каждой теме, презентаций к лекциям
•разработка сервиса для демонстраций и сценариев живых демо
•разработка семинарских задач, домашних заданий с автопроверкой и критериями оценки, квизов к лекциям
•подготовка вариантов контрольных работ и формата итогового экзамена
•подготовка методики для ассистентов: эталонные решения, типовые ошибки, критерии проверки
•проведение лекций с живыми демонстрациями
•проведение семинаров или координация семинаристов
•проведение контрольных работ и итогового экзамена
•подбор и онбординг ассистентов
•калибровка проверки, чтобы оценки разных ассистентов были согласованы; разбор спорных случаев и апелляций
•регулярные синки с командой
•обратная связь ассистентам по качеству проверки и ревью
•консультации по материалу и заданиям, в том числе разбор кода и архитектурных решений студентов
•ответы на вопросы в чате курса (вместе с ассистентами) и публикация разъяснений по частым вопросам
•разборы типовых ошибок после домашних заданий и контрольных
•мониторинг успеваемости: отслеживание отстающих студентов, работа с ними вместе с учебным офисом
•сбор обратной связи от студентов и учёт её в следующей итерации курса
•согласование тем и сквозных проектов с лидами смежных курсов (фронтенд, основы промышленной разработки)
•работа с образовательной командой над качеством курса
•актуализация материалов по итогам проведения
Требования
•глубокое понимание архитектуры backend-приложений и принципов разделения ответственности
•экспертное знание проектирования HTTP API, валидации, обработки ошибок и обратной совместимости
•понимание работы PostgreSQL на уровне приложения: транзакции, уровни изоляции, блокировки, миграции, планы запросов
•понимание моделей конкурентности и устройства event loop
•знание механизмов аутентификации и авторизации, типичных уязвимостей API
•понимание асинхронной обработки: очереди, повторы, идемпотентность
•опыт с тестированием, наблюдаемостью и эксплуатацией сервисов
•коммерческая backend-разработка от 3 лет
•продакшен-опыт на Node.js и TypeScript (Fastify, NestJS, Express или аналоги)
•работа с PostgreSQL и Redis в продакшене
•проектирование и документирование API-контрактов (OpenAPI)
•опыт с Docker, CI/CD, логированием, метриками
•умение писать чистый, тестируемый и расширяемый код
•умение объяснять сложное просто и на примерах
•умение давать конструктивную обратную связь по коду: опыт код-ревью, менторства джунов
•готовность организовывать работу небольшой команды (ассистенты, семинаристы) и держать единый стандарт качества
•терпение и внимание к студентам с разным уровнем подготовки
Будет плюсом:
•опыт backend-разработки на втором языке (Go, Java, Python и др.)
•опыт разбора инцидентов и работы с OpenTelemetry
•опыт проведения технических собеседований
•опыт создания учебных материалов: статей, докладов, курсов, внутренней документации и онбординга
•опыт менторства или преподавания
Условия
•До февраля удалённая разработка материалов курса. С февраля очные занятия в кампусе (м. Маяковская / м. Охотный ряд).
•Занятость 15–20 часов в неделю в период проведения курса. Нагрузку на этапе разработки материалов обсуждаем индивидуально.
•Достойное вознаграждение, обсудим на собеседовании.