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

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

Какие вопросы задать 1С-программисту на собеседовании

Готовый список вопросов для собеседования с 1С-программистом: язык запросов, СКД, управляемые формы, обмены, типовые конфигурации и проверка реального опыта.

Нанять сильного 1С-программиста сложно не потому, что мало кандидатов, а потому что уровень «1С-разработчик» у всех означает разное: от правки печатных форм до проектирования высоконагруженных обменов. Обычное резюме это различие не показывает, поэтому отбор решает структура собеседования: вопросы по платформе, запросам, типовым конфигурациям и реальным задачам кандидата.

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

Ниже — готовый набор вопросов, сгруппированный по блокам: базовая платформа, язык запросов, интерфейс и формы, интеграции, типовые конфигурации, производственные задачи и «красные флаги» в ответах. Берите 15–25 вопросов под уровень вакансии, а не весь список целиком.

Общие вопросы об опыте: как отличить практика от теоретика

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

Полезные вопросы этого блока:

  • Расскажите о самой сложной задаче, которую решали в 1С. В чём была сложность и как вы её обошли?
  • Какая ошибка в продакшене была самой запоминающейся и как вы её исправляли?
  • С какими конфигурациями работали: УТ, ERP, БП, ЗУП? Насколько глубоко лезли в типовой код?
  • Работали с расширениями? Когда выбираете расширение вместо изменения конфигурации?
  • Как у вас организована разработка: хранилище конфигурации, EDT, git, код-ревью?

Признак сильного кандидата — он сам называет конкретику: версии платформы, имена объектов метаданных, объёмы («база 300 ГБ, 200 пользователей»). Признак слабого — общие слова «делал доработки», «писал отчёты» без единой детали даже после уточняющих вопросов.

Вопросы по платформе и встроенному языку

Этот блок проверяет фундамент: понимает ли кандидат, как устроена платформа 1С, или только копирует готовые куски кода. Вопросы должны быть такими, чтобы на них нельзя было ответить одним словом.

  • Чем объектные типы данных (СправочникОбъект) отличаются от ссылочных (СправочникСсылка)? Когда какие использовать?
  • Что происходит при вызове метода Записать() у документа? Какие события срабатывают и в каком порядке?
  • В чём разница между директивами &НаСервере, &НаКлиенте, &НаСервереБезКонтекста?
  • Что такое управляемые и обычные блокировки? Когда возникает взаимоблокировка и как её искать?
  • Как работает механизм регистрации изменений в планах обмена?
  • Чем отличается Проведен от ПометкаУдаления у документа? Что происходит с движениями?

Хороший вопрос на понимание, а не на память: «У вас отчёт формируется 10 минут. С чего начнёте разбор?» Сильный ответ включает замер производительности, анализ плана запроса, проверку индексов и соединений таблиц. Слабый — «перепишу запрос» без диагностики.

Язык запросов и СКД: вопросы, которые отсеивают половину кандидатов

Запросы — ежедневный инструмент 1С-разработчика, и именно здесь чаще всего виден реальный уровень. Спрашивайте не синтаксис, а понимание механики.

  • Чем ЛЕВОЕ СОЕДИНЕНИЕ отличается от ВНУТРЕННЕГО? Приведите пример, где неправильный выбор исказит отчёт.
  • Что такое виртуальные таблицы регистров и когда их использование обязательно, а когда вредно?
  • Как работают временные таблицы и пакетные запросы? Зачем индексировать временную таблицу?
  • В чём разница между РАЗЛИЧНЫЕ и СГРУППИРОВАТЬ ПО?
  • Что такое СКД и чем она лучше ручного построения отчёта? Когда СКД не подходит?
  • Как в СКД сделать отчёт с ресурсами, вычисляемыми на уровне группировок?

Практическая мини-задача: дать текст запроса с типичной ошибкой (например, соединение с виртуальной таблицей без отбора или обращение к таблице через точку — «разыменование») и попросить найти проблему. Кандидат, который видит разыменование за 30 секунд, работал с запросами всерьёз.

bsl
ВЫБРАТЬ
	Заказы.Ссылка КАК Заказ,
	Заказы.Контрагент.Наименование КАК Контрагент
ИЗ
	Документ.ЗаказКлиента КАК Заказы
ГДЕ
	Заказы.Дата МЕЖДУ &НачалоПериода И &КонецПериода

Кстати, показанный выше запрос — хороший материал для обсуждения: обращение «Заказы.Контрагент.Наименование» — это скрытое соединение, которое на больших объёмах бьёт по производительности. Спросите, как кандидат его перепишет.

Управляемые формы и интерфейс

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

  • Как передать данные с клиента на сервер, если у вас таблица значений на форме?
  • Почему нельзя вызвать серверную процедуру с контекстом из клиентского обработчика ожидания?
  • Что такое реквизиты формы и чем они отличаются от данных объекта?
  • Как программно создать элемент формы и когда это оправдано?
  • Что такое длительные операции и как показать пользователю прогресс выполнения фонового задания?

Контрольный вопрос: «Пользователь нажал кнопку, и форма зависла на минуту. Что не так и как исправить?» Правильный вектор ответа — тяжёлая операция выполняется синхронно на серверном вызове, нужно убирать в фоновое задание через длительные операции.

Обмены, интеграции и внешние системы

Интеграции — самая дорогая по цене ошибки часть работы, поэтому для позиций middle и senior этот блок обязателен. Даже junior-у полезно задать один-два вопроса, чтобы понять кругозор.

  • С какими способами интеграции работали: HTTP-сервисы, веб-сервисы, файловые обмены, RabbitMQ, Kafka?
  • Как организовать надёжный обмен: что делать, если приёмник недоступен или сообщение обработалось дважды?
  • Чем планы обмена отличаются от самописного обмена через регистрацию изменений?
  • Как написать и опубликовать HTTP-сервис в 1С? Как обработать входящий JSON?
  • Работали с COM/OLE или внешними компонентами? Какие проблемы встречали?

Сильный кандидат в теме обменов сам упоминает идемпотентность, очереди повторной отправки, журналирование ошибок и контроль расхождений. Если человек «настраивал обмен с сайтом», но не может объяснить, что происходит при падении обмена посередине пакета, — его участие в интеграции было поверхностным.

Типовые конфигурации и библиотека стандартных подсистем

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

  • Как вы дорабатываете типовую конфигурацию, чтобы не усложнять обновление? Расскажите про расширения и механизм переопределяемых модулей.
  • Что такое БСП и какими её подсистемами пользовались на практике?
  • Как добавить печатную форму к типовому документу через дополнительные отчеты и обработки?
  • Обновляли сильно переписанную конфигурацию? Как строили процесс и что было самым болезненным?
  • Как искать, где в типовом коде формируется нужное движение документа?

Последний вопрос особенно показателен: умение быстро ориентироваться в типовом коде (поиск по подпискам на события, общим модулям проведения, механизмам БСП) отличает человека с реальным опытом поддержки от того, кто писал только с нуля в пустых конфигурациях.

Расширение или изменение конфигурации

Расширение конфигурации

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

Изменение основной конфигурации

Нужно при глубокой переработке механизмов. Обновление становится трудоёмким, требует аккуратного сравнения и объединения. Оправдано только при реальной необходимости.

Внешние отчёты и обработки

Лучший вариант для печатных форм, отчётов и разовых операций. Вообще не влияют на обновление, но не подходят для изменения логики проведения.

Практическое задание и оценка ответов

Теоретическая часть показывает знания, но не показывает скорость и стиль работы. Завершите собеседование короткой практикой на 20–30 минут: не олимпиадной задачей, а типичной рабочей ситуацией.

Как провести практическую часть
  1. 1
    Подготовьте тестовую базу заранее: демо-конфигурация, несколько документов, один заведомо медленный отчёт
  2. 2
    Дайте задачу: написать несложный отчёт на СКД или найти причину медленной работы готового запроса
  3. 3
    Наблюдайте за процессом: как кандидат ищет информацию, пользуется ли синтакс-помощником, как называет переменные
  4. 4
    Попросите прокомментировать решение вслух и предложить, как его улучшить
  5. 5
    Оценивайте не только результат, но и приём работы: структура кода, обработка ошибок, вопросы по условию задачи

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

Типичные ошибки при собеседовании 1С-программиста
01
Задавать только вопросы на знание синтаксиса — кандидат зазубрит термины, но не сможет решать задачи
02
Оценивать по сертификатам 1С:Профессионал — наличие сертификата не гарантирует опыт, а его отсутствие не означает слабый уровень
03
Давать задачи на 2–3 часа без оплаты — сильные кандидаты отказываются, и вы теряете лучших
04
Не проверять опыт с вашей конфигурацией — разработчик под БП и разработчик под ERP решают разные задачи
05
Игнорировать вопросы кандидата — если он не спрашивает про стек, базы и команду, ему может быть всё равно, куда идти

Красные флаги в ответах кандидата

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

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

Итог

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

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

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

Сколько вопросов задавать на одном собеседовании?

Оптимально 15–25 вопросов плюс практическое задание, всё вместе — 60–90 минут. Большее количество превращает интервью в экзамен и утомляет обе стороны, а меньшее не даёт проверить все важные блоки. Лучше глубже копнуть 2–3 темы, чем поверхностно пройтись по десяти.

Чем отличаются вопросы для junior, middle и senior 1С-разработчика?

Junior: основы платформы, простые запросы, устройство справочников и документов, готовность учиться. Middle: оптимизация запросов, СКД, управляемые формы, расширения, опыт самостоятельных доработок. Senior: архитектура решений, высокие нагрузки, интеграции и очереди, проектирование обменов, наставничество и оценка задач.

Нужно ли требовать сертификаты 1С:Профессионал?

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

Как проверить кандидата, если сам проводящий не разбирается в 1С?

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

Давать ли тестовое задание на дом?

Да, но короткое — не более 1–2 часов работы, и желательно оплачиваемое при найме. Большие бесплатные задания отпугивают сильных кандидатов и создают этическую проблему, если результат потом используется в работе компании. Альтернатива — live-сессия на 30 минут, где кандидат решает задачу при вас.

Какие вопросы задать про работу в команде и процессы?

Спросите про опыт работы с хранилищем конфигурации или EDT и git, участие в код-ревью, взаимодействие с аналитиками и постановку задач. Уточните, как кандидат поступает, когда требования в задаче неполные или противоречивые, — это покажет зрелость лучше любых технических вопросов.