Где работать в IT в 2022: МойСклад

8d0ed3406eb8a172a29b97aeb7ac6801.png

Наша рубрика «Где работать в IT» — это интервью с интересными айти-компаниями, в которых они делятся подробностями о процессах своей работы. Представители индустрии отвечают на вопросы о найме, условиях, командах и технологиях. 

В этом выпуске мы расскажем вам об облачном сервисе МойСклад.

Кто отвечал на вопросы

Обо всех процессах в компании нам подробно рассказали:

4f70973fd7f766876220c0f349c0b14a.pngАнастасия Серебренникова

HR-директор

0fe4b104131b55d390cde2db62ed051b.pngВлад Могильников

Head of Scrum

718154ed8918b49c6d7edb4849a42232.pngОлег Алексеев

CTO

О компании

МойСклад — облачный сервис для управления торговлей и производством, в котором зарегистрированы 2,5 млн компаний. За последние годы компания выросла до 250 человек, половина из которых — разработчики.

Публичная оценка компании на Хабр Карьере в 2022 году — 4,87 из 5. Сотрудники особенно ценят МойСклад за связь с топ-менеджментом, комфортные условия труда, соцпакет, отношения с коллегами, признание результатов труда и за то, что компания делает мир лучше. Подробнее посмотреть оценки и почитать отзывы сотрудников можно в профиле МоегоСклада на Хабр Карьере. 

Оценка компании МойСклад на Хабр Карьере в 2022 годуОценка компании МойСклад на Хабр Карьере в 2022 году

Об условиях работы

Отвечает Анастасия Серебренникова, HR директор

Какой в вашей компании сложился рабочий график и какое отношение к переработкам?

В МоемСкладе всегда был гибкий график работы с соблюдением work-life-balance: кто-то начинает в 8, кто-то в 13. Есть сотрудники из разных часовых поясов. При этом мы не согласовываем каждое отсутствие или «опоздание» с руководителем, доверяя каждому сотруднику.

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

Какие бытовые условия ждут нового сотрудника на рабочем месте?

В основном мы все работаем удаленно, но у нас есть 3 офиса: Москва, Нижний Новгород и Алма-Ата. В офисах Москвы и Нижнего Новгорода есть стол для игры в пинг-понг, турник, мягкие пуфы. На кухне всегда свежие фрукты, выпечка, две кофе-машины, чай, вода, молоко и сахар.

b0b01edad5c78592404fae82dfa97da6.png

Сотрудник может выбрать технику, на которой ему комфортнее работать: если он привык к Mac, то может выбрать его. Бывают случаи, когда сотруднику удобнее работать на своем оборудовании — мы не против.

a080ddcacc60e5e2b9df8488cc3311d7.png

Есть ли возможность удалённой работы?

Да, все сотрудники компании могут работать удаленно.

Какой социальный пакет получают сотрудники?

Расскажу по пунктам:

  1. График работы: у большинства отделов он гибкий, и есть возможность работать удаленно из любой точки мира.

  2. Оплата отпусков и больничных: платим до полного оклада. Мы за то, чтобы сотрудники отдыхали, когда им удобно и восстанавливались, не думая о том, когда они получат компенсацию от ФСС.

  3. «Болезнь без больничного»: 5 дней в год вы можете не выходить на работу, если плохо себя чувствуете. При этом можно не обращаться в поликлинику и получать зарплату.

  4. ДМС со стоматологией: подключаем сотрудников после прохождения испытательного срока.

  5. Обучение: компенсируем затраты на обучение и даем корпоративные скидки на изучение английского языка.

  6. Фитнес: компенсируем до 50% стоимости годового абонемента.

  7. Поддержка: предоставляем скидку 50% на сервис онлайн-психотерапии.

  8. Еда: тем, кто работает в офисах Москвы и Нижнего Новгорода, мы оплачиваем обеды. И, конечно, в офисе всегда есть кофе, чай, фрукты и сладости.

  9. IT-ипотека: участвуем в программе ипотеки для сотрудников IT-компаний, которая дает возможность получить льготный кредит по ставке до 5%.

И еще у нас есть различные партнерские программы лояльности.

8e2b48d421255eb0a2611f06a8cdf593.jpeg

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

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

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

В МоемСкладе есть обучение сотрудников по запросу руководителя или самого сотрудника. Есть возможность роста внутри команды, на руководящие позиции в первую очередь рассматриваются внутренние сотрудники.

32b4040dd2e0d1f985ab5f116e6edbe4.jpeg

О найме

Отвечает Анастасия Серебренникова, HR директор

Во сколько этапов проходит наём, и что на них ожидает соискателя?

В каждой вакансии мы честно пишем, что ожидает соискателя. Этапа у нас два: сначала соискатель общается с рекрутером, затем проходит проф. интервью, и мы оперативно возвращаемся с фидбэком.

Даёте ли вы тестовое задание кандидатам? Как оно устроено?

Да, конечно, наличие тестового задания зависит от направления, но чаще всего даем. 

Как отличается подход к найму в зависимости от позиции и стека?

В целом процесс у нас един для всех направлений, отличается только чек-лист вопросов и порог проходимости для каждой позиции и стека.

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

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

Кого последнего вы уволили и почему?

Не прошедшего испытательный срок программиста. Устроился удалённо, по ГПХ. Он так и не начал работать. Возможно, был занят своими делами.

Как происходит онбординг нового сотрудника?

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

Начинается адаптация, и проходит она в работе над решением реальных задач. Одновременно с этим в первые недели новый сотрудник проходит обучение по продукту: специалист показывает и рассказывает, как устроен МойСклад изнутри.

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

О команде

Отвечает Владислав Могильников, Head of Scrum

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

Мы используем гибкие практики. То, что принято называть одним общим термином Agile. В большинстве наших команд используется фреймворк Scrum, так как он хорошо лег в идеологию продуктового подхода. Идеален ли он у нас? Ну, как и везде, есть отклонения от Scrum guide, но в нашем случае все отклонения зафиксированы в Confluence команд: мы осознанные ребята. 

У нас есть и сервисные команды, в них пытаемся внедрить Kanban-практику. Тут мы в самом начале пути и пока переходим от push-системы к pull-системе.

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

Абсолютно все команды у нас end-to-end (разработчик, аналитик, тестировщик, дизайнер, SM, PO). Сотрудник закреплен и работает на одном продукте. Есть исключения в паре команд: дизайнер и SM. Некоторые из них работают на две команды. По численности все команды разные, но не превышают 12 человек.

7e632abbf8140e8d4e7a5ada627ebff4.jpeg

По каким критериям вы разбиваете разработчиков на джунов, мидлов и сеньоров?

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

Мидл умеет более-менее самостоятельно реализовать уже сформулированное решение.

А джун требует присмотра и умеет делать относительно небольшие задачи, либо работает в паре с кем-то опытным в одной задаче.

Кто чаще возглавляет команды — продуктовый специалист или технический?

Для нас термин «возглавляет» не очень подходит. Это скорее про роли в команде, и кто за что отвечает. 

Тут всё просто. Есть Product Owner — лидер продукта, отвечает за его развитие. Есть Team Lead, продуктивность команды — его зона ответственности. Есть Scrum master, он помогает команде становиться осознанней и организованней. Есть команды, в которых традиционно на одном сотруднике совмещены роли тимлида и техлида. Есть команды, где роль тимлида выполняет старший тестировщик, а есть команда, где руководителем в настоящий момент является владелец продукта.

Как часто люди меняют команды?

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

4b7dd78524e8db92edc3a1216a1ae567.jpeg

Что важнее, софт-скилы или хард-скилы?

Раньше бы сказали, что хард-скилы. Но теперь всё больше понимаем, что софт-скилы для нас не менее важны. Мы стали работать над сплоченностью команд и поняли, что бывают сотрудники, которые просто некомандные игроки и с ними приходится много работать scrum-мастеру. Стали больше внимания обращать на софт-скилы на собеседовании.

Как много собраний у вас проводится? Есть ли особые подходы к ним?

Мы работаем по Scrum, поэтому все мероприятия взяли оттуда. Плюс есть один общекомпанейский митинг раз в 2 недели, на котором CEO рассказывает о делах компании и отвечает на вопросы сотрудников.

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

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

У нас поддерживается довольно бодрый ритм работы. У неопытного сотрудника такой ритм может вызвать перегрузку, так как он еще не умеет регулировать количество задач в соответствии со своими возможностями. Мы помогаем в этом, вовремя подсказываем, что полезно притормозить и не умирать на работе.

О технологиях

Отвечает Олег Алексеев, CTO

Какие языки, фреймворки и библиотеки используются на проекте?

Мы работаем с Java, React, GWT, Vaadin, PostgreSQL, Clickhouse, WildFly, Spring, Maven, Selenium, для внутренней автоматизации используем Python, AirFlow и Metabase. Пишем программы на Kotlin и Swift для мобильных устройств на платформах Android и iOS, а для десктопа используем TypeScript и Scala под Electron.

Что вы можете рассказать об архитектуре проектов?

Наша компания разрабатывает и продаёт один продукт — онлайн-сервис для ведения учёта, автоматизации продаж и производства МойСклад. Это большой монолит, состоящий из большого количества сервисов, рядом с которыми работают уже самостоятельные микросервисы. Все это «крутится» в традиционной в наше время среде — Kubernetes. 

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

Какая у вас принята политика код-ревью?

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

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

Как тестируется код?

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

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

За структурой, шаблонами оформления и состоянием базы знаний присматривает ведущий аналитик. Наполнением нашей базы знаний занимаются все сотрудники компании. Мы собираем в неё всё, что связано с постановкой задач, описанием архитектуры, тест-планами, процессами работы и ролями в составе процессов. 

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

Каков процент легаси-кода на проекте, и как часто разработчики занимаются его рефакторингом?

Легаси-кода заметное количество: нашему проекту уже много лет. И местами всё ещё работает код, написанный в 2008 году. Процент оценить трудно, но не менее 30%. 

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

© Habrahabr.ru