Должностная инструкция: Младший разработчик категории I#

1. Общие положения#

Должность: Младший разработчик категории I Грейд: 3 (Junior II) Подчиненность: Руководитель отдела разработки / Тимлид команды

2. Квалификационные требования#

Источник истины: Полная матрица компетенций с маркерами критичности ([Критичный], [Nice-to-have]) находится в competency-developers.md. Данный раздел содержит упрощённый список требований для должностной инструкции.

Образование: Высшее (IT-направления)

Опыт работы: Коммерческая разработка на C# от 1-1.5 лет

Технические навыки:

  • Уверенное владение C# (async/await, Task, generics, LINQ)
  • Знание алгоритмов средней сложности (деревья, графы, динамическое программирование)
  • Асинхронное программирование (Task, async/await, ConfigureAwait)
  • Понимание performance (O-нотация, базовая оптимизация)
  • Понимание основ работы с nanoCAD API
  • Базовое понимание инженерных сетей (1-2 раздела)
  • Знание основных паттернов проектирования (SOLID, GoF)
  • Написание качественных unit-тестов с хорошим покрытием

3. Должностные обязанности#

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

3.2. Проектирование программных модулей с применением принципов объектно-ориентированного проектирования и архитектурных паттернов, выбор оптимальных алгоритмов и структур данных.

3.3. Обеспечение качества программного кода: написание автоматизированных тестов с покрытием основных сценариев и граничных случаев, рефакторинг с улучшением архитектуры.

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

3.5. Выполнение иных поручений непосредственного руководителя в рамках своей компетенции.

3.5. Типовые задачи#

  • Реализация алгоритмов (5-10 дней)
    • Пример: Алгоритм трассировки трубопроводов с простыми ограничениями
  • Интеграция с nanoCAD (3-7 дней)
    • Пример: Реализация синхронизации данных между моделью и чертежом
  • Разработка фич (1-2 недели)
    • Пример: Панель свойств объектов с редактированием
  • Исправление сложных багов (1-4 дня)
    • Пример: Исправление проблем с асинхронной загрузкой данных

3.6. Уровень самостоятельности#

  • Самостоятельно решает простые и средние задачи
  • Обращается за помощью при новых сложных задачах
  • Задачи до 2 недель
  • Предлагает свои решения

4. Ответственность#

Сотрудник несет ответственность за:

  • Качество кода в соответствии со стандартами
  • Своевременное выполнение задач
  • Покрытие кода тестами (60%+)
  • Применение SOLID и паттернов
  • Ownership за свои задачи в рамках фичи

5. Критерии оценки#

  • Технические навыки: Уверенное владение C#, async/await, алгоритмы средней сложности, SOLID
  • Автономность: Самостоятельность в простых и средних задачах, предложение решений
  • Влияние: Помощь младшим, участие в обсуждениях, code review
  • Бизнес-impact: Вклад в реализацию фич, понимание потребностей пользователей

Оценка: Руководителем раз в 3-6 месяцев.

6. Карьерный рост#

Следующий шаг: Разработчик категории III (грейд 4, Middle I) через 6-12 месяцев

Требования:

  • Глубокое знание C#, .NET Framework/Core
  • Многопоточность (Thread, ThreadPool, lock, Monitor)
  • Работа с nanoCAD API, понимание архитектуры
  • Хорошее понимание инженерных сетей (1-2 раздела глубоко)
  • Проактивность и инициатива
  • Менторинг младших

Версия: 1.0 Дата: 2025-01-24