Как перейти из 1С в Java: зарплата, задачи и реальный опыт разработчика

Поговорили с тимлидом из Яндекс Путешествий

Как перейти из 1С в Java: зарплата, задачи и реальный опыт разработчика

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

Эксперт

Арсений Чепик 
Тимлид в Яндекс Путешествиях. Руководит командой бэкенд-разработки (Java+Kotlin).

Если вы 1С-разработчик и думаете о переходе на Java — или наоборот, выбираете между ними на старте карьеры — в статье разобрали оба пути на конкретном опыте: сколько реально платят, что спрашивают на собеседованиях, какие задачи скучные, а какие интересные, и что из 1С пригодится в Java.

Зарплата и рынок труда: сколько теряешь или выигрываешь при переходе с 1С на Java

Ты работал и в 1С, и в Java. Какая реальная разница в зарплате была у тебя на одинаковом уровне? Стоило ли менять стек ради дохода?

Привет! Сразу с «козырей» вопросы задаёшь. В Java я ушёл на ту же самую зарплату, я пересчитал свою стоимость рабочего дня в 1С, помножил на средний рабочий месяц, и принёс HR-у той компании, куда я устраивался на Java. У меня вообще ничего, в плане денег, тогда не поменялось. Но я хотел поменять стек, а не зарплату.

Если в одной компании работает 1С и Java-разработчики на одинаковых уровнях, то зарплата у них будет одинаковая. Оплата соразмерна решаемым задачам, за то, что ты будешь решать такие же задачи, но на Java, никто не будет платить х2 (не дословно, обычно так говорят даже про +30% прибавку). Так что менять стек надо, когда ты хочешь поменять стек, а не когда ты хочешь х2.

Как устроен твой рабочий день сейчас в Java? И как было в 1С? Что изменилось в отношении к проектам, багам, задачам?

В Java я работаю в бигтехе, это накладывает свой отпечаток на рабочие процессы. Работа по спринтам, ежедневные стендапы (встречи, на которых вся команда вкратце рассказывает свой вчерашний прогресс и планы на сегодня)… Это не специфика Java, это специфика именно IT-бигтеха — в больших 1Сных компаниях такой же подход к работе. Если же взглянуть более абстрактно, хоть языки и отличаются, в глобальном подходе к работе разницы нет. Заказчик даёт проекты, мы их оцениваем, планируем, делаем.

Рабочий день во всех ЯП (языках программирования) выглядит одинаково — берёшь задачу и делаешь, пока не закончится (ты или задача).

Ты когда-нибудь сравнивал, где проще найти работу — в 1С с узкой специализацией или в Java, где конкуренция выше? Что бы выбрал сейчас, если бы искал с нуля?

Когда я уволился с работы в 2019, я в пятницу вечером (около 17) решил просто обновить резюме, без откликов. Мне позвонили через 15 минут с приглашением на собеседование. Как оказалось, моё резюме автообновилось, в нём было только моё ФИО, «1С-разработчик» и желаемая зарплата. Ни образования, ни опыта, ничего, буквально пустой лист — и меня уже зовут на собес. Второе приглашение прилетело через час. Во вторник я уже договаривался на выход на новое место работы… То есть меня как 1Сника «выхватили из рук» в 2019.

По поводу «узости» специализации не соглашусь. Это обычный язык разработки, причём продукты Фирмы 1С установлены практически в каждой организации, то есть потенциальный спрос на разработчиков колоссальный. Особенно в свете новых законопроектов о переводе на внутреннее ПО. Как только работодатели «распробуют» возможности 1С, произойдёт очередной бум. Грамотные 1Сники могут не только сделать продукт, но ещё и облегчить рутину бэкофиса (бухгалтерия/кадры).

Я думаю, если я прямо сейчас выйду на рынок с двумя резюме — Java и 1С, то 1С быстрее закроется. Если бы я искал работу как начинающий, точно бы пошёл в 1С — больше спрос, меньше конкуренция, перспективы высокого роста.

Самая большая скидка — 10% на все курсы!

До 30 июля по промокоду KOD (можно просто нажать) действует максимальная скидка — 10% на все платные курсы Практикума. Если давно хотели разобраться в разработке, аналитике, нейросетях, тестировании или кибербезопасности, сейчас можно зайти дешевле.

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

Путь из 1С в Java: почему ушёл и что было первым шагом

С чего ты начинал? Почему вообще решил уходить из 1С — конкретный момент или долго зрело?

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

Уходить из 1С я впервые задумался на рассвете «удалёнок» и работы «за границей», на иностранные компании. В 1С тогда (до Ковида) вообще не было никакой удалённой работы, строго офис, и платили ниже рынка IT (т.к. «куда вы денетесь»), при том что мировые языки (C++, Java, Go, Python) были с удалёнкой и оплачивались на европейском уровне.

Переход между языками меня уже не пугал, после определённого уровня навыков, язык — это всего лишь инструмент, без разницы, на чём писать. Я выбрал Java, потому что она была «более знакомой». А ещё в какой-то момент увидел среду разработки IDEA, и сразу в неё влюбился (ещё бы, после 1Сного «Конфигуратора»).

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

Когда учил Java — это были курсы, ментор или сам копался? Что из этого реально помогло, а что — выброшенные деньги?

Изначально, Java у меня была год в университете. Из всего этого я вынес только то, что она работает на JVM и изначально разрабатывалась для микроволновок.

Вспоминал (или правильнее сказать «учил заново»?) я по книжке «Философия Java», и платным курсам (несколько тысяч за год доступа), чтобы была мотивация проходить курс. Курс самостоятельный, никаких поддержек нет, читаешь теорию, пишешь код, сдаёшь роботу. И так по всей теории Java, полезной и общеобразовательной…

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

После этого курса записался на курс Практикума «Автоматизатор тестирования на Java», хотя с автотестами моя работа не была даже близко, пошёл на курсы чтобы:

  • познакомиться с онлайн-курсами и в частности с Практикумом;
  • попробовать писать на Java;
  • было любопытно, что за программа Госуслуг по софинансированию обучения IT-шников (уже неактуальная).

В общем, курсы оказались полезны, а вот книжка — не очень, не хватило мне силы воли чтобы её даже до середины добить.

Что тебя спрашивали на собеседованиях в Java, но ты потом в работе это почти не использовал? И наоборот — что ты знал из 1С и это пригодилось?

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

Из 1С я принёс знания SQL-запросов — и это оказалось полезнее, чем многие ожидали: в Java-стеке работа с базами никуда не исчезает, даже если часть запросов прячет фреймворк. Но самое ценное — опыт работы разработчика, как я уже говорил раньше, не важен язык программирования, важны подходы к работе с задачей. А ещё я много работал с заказчиками, собирал требования — это тоже помогает в работе.

Задачи и рабочая рутина: сколько слоёв кода в 1С и в Java

Возьми простую задачу — выгрузить данные из базы, обработать, показать пользователю. Как это выглядело в 1С и как выглядит в Java? Сколько слоёв, сколько файлов, сколько времени?

Это первое задание на курсе Практикума для 1С. В 1С оно делается только мышкой, без единой строчки кода, даже не понимая, что здесь мы идём в базу, тут перекладываем данные, а здесь отдаём данные на экран пользователю, 1С делает всё сама. Я бы сказал, 10 минут чтобы сделать «новую сущность», которую можно заполнять. И ещё 10, если хотим отчёт по этим данным.

В Java, с помощью Spring (предполагая, что у нас уже настроена инфраструктура — есть БД, есть сервер, есть фронтенд), создать «сущность», которая будет храниться в БД, нужно где-то так же 10 минут. НО! Ещё нужно обработать запрос с фронта и отдать ответ обратно: контроллеры, мапперы, отрисовка на фронте… Требуются крепкие 2 часа работы, а то и полдня.

Сейчас индустрия уходит в сторону ИИ, и здесь я могу немножко «схитрить» — дорогой ИИ напишет код на Java из вопроса за 40 секунд, дешёвая за 15 минут. В 1С такого ИИ нет, приходится по-старинке, руками.

Где ты ловил больше багов — в 1С со встроенным отладчиком или в Java с логами и IDE? Где проще понять, что сломалось?

Больше багов однозначно в 1С. Это нетипизируемый язык, и среда разработки не держит в себе контекст объекта. Обратиться «не к тому» полю, или к полю, которого нет — самая частая ошибка, и она выявляется только на этапе самотестирования. Java в этом месте не то что «не запустится» — она сразу покажет, что здесь ошибка, и самостоятельно предложит исправление. Это не ИИ, это статическая типизация — на этапе написания кода ты гарантированно знаешь, какие поля тебе доступны.

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

Было ли такое, что в 1С за день можно закрыть 5–10 задач. В Java одна задача тянется неделю. У тебя так было: это скучно или нормально?

Это зависит именно от задач, общий уровень и времязатраты на среднюю задачу примерно одинаковые. Единственное, что есть в 1С из задач, которые мне не нравятся, это печатные формы. Java в таком сценарии — это уже бэкенд-разработка: бизнес-логика, работа с БД, API, контроллеры, мапперы, тесты и доставка изменений до продакшена. А в 1С ты немножко работаешь с БД, пишешь бизнес-логику и отвечаешь за фронтенд. Выводить клеточки документа, чтобы они легли на лист А4 и текст не накладывался друг на друга — мне очень не нравилось. Вот эти задачи, для меня, скучные.

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

Путь вхождения и обучение: как 1С-опыт сыграл на собеседованиях в Java

Когда ты устроился на первую работу в Java — тебя спрашивали как джуна или как человека с опытом? Как ты рассказывал про свои 1С-годы?

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

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

Какие пет-проекты ты делал? Что из них спрашивали на собеседованиях?

Удивительно, но никакие. На первую работу я попал сходу, а на последующие моими проектами были мои настоящие рабочие проекты. У меня даже диплом по 1С, про интеграции самописной 1Ски с внешней БД, на прямых соединениях.

Что чаще всего спрашивают на собеседованиях в Java, но редко используется в работе? Были ли вопросы, ответы на которые ты уже знал из опыта 1С?

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

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

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

Карьерные перспективы: где выше потолок — в 1С или в Java

Ты думаешь, в каком направлении выше потолок — в 1С или в Java? Для разработчика и для человека, который решает бизнес-задачи?

Считаю, что потолок выше в Java. В основном, 1С ограничено РФ и СНГ, а на Java пишет весь мир. Там придётся конкурировать с индусами и ИИ, но это не кажется невозможной задачей.

Истории про то, как кто-то из Java-разработчиков делал миллионный экзит из единорога (Exit from Unicorn — продажа своей доли в микро стартапе, который вышел на биржу или продался IT-гиганту за большие деньги), а вот про 1С — ни разу. Но всегда можно стать первым!

Рассматривал ли ты работу за рубежом на Java? Насколько это реально сейчас?

В этом вопросе я как белка-летяга: никуда не летаю, но постоянно планирую. Изначально, пошёл учить Java чтобы работать на Европу, а в идеале и переехать. Но не успел, по понятным причинам. Пока что вижу на текущем месте работы перспективы роста, поэтому не спешу. Найти работу за рубежом всё ещё реально, для ОАЭ или Кипра ничего не поменялось, например. Попасть в Европу/США стало сложнее, это правда, но не невозможно.

Бывало, что хотел вернуться в 1С? Что могло бы тебя туда вернуть?

Очень интересный проект и очень много денег. Не хочу возвращаться в «Конфигуратор» как среду разработки, хочу оставаться на уровне комфорта IDEA.

Кстати, наверняка есть где-нибудь 1Сник, который радуется, что ушёл из Java. Так что здесь всё субъективно.

Кому стоит переходить с 1С на Java, а кому — нет

Кому из 1С-разработчиков стоит задуматься о переходе, а кому — продолжать развиваться в текущем стеке? Один критерий, по которому можно определить.

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

Какой конкретный шаг может сделать 1С-разработчик сегодня, чтобы проверить, подходит ли ему Java?

Взять Spring (основной фреймворк), написать элементарный REST API контроллер, как настоящую точку входа в программу. А потом реализовать какую-нибудь задачку из 1С (обработку или проводку документа), но на Java. Я примерно с такого начал.

Один момент в твоём переходе, который ты считаешь ошибкой. И один (или несколько), которые считаешь успехом.

Наверное, ошибкой считаю, что не начал раньше. Сейчас бы был на «плато» в Java, и перешёл бы обратно, переводить системные предприятия на 1С. Или наоборот, в рассвет Ковида устроился бы работать в иностранную компанию, когда это было попроще.

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

Инструменты разработчика: 1С vs Java

Расскажи, какими инструментами разработки пользовался в 1С, а какие используешь сейчас в Java? Какие понравились, а какие — нет?

В 1С не так много инструментов, но хватает даже базовых. Стандартный инструмент разработки — Конфигуратор — покрывает все потребности. Он и среда разработки, и за миграции БД отвечает, и за обновления. Исходя из этого, очень слабо развиваются вспомогательные инструменты, т.к. «можно и без них», а для разработки новых инструментов требуются знания со стороны. Написать на 1С какой-нибудь git-клиент сложнее, чем на Java.

В 1С я пробовал пользоваться EDT (Enterprise Development Tools), по сути, это старая IDE для Java (Eclipse IDE), но подправленная для 1С. Очень ресурсоёмка. Если писать только код, то достаточно удобна. Классно, что поддерживает работу с git’ом. Но если нужно работать с формами, то очень неудобно. Поэтому попробовал и бросил.

Для групповой разработки, 1С использует собственное решение — хранилище конфигурации, им пользовался постоянно. Это, де-факто, стандарт индустрии.

И ещё у нас было решение для «автоматического обновления» — в 1С нет никаких CI/CD, поэтому у нас каждую ночь запускался Конфигуратор через bash-скрипт, и применял сохранённую конфигурацию. Сохранять конфигурацию должен был старший разработчик, вручную, в конце рабочего дня.

Никаких ИИ-инструментов три года назад не было, поэтому про них ничего не могу написать.

В Java сильнее развита экосистема: IDE, Git, CI/CD, автотесты, репозитории, логирование и другие инструменты разработчика, без которых современная командная разработка почти не работает. Во-первых, среда разработки, я уже раньше рассказывал, Intellij IDEA — самая удобная Java/Kotlin среда разработки. Очень умно строит индексы поиска, а умение быстро найти нужный код — это самое необходимое. Пробовал пользоваться VS Code, но непривычно. Конечно, можно потратить несколько дней, поставить расширений, и превратить его в Idea, но зачем, если есть IDEA?

Любая среда разработки поддерживает git, и любая разработка использует его для совместной разработки. Из хранилищ репозиториев git, пользовался Github, GitLab, в Яндексе своя система контроля версий, они все примерно одинаковы с точки зрения использования. Как любой дополнительный инструмент, поначалу непривычно, но быстро привыкаешь, и уже не представляешь, как без этого жил.

По сравнению с 1С, в Java очень развиты devops-инструменты — CI/CD, автотесты, мульти-инстансы. Всё это тоже можно посчитать инструментами, и мне они очень нравятся. Буквально, не нужно думать «как доставить свои изменения до потребителя», оно приедет самостоятельно, при настроенной автоматизации.

Наконец, самое интересное, ИИ-агенты. Сейчас использую Opencode поверх Claude/GLM/ChatGPT/Gemini. Версии моделей не пишу, потому что они устареют раньше, чем материал опубликуют. Вкратце — сначала надо научиться делать правильные промпты, описать скиллы, управлять контекстом на бесплатной/дешёвой, а потом берите самую дорогую. Локальные модели не поднимал, по большей части, это бесполезно, они проигрывают бесплатным.

Частые вопросы про переход с 1С на Java

  • Сколько теряешь в зарплате при переходе с 1С на Java? Ничего, если переходишь на тот же уровень. Зарплата в первую очередь зависит от уровня задач, а не от языка программирования: 1С и Java-разработчик на одной позиции в одной компании получают одинаково.
  • Что из 1С пригодится в Java? Знания SQL-запросов, опыт работы с заказчиками и сбора требований, понимание транзакций и изоляций — это пригождается на реальных задачах, хотя на собеседовании не спрашивается напрямую.
  • Что спрашивают на Java-собеседованиях, к чему не готовит 1С? Алгоритмы и структуры данных, устройство JVM на начальном уровне, архитектуру — на уровне миддл+/сеньор.
  • Стоит ли идти в 1С новичку в 2026 году? По опыту героя интервью — да: спрос на 1С-разработчиков высокий, конкуренция ниже, чем в Java, а перспективы роста есть за счёт перехода на внутреннее ПО.

Что в итоге

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

Советуем дополнительно почитать по теме:

Роадмап Golang: путь от нуля до джуниора в 2026 — если хочется сменить стек, но не обязательно на Java: что учить в Go, какие навыки требуют работодатели и на каком этапе можно откликаться на вакансии.

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

Куда расти бэкенд-разработчику в 2026–2027 — пять направлений роста после базового backend-уровня: архитектура, DevOps, смена стека, AI-инженерия и MLOps.

Как выучить JavaScript с нуля: готовый план для начинающих — план для тех, кто выбирает не 1С и не Java, а хочет зайти в разработку через веб: синтаксис, DOM, асинхронность, npm и первые проекты.

Как стать ML-инженером в 2026: роадмап от Python до первого оффера — вариант для разработчиков, которые хотят сменить не только язык, но и тип задач: Python, SQL, ML, Deep Learning, деплой и MLOps.

Бонус для читателей

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

Вам может быть интересно
medium
[anycomment]
Exit mobile version