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

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

Что должен знать программист 1С для успешной работы

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

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

Набор требований зависит от формата работы: франчайзи ценит скорость и широту, крупное предприятие — глубину в конкретной конфигурации (ERP, ЗУП, Бухгалтерия), а продуктовая команда — качество кода и умение работать по стандартам. Однако базовый стек знаний общий для всех направлений.

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

Встроенный язык платформы и объектная модель

Основа профессии — встроенный язык 1С. Нужно свободно работать с примитивными типами, коллекциями (массивы, структуры, соответствия, таблицы значений), понимать разницу между серверным и клиентским контекстом исполнения, директивами компиляции (&НаСервере, &НаКлиенте, &НаСервереБезКонтекста) и тем, как данные передаются между клиентом и сервером.

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

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

Язык запросов, СКД и работа с данными

Язык запросов 1С — второй по важности инструмент. Нужно уверенно писать соединения таблиц, группировки, вложенные запросы, виртуальные таблицы регистров (Остатки, Обороты, СрезПоследних) и понимать, когда виртуальная таблица ускоряет выборку, а когда, наоборот, порождает лишние соединения.

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

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

Типичные ошибки в запросах
01
Запрос в цикле вместо одного запроса с соединением — резкое падение производительности на больших объёмах
02
Использование виртуальных таблиц без отборов — чтение всего регистра вместо нужного среза
03
Соединение по неиндексированным полям и функции в условиях соединения — СУБД не может использовать индексы

Типовые конфигурации и учётные механизмы

Работодатель ждёт, что программист понимает предметную область: как устроен документооборот в Бухгалтерии, как считается себестоимость в ERP, какие регистры участвуют в расчёте зарплаты в ЗУП. Не нужно быть методистом, но следует уметь пройти от проводки документа к регистру и понять, откуда взялась цифра в отчёте.

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

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

Отладка, тестирование и инструменты разработчика

Конфигуратор и 1C:EDT — основная среда. Нужно уметь пользоваться отладчиком: точки останова, условные остановы, просмотр таблиц значений и запросов во время исполнения, отладка фоновых заданий и веб-сервисов. На серверных базах важно понимать, как включить отладку на сервере и почему код может исполняться в другом сеансе.

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

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

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

Как проверить результат доработки

Движения документа
Норма

Записи в регистрах соответствуют ожидаемым суммам и аналитике

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

Лишние, отсутствующие или задвоенные записи

Отчёты по затронутым данным
Норма

Показатели отчёта совпадают с контрольным расчётом

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

Расхождения, пустые или удвоенные строки

Поведение при повторном проведении
Норма

Отмена и повторное проведение не оставляют «хвостов»

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

Остатки не закрываются, появляются дубли

Обмен данными и интеграции

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

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

Маршрут решения

Как выбрать способ интеграции

Нужен типовой обмен между конфигурациями 1СИспользуйте план обмена и типовые правила синхронизации через EnterpriseData
Внешняя система вызывает 1С по APIПубликуйте HTTP-сервис в 1С с авторизацией и журналированием запросов
1С должна получать данные из внешнего APIРегламентное задание с HTTPЗапрос, обработкой ошибок и повторными попытками
Разовая загрузка данных из файлаОбработка с чтением табличного документа или CSV, без построения постоянного обмена

Смежные знания, которые повышают ценность специалиста

Помимо платформы работодатели ценят: основы SQL (MS SQL Server или PostgreSQL — самые частые СУБД под 1С), понимание клиент-серверной архитектуры, базовое администрирование (публикация баз, кластер серверов, права доступа), знание RLS для настройки ограничений прав на уровне записей.

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

Итог

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

Минимальный стек программиста 1С: встроенный язык и объектная модель, запросы и СКД, устройство типовых конфигураций и БСП, отладка, расширения вместо прямых доработок, основы обменов и HTTP-интеграций. К этому добавляются SQL, аккуратная работа с обновлениями и понимание учётной логики — именно это отличает востребованного специалиста.

Как выстроить обучение и проверить готовность к работе

Рабочий порядок освоения: сначала язык и объекты метаданных на учебной конфигурации, затем запросы и СКД, далее — разбор типовой конфигурации (например, демо-базы Бухгалтерии) с трассировкой документов до регистров. Параллельно стоит освоить расширения и простые обработки.

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

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

Часто задаваемые вопросы

Нужно ли программисту 1С знать бухгалтерский учёт?

Полноценное ведение учёта не требуется, но понимать базовые понятия — проводка, план счетов, остатки и обороты, закрытие периода — необходимо. Без этого невозможно отладить движения документа или объяснить пользователю, откуда взялась сумма в отчёте.

Что важнее на собеседовании: язык или знание конфигураций?

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

Нужен ли сертификат «1С:Профессионал» или «1С:Специалист»?

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

Можно ли дорабатывать типовую конфигурацию напрямую, без расширения?

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

Насколько нужен SQL, если в 1С есть свой язык запросов?

Для большинства задач достаточно встроенного языка запросов. SQL понадобится, когда база большая и нужно искать причины медленной работы: читать планы запросов, находить отсутствующие индексы, разбирать блокировки. Это навык уровня «уверенный середина», а не стартовое требование.

С чего начать, если опыта нет совсем?

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