Разработка и Конфигурация · 9 мин
Какие вопросы задают на собеседовании программистам 1С
Разбираем типичные вопросы на собеседовании программиста 1С: язык запросов, СКД, управляемые формы, обмены, типовые конфигурации и практические задачи.
Собеседование на позицию программиста 1С почти всегда строится по одной схеме: сначала проверяют знание платформы и встроенного языка, затем — умение работать с запросами и СКД, после этого — опыт с типовыми конфигурациями и обменами, а в конце дают практическую задачу. Понимание этой структуры позволяет подготовиться точечно, а не перечитывать всю документацию.
Уровень вопросов напрямую зависит от позиции. Джуниору зададут вопросы про отличия справочника от документа и основы синтаксиса. От мидла ждут уверенной работы с запросами, управляемыми формами и понимания механизмов проведения. Сениора спросят про оптимизацию, блокировки, архитектуру решений и опыт доработки типовых конфигураций без снятия с поддержки.
Важно понимать: работодатель проверяет не энциклопедические знания, а способность решать бизнес-задачи. Поэтому почти на каждом собеседовании звучат вопросы из реальной практики: «почему отчёт работает медленно», «как перенести данные между базами», «что делать, если документ не проводится».
Вопросы по платформе и встроенному языку
Этот блок открывает почти любое собеседование: он быстро показывает, работал ли человек с платформой реально или только прошёл курс. Типичные вопросы звучат так: чем справочник отличается от документа, что такое регистры и какие их виды вы знаете, чем отличаются функция и процедура, что такое директивы компиляции &НаКлиенте и &НаСервере.
Часто спрашивают про разницу между значными и ссылочными типами данных, про то, что такое NULL и неопределённое значение, как работают методы НайтиПоКоду(), ПолучитьОбъект() и когда нельзя вызывать серверные методы с клиента. От кандидата ждут не заученных определений, а понимания последствий: например, почему обращение к базе в цикле — плохая идея.
- Чем регистр сведений отличается от регистра накопления и когда какой применять?
- Что такое объект и ссылка, в чём разница при работе с ними?
- Как устроены подсистемы, роли и права доступа?
- Что произойдёт, если вызвать серверную процедуру из клиентского контекста?
Запросы и СКД — главный технический блок
Язык запросов — самая проверяемая тема. Спрашивают про виды соединений таблиц (левое, внутреннее, полное), виртуальные таблицы регистров и их параметры, разницу между ОБЪЕДИНИТЬ и ОБЪЕДИНИТЬ ВСЕ, группировки, итоги и вложенные запросы. Могут попросить устно написать запрос: например, выбрать остатки по складам на дату с отбором по номенклатуре.
По СКД (системе компоновки данных) задают вопросы о структуре отчёта: наборы данных, ресурсы, параметры, отборы, настройки вариантов. От опытного кандидата ждут понимания, когда лучше использовать СКД, а когда — программный отчёт, и как отлаживать запрос, который возвращает неверные данные.
Отдельная тема — оптимизация запросов: индексы, соединения с виртуальными таблицами, пакетные запросы и временные таблицы. Даже если вакансия джуниорская, базовое понимание того, почему запрос может «тормозить», сильно выделяет кандидата.
Управляемые формы и клиент-серверное взаимодействие
Вопросы по управляемым формам проверяют, понимает ли кандидат архитектуру тонкого клиента. Типичный набор: жизненный цикл формы, обработчики ПриСозданииНаСервере и ПриОткрытии, разница между реквизитами формы и данными объекта, что такое контекстный и неконтекстный серверный вызов.
Популярный вопрос с подвохом: «Почему нельзя обратиться к базе данных напрямую из клиентской процедуры?» Ответ кроется в архитектуре — клиент не имеет прямого доступа к СУБД, вся работа с данными идёт через сервер. Отсюда же вытекает вопрос про минимизацию серверных вызовов: каждый вызов — это сетевой обмен, и десять вызовов в цикле заметно медленнее одного пакетного.
Признаки хорошего ответа
Говорит про архитектуру, сетевые вызовы и контексты
Отвечает «так нельзя, выдаст ошибку» без объяснения причины
Предлагает собрать данные одним запросом на сервере
Предлагает обращаться к данным в цикле по строкам таблицы
Типовые конфигурации и расширения
Работодателю важно, умеет ли кандидат работать с тем, что уже написано. Спрашивают про опыт с конкретными конфигурациями: ERP, УТ, БП, ЗУП, КА. Вопросы практические: как устроен механизм проведения документа «Реализация товаров и услуг», где в БП хранятся проводки, как работают подписки на события и как найти место, где формируется конкретное движение по регистру.
Отдельный обязательный блок — расширения конфигурации. Спрашивают: чем расширение отличается от доработки основной конфигурации, какие объекты можно менять через расширение, какие ограничения есть, что такое аннотации &ИзменениеИКонтроль, &Вместо, &После и в чём риск использования &Вместо. Правильный ответ включает понимание: &Вместо полностью заменяет типовой метод, и после обновления конфигурации изменения типового кода перестанут попадать в расширение — это источник скрытых ошибок.
На собеседовании ценится фраза «сначала смотрю, нельзя ли решить задачу типовыми средствами или расширением, и только потом предлагаю доработку конфигурации». Она показывает, что кандидат думает о стоимости сопровождения, а не только о коде.
Обмены данными и интеграции
Интеграционные вопросы встречаются почти на каждом собеседовании на позицию уровня мидл и выше. Базовый минимум: что такое планы обмена, как работает регистрация изменений, чем отличается типовой обмен от самописного. Дальше — про форматы и протоколы: XML, JSON, HTTP-сервисы, веб-сервисы, COM-соединение, EnterpriseData.
Частый практический вопрос: «Нужно перенести остатки из одной базы в другую — как будете делать?» Хороший ответ описывает варианты (универсальная обработка загрузки/выгрузки, конвертация данных, самописный обмен через HTTP) и критерии выбора: объём данных, разовая задача или регулярный обмен, идентичность конфигураций.
Как выбирать способ обмена
Практические задачи и вопросы на логику
Многие работодатели дают живую задачу: написать запрос, найти ошибку в фрагменте кода или объяснить, почему приведённый код работает медленно. Классика — код с запросом в цикле, обращение к ПолучитьОбъект() без необходимости, отсутствие проверки на пустую выборку.
Встречаются и алгоритмические задачи: найти дубли в массиве, посчитать итоги по группам, развернуть строку. Они проверяют не знание 1С, а общее умение программировать. Совет: проговаривайте ход мыслей вслух — интервьюеру важно видеть логику, даже если итоговый код содержит неточности.
- 1Уточните условие: объёмы данных, периодичность, есть ли ограничения по времени выполнения
- 2Проговорите план решения до написания кода
- 3Напишите простое рабочее решение, затем предложите вариант оптимизации
- 4Проверьте крайние случаи: пустая выборка, отсутствие остатков, дубли данных
Вопросы про опыт и «мягкие» навыки
Техническая часть — не всё. Почти всегда спрашивают: над какими проектами работали, какая была самая сложная задача и как её решили, приходилось ли разбираться в чужом коде, как взаимодействовали с пользователями и аналитиками. Здесь проверяют способность доводить задачи до конца и общаться с не-программистами.
Полезно заранее подготовить 2–3 истории из практики по схеме «задача — что сделал — результат». Например: «отчёт формировался 20 минут, переписал запрос с использованием временных таблиц, время сократилось до секунд». Конкретика без выдуманных цифр убеждает сильнее общих фраз про «оптимизацию процессов».
Что важно запомнить
Ядро собеседования программиста 1С — запросы, СКД, управляемые формы, типовые механизмы, расширения и обмены. Готовьте не определения, а объяснения «почему так» и примеры из практики. На практической задаче проговаривайте ход мыслей и проверяйте крайние случаи.
Частые вопросы о собеседовании программиста 1С
Что спрашивают у джуниор-программиста 1С без опыта?
Основы платформы: виды объектов метаданных, разница между справочником и документом, простейшие запросы с отбором, базовый синтаксис встроенного языка. Часто просят показать учебный проект или выполнить несложное тестовое задание — например, написать отчёт по остаткам через СКД.
Нужно ли знать бухгалтерский учёт для собеседования?
Для позиций, связанных с БП или ЗУП, базовое понимание учёта — существенный плюс: что такое проводка, план счетов, субконто. Глубоких знаний обычно не требуют, но умение разобраться, почему документ сформировал именно такие проводки, ценится высоко.
Какие вопросы по запросам задают чаще всего?
Лидируют три темы: виды соединений таблиц и их поведение при отсутствии данных, параметры виртуальных таблиц регистров и разница между ОБЪЕДИНИТЬ и ОБЪЕДИНИТЬ ВСЕ. Также часто просят устно написать запрос с группировкой и итогами.
Дают ли тестовое задание вместо технического интервью?
Да, многие компании заменяют часть устных вопросов тестовым заданием: доработать небольшую конфигурацию, написать обработку загрузки данных или отчёт на СКД. Это нормальная практика, но объёмное задание на несколько дней без оплаты — повод насторожиться.
Что отличает собеседование на senior-позицию?
Фокус смещается с синтаксиса на архитектуру: блокировки и управляемые транзакции, оптимизация под большие объёмы, проектирование обменов, выбор между доработкой и расширением, ревью чужого кода. Также оценивают умение оценивать трудоёмкость задач и общаться с заказчиком.
Как подготовиться к собеседованию за неделю?
Повторите язык запросов и СКД, разберите устройство управляемых форм и директив компиляции, вспомните механизм расширений и аннотации, потренируйтесь писать простые запросы на время. Подготовьте два-три рассказа о реальных решённых задачах с измеримым результатом.