К статье
Практический материал

Разработка и Конфигурация · 12 мин

Программист 1С уровня middle: кто это и что он должен уметь

Кто такой middle-разработчик 1С: требуемые навыки, типовые задачи, отличия от junior и senior, как проверить уровень и вырасти до middle.

Middle-программист 1С — это разработчик, который самостоятельно ведёт задачи от постановки до внедрения: дорабатывает типовые конфигурации, пишет собственные подсистемы, разбирается в чужом коде и отвечает за работоспособность решения в продуктивной базе. В отличие от junior, ему не нужен постоянный контроль наставника, а от senior его отличает то, что он пока не проектирует архитектуру крупных решений и не выбирает технологическую стратегию.

Градация junior — middle — senior пришла в 1С из общей практики ИТ-рынка и не имеет жёсткого стандарта. В разных компаниях границы смещаются: где-то middle — это разработчик с двумя годами опыта на поддержке, где-то — специалист, способный вести проект внедрения целиком. Поэтому корректнее говорить не о сроке работы, а о наборе умений и уровне самостоятельности.

Тема важна обеим сторонам рынка. Соискателю нужно понимать, какие компетенции подтвердить на собеседовании, чтобы претендовать на middle-позицию и соответствующую оплату. Работодателю — как проверить уровень кандидата и не нанять «условного junior» на задачи, где ошибка в коде приведёт к повреждению учётных данных.

Что отличает middle от junior и senior

Junior-разработчик решает локальные задачи по подробному техническому заданию: поправить печатную форму, добавить реквизит в документ, написать простой отчёт. Его код обязательно проходит ревью, а доступ к продуктивной базе, как правило, ограничен. Он знает синтаксис встроенного языка, но плохо ориентируется в типовых механизмах и боится «сломать» конфигурацию.

Middle работает с задачами, сформулированными на языке бизнеса: «нужно автоматизировать расчёт бонусов менеджерам». Он сам уточняет требования, выбирает способ реализации, оценивает влияние доработки на смежные подсистемы и сопровождает изменение до продуктивной среды. Senior, в свою очередь, проектирует архитектуру: решает, что выносить в расширение, а что — в основную конфигурацию, как организовать обмены между базами, как обеспечить производительность при росте объёмов данных.

Сравнение уровней разработчиков 1С

Junior

Работает по детальному ТЗ, требует ревью кода, знает базовый синтаксис и простые объекты метаданных.

Middle

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

Senior

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

Какие технические навыки обязательны для middle

Фундамент — уверенное знание встроенного языка 1С и объектной модели платформы: справочники, документы, регистры сведений и накопления, планы счетов и видов расчёта. Middle понимает, чем регистр накопления отличается от регистра сведений с точки зрения хранения и производительности, когда нужен подчинённый справочник, а когда — табличная часть.

Второй обязательный блок — язык запросов. Middle-разработчик пишет запросы с соединениями, группировками, виртуальными таблицами и понимает, почему запрос в цикле — это проблема. Он умеет пользоваться консолью запросов, анализировать план и видеть типовые причины медленной выборки: отсутствие индекса по полю отбора, соединение по вычисляемому выражению, выборка лишних полей.

Третий блок — система компоновки данных. Отчёты на СКД — основной инструмент аналитики в 1С, и middle должен уметь создавать отчёты без единой строки кода, настраивать варианты, ресурсы, параметры и отборы, а при необходимости — программно формировать результат и дорабатывать схему.

Встроенный языкУверенное владение

Модули объектов, менеджеров, общие модули, директивы компиляции

ЗапросыСоединения, группировки, виртуальные таблицы

Понимание плана запроса и типовых причин медленной работы

СКДОтчёты без кода и с кодом

Схема компоновки, варианты, программное формирование

Типовые механизмыБСП и отраслевые конфигурации

Подписки на события, переопределяемые модули, расширения

Обмен даннымиБазовые интеграции

Планы обмена, правила конвертации, веб-сервисы на базовом уровне

Работа с типовыми конфигурациями и расширениями

Большая часть задач middle связана не с написанием конфигурации с нуля, а с доработкой типовых решений: «Управление торговлей», «ERP», «Зарплата и управление персоналом», «Бухгалтерия предприятия». Здесь ключевой навык — умение вносить изменения так, чтобы конфигурация осталась обновляемой. Это значит: минимум правок в типовых объектах, максимум через расширения, подписки на события и переопределяемые процедуры библиотеки стандартных подсистем.

Middle понимает разницу между полной поддержкой, частичным снятием с поддержки и расширением. Он знает, что прямая правка типового модуля сделает обновление ручным и трудоёмким, поэтому сначала проверяет, нельзя ли решить задачу через расширение. При этом он понимает и ограничения расширений: не все объекты и методы доступны для переопределения, а заимствованные формы чувствительны к обновлениям поставщика.

Отдельный навык — чтение чужого кода. Типовые конфигурации содержат сотни тысяч строк, и умение быстро найти точку входа через отладчик, трассировать вызов и понять логику механизма отличает middle от разработчика, который «ищет по тексту модуля».

Типовые задачи middle-разработчика на практике

Рабочий день middle обычно состоит из задач нескольких классов. Первый класс — доработки по заявкам пользователей: новые отчёты, печатные формы, дополнительные проверки при проведении документов, автоматическое заполнение реквизитов. Здесь важно не только написать код, но и корректно встроиться в существующий процесс, не нарушив права доступа и последовательность документов.

Второй класс — обмены и интеграции: настройка синхронизации между «Управлением торговлей» и «Бухгалтерией», загрузка прайсов и заказов, обмен с сайтом или CRM, простые HTTP- и веб-сервисы. Middle не обязан быть экспертом по интеграционным шинам, но должен уметь отладить типовой обмен, найти причину незагруженного объекта и написать простую выгрузку в XML или JSON.

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

Как middle ведёт задачу полного цикла
  1. 1
    Уточнить требование у постановщика и зафиксировать ожидаемый результат
  2. 2
    Изучить типовой механизм и выбрать способ реализации с минимальным вмешательством в типовой код
  3. 3
    Реализовать доработку на копии базы, покрыв основной и граничные сценарии
  4. 4
    Проверить результат на тестовых данных вместе с постановщиком
  5. 5
    Перенести изменение в продуктив в согласованное окно, при возможности — через расширение
  6. 6
    Проконтролировать работу после переноса и описать изменение для пользователей

Как проверить, что разработчик действительно middle

На собеседовании уровень проверяется не вопросами «знаете ли вы язык запросов», а практическими задачами и разбором опыта. Характерные признаки middle: кандидат объясняет, почему выбрал конкретное решение, называет альтернативы и их цену, помнит случаи, когда его доработка конфликтовала с типовым механизмом, и рассказывает, как это разрешил.

Полезные практические задания: написать запрос с виртуальной таблицей и объяснить его план; найти ошибку в фрагменте кода с запросом в цикле; предложить способ добавить проверку при проведении документа, не правя типовой модуль; объяснить, что произойдёт с обновлением конфигурации при разных вариантах доработки. Разработчик уровня junior обычно даёт правильный, но одномерный ответ, middle — рассуждает о последствиях.

Контрольные точки

Как отличить middle на собеседовании

Подход к доработке типового объекта
Норма

Сначала рассматривает расширение или подписку на событие

Тревожный признак

Сразу предлагает править типовой модуль

Работа с запросами
Норма

Понимает виртуальные таблицы и влияние индексов

Тревожный признак

Пишет запросы в цикле и не видит в этом проблемы

Отношение к тестированию
Норма

Проверяет доработку на копии и граничных сценариях

Тревожный признак

Считает достаточным, что код запустился без ошибок

Работа с ошибками
Норма

Использует отладчик, журнал регистрации, воспроизводит проблему

Тревожный признак

Исправляет методом проб и ошибок без локализации причины

Как вырасти с junior до middle

Переход на уровень middle происходит не по календарю, а через накопление самостоятельно закрытых задач. Практический путь выглядит так: сначала разработчик берёт задачи без детального ТЗ и учится сам уточнять требования, затем — задачи, затрагивающие несколько подсистем, затем — сопровождение изменений в продуктиве. Каждый этап добавляет ответственности и уменьшает потребность в ревью.

Ускоряют рост три практики. Первая — систематическое чтение кода типовых конфигураций и библиотеки стандартных подсистем: это главный источник «правильных» паттернов разработки на платформе. Вторая — ведение задач до конца, включая общение с пользователями: понимание учётных процессов отличает программиста 1С от кодера. Третья — разбор инцидентов: каждая ошибка в продуктиве, разобранная до первопричины, даёт больше опыта, чем десяток учебных примеров.

Сертификаты «1С:Профессионал» и «1С:Специалист» не заменяют опыт, но помогают структурировать знания и подтверждают базовый уровень при устройстве на работу. Для middle позиции работодатель в первую очередь смотрит на портфолио решённых задач и поведение на техническом интервью.

Типичные ошибки разработчиков на пути к middle
01
Правка типовых модулей вместо расширений — конфигурация теряет обновляемость, каждое обновление превращается в ручную работу
02
Запросы в цикле и обращения к базе внутри итераций — код работает на тесте и «умирает» на реальных объёмах
03
Игнорирование прав доступа — доработка открывает данные тем, кому они не предназначены
04
Отсутствие проверки на копии — ошибка обнаруживается пользователями в продуктивной базе
05
Решение «в лоб» без изучения типового механизма — дублирование функциональности и конфликты при обновлении
Работодатели чаще всего недовольны не нехваткой знаний у middle, а коммуникацией: разработчик молча делает задачу, не уточняет требования и не сообщает о рисках. Умение задать три уточняющих вопроса до начала работы экономит больше времени, чем любой технический навык.
ПЗ
Практическое замечание

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

Сколько лет опыта нужно для позиции middle в 1С?

Жёсткого срока нет: у разных работодателей планка колеблется примерно от полутора до четырёх лет практики. Решающим является не стаж, а способность самостоятельно вести задачи полного цикла — от уточнения требования до внедрения в продуктив. Бывают разработчики с пятью годами опыта на уровне junior, если всё это время они выполняли только простые правки по готовому ТЗ.

Обязательно ли middle-разработчику 1С знать другие языки программирования?

Нет, глубокое знание платформы 1С само по себе достаточно для позиции middle. Однако базовое понимание SQL, форматов XML и JSON, протокола HTTP заметно расширяет круг доступных задач — особенно в части интеграций и обменов данными, которые составляют значительную долю работы.

Чем middle в 1С отличается от middle в «классической» разработке?

Главное отличие — предметная область. Программист 1С обязан понимать учётные механизмы: проведение документов, регистры, закрытие периода, взаиморасчёты. Ошибка в его коде влияет не на интерфейс приложения, а на бухгалтерские и управленческие данные компании, поэтому требования к аккуратности и тестированию выше.

Нужен ли сертификат «1С:Специалист» для трудоустройства на middle?

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

Можно ли стать middle, работая только на поддержке одной базы?

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

Какие темы изучать в первую очередь после освоения основ языка?

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

Итог

Что важно запомнить

Middle-программист 1С — это самостоятельный разработчик, который ведёт задачи полного цикла, дорабатывает типовые конфигурации без потери обновляемости, уверенно владеет запросами и СКД и понимает учётные последствия своего кода. Уровень определяется не стажем, а набором подтверждённых навыков и ответственностью за результат в продуктивной базе.