Типовое рабочее место: два монитора, дорожный ноутбук, лампа, интернет
У нас очень много работы в разработке, и далеко не вся она требует присутствия в Москве, и далеко не всех разработчиков можно легко найти в столице. Поэтому принцип довольно простой: находим разработчиков в городе, где им приятно жить, снимаем там хороший и удобно расположенный офис и просто присылаем задачи. Связь по сети, еда в ближайшем ресторане по абонементу. И все счастливы. Мы — тем, что получаем «головы», которых нет в Москве, по ценам города (разница с Москвой вполне окупает аренду офиса), а разработчики могут работать у себя и путешествовать по стране.
Тестировщик в Иркутске
«Телепорты» сделаны так: можно поехать в любой другой такой же центр разработки на 4 недели на пробу поработать там. С сохранением зарплаты, и ещё гостиница и питание — за счёт компании. Если «порт приписки» Москва, то, перемещаясь в другой офис, надо ещё обязательно прочитать семинар.
Проекты, над которыми работают распределённо по стране, — от автоматизации АЭС до разного прикладного софта «Ленты», Мосгорсуда, Росстата и так далее.
Всего у нас сейчас 7 таких центров — от маленького офиса на 5 человек в бизнес-центре до большой региональной команды из 30 разработчиков и тестировщиков. Но, конечно, исторически пока больше всего разработчиков и тестировщиков в Москве — около 250 человек (это один из самых больших отделов в КРОК). Однако скоро процент работающих в других городах грозит приблизиться к половине. География довольно обширная: Москва (включая отдельный небольшой офис в Троицке), Петербург, Нижний Новгород, Самара, Иркутск, Пермь, Краснодар.
О центрах в общем
Как правило, это офисы в бизнес-центрах класса B+ с охраной, ресепшен, столовой или несколькими кафе, где мы оплачиваем обеды. Где-то уже есть теннисный стол и тренажёры, как, например, в Москве и Питере. Везде обязательно устройства ВКС для телеприсутствия на совещаниях (по скайпу сложнее работать). Интернет — полноценный туннель через корпоративную сеть: все сервисы те же, что и в Москве. Шифрование, защита, маршрутизация, общая телефония, локальная адресация между разными городами. Полный соцпакет, командировки в Москву до 2 раз в год в среднем (на первичное обучение, на Новый год и на летний корпоратив в честь дня рождения компании), медстраховка, питание, спортзал, обучение английскому. Никаких «продавцов» — только инженеры, тестировщики и разработчики. Ещё пара аналитиков и архитекторов, но обычно аналитику надо много ездить, поэтому аналитики сидят в Москве.
В Петербурге офис класса B+ находится на Петроградской стороне. Этот центр самый давний после Москвы, развивается с 2009 года. Руководители выросли из разработчиков прямо там. В Петербурге очень много местных заказчиков — там большие проекты для АЭС, «Ленты» и др. Еда в «Траттории» по предоплаченным картам. В команде около 30 человек.
Офис в Петербурге
В Нижнем Новгороде офис на 15 человек. В регионе очень много крупных компаний, которые формируют рынок труда, — те же Intel и MERA, поэтому очень много хороших разработчиков. Питаются в столовой. Офис в центре, недалеко от набережной Оки, на пространстве бывшей Молитовской льнопрядильной фабрики.
Офис в Нижнем Новгороде
В Иркутске всё случилось по-другому: к нам пришла работать сразу готовая команда, более 20 человек. И ещё в старую команду под новым крылом стали возвращаться те, кто «улетел» на другую работу по финансовым условиям. Про этот центр будет подробнее чуть позже.
В Перми хороший поток кандидатов, хорошо работают вузы, есть крупные ИТ-компании. Центр только открылся, там пока 2 человека на 50 квадратных метров, команда только начинает формироваться. Еду пока просто компенсируют (что, по мнению пермских разработчиков, уже гораздо лучше, чем в любой другой ИT-компании в Перми), но на первом этаже бизнес-центра уже открылось кафе-ресторан — сейчас прорабатываем вопрос сотрудничества. Кстати, помещения в бизнес-центрах мы отсеиваем не в последнюю очередь по туалетам (у меня уже целая коллекция фотографий отхожих мест из БЦ) — здесь всё самое аккуратное по стране, плюс в километре от офиса на территории бывшего советского завода «Морион» ныне располагается целый кластер из ИТ-компаний.
Место тимлида в Перми
Краснодар, если кто не в курсе, это самый большой регион РФ после Москвы и Петербурга по численности населения. Туда подтянулись все разработчики из Крыма, которые не могут уже работать на зарубежку дома. Там целые команды освобождаются. Центр только-только открыли в деловом центре на пересечении Красных Партизан и Тургенева, питание в здании.
Краснодарский офис в бизнес-центре «Сенат»
Офис в Краснодаре
В Самаре центр был открыт в прошлом году, пока команда там небольшая — всего трое человек. Есть места для новых сотрудников (самарские разработчики, мы вас ждём!). Офис в современном бизнес-центре с очень крутой столовой.
Столовая в Самаре
При этом из географии пока выпали многие регионы, например, Казань, Новосибирск и Екатеринбург (по идее, там очень много ИТ-работы и специалистов, но нельзя объять необъятное). Пока остановились на том, что если вдруг какая-то команда надумает прийти к нам, готовы ассимилировать по иркутскому сценарию.
Что и на чём разрабатываем
80% заказа приходит из госсектора. Конечно, в отрасли есть некоторая проблема с согласованиями, есть некий «нестрогий Agile», и часто нет чёткого результата работы при странном тендере. Но в целом всё разруливает московский офис, и на разработчиков падает довольно точное ТЗ.
В Перми, например, мы уже 10 лет делаем электронный документооборот, на нём вся администрация живёт. Часто работаем на нефтянку из тех же Краснодара и Челябинска — из тех, кого можем назвать, — «Сибур», плюс ещё пара крупных компаний. Делаем переписи из Нижнего, они очень интересные. Иркутск делает автоматизацию работы московских судов общей юрисдикции, Самара помогает. Там же было расписание электричек ЦППК.
Практически всегда работа идёт или в MS Visual Studio или в IDEA от Jetbrains. Например, в системе документооборота используются оракловые базы данных, потом идёт EMC Documentum, потом поверх КСЭД (наш фреймворк для СЭД, который развивается из Петербурга).
Вот рассказ одной из представительниц со стороны разработчиков, Татьяны:
Концепция платформы КСЭД вынашивалась годами. К реализации приступили достаточно спонтанно, в условиях ограниченных временных и человеческих ресурсов и с огромными планами по использованию системы в скоро грядущем проекте. Поэтому решили доработать и усовершенствовать свои уже имеющиеся наработки, о чём на текущий момент не жалеем. К использованию Spring Framework пришли не сразу, а спустя 1,5 года. К этому моменту разработчики уже прониклись потребностями и требованиями к системе, поняли, что написание своего IoC нецелесообразно. Катализатором решения по встраиванию Spring также являлась необходимость срочного запуска параллельной разработки 8 подпроектов. Они разрабатывались более чем 20 разработчиками, и у всех было одно общее ядро разрабатываемой системы, подпроекты же привносили свои особенности реализации общих функций. Также в платформе разработан свой движок для реализации потоков рабочих процессов (workflow). Находясь в состоянии переполняющей радости от работы над платформой, разработчики не заметили, как написали своё решение для реализации workflow. И сейчас мы можем предлагать заказчикам workflow любой сложности в сжатые сроки.
Не так давно мы с одним из заказчиков поняли, как бы было круто, чтобы обычные пользователи (например, сотрудницы бухгалтерии) могли зайти в Excel и несколькими правками ячеек изменить маршруты документооборота в компании (каким путем и кому доставлять документ для правки или согласования). Эту возможность реализовали интеграцией системы с ODM.
Также мы старались, чтобы GUI нашей системы всегда выглядел модным и современным. ЕМС Documentum на тот момент предлагал олдскульный интерфейс на JSP с перегрузкой страничек по каждому клику пользователя. Поэтому мы создали framework для разработки GUI систем на КСЭД с применением ExtJS. Также платформа КСЭД умеет распознавать печатный текст, генерировать и считывать штрих-коды благодаря использованию ABBYY RS и ASPOSE". Ещё одной особенностью нашего решения является возможность разнесения процессов сбора, обработки и построения отчётов во времени. То есть пользователи видят отчёт (скажем, по исполнительской дисциплине) уже через 3–5 секунд.
Вообще, это нереально круто — создавать платформу для разработки высоконагруженных систем (да-да, я не преувеличиваю, наши решения на КСЭД получали награды EMC как крупнейшие в Европе). Чувствуешь гордость и бешеный драйв :) С другой стороны, ответственность и масштабы систем не дают отдохнуть иногда не только во время рабочего дня, но и ночью. Так как наши решения используются в разных часовых поясах (например, в Шанхае и Вене), и даже там случаются авральные отчётные периоды, и НГ там празднуется меньше. Но я ничуть не жалею сил и лет, отданных этим проектам. Они помогли мне вырасти и профессионально, и личностно, сильно расширили число моих профессиональных связей.
Тестировщики часто работают с оборудованием: всякие сканеры бюллетеней, медкиоски, айпады для руководителей предприятий.
Спеки на железо рабочего места примерно такие: монитор 2 штуки х 23", ПК OptiPlex 7040 Mini Tower (i7-6700, 2 x 8 Гбайт, 256GB Solid Drive, 2nd 1TB 2.5 inch SATA (7200 Rp, либо ноутбук Latitude E5550 i7-5600U 15,6«FHD, 16GB,256GB SSD, HD5500, Ubuntu 14.04, 3Y NBD.
Бывает ещё удалённая работа, потому что привязка к результату, а не процессу.
Иркутский пример подробнее
Офис на первом этаже здания исторический, где команда, пришедшая в КРОК, работала до слияния. Это просто выкупленное помещение в жилом доме, где когда-то был, кажется, супермаркет. Единственный на сегодня офис за пределами бизнес-центра. Раньше команда работала на крупную нефтяную компанию снаружи, были все — аналитики, тестировщики, внедренцы. После попадания в КРОК члены команды присоединились к существенно большему разнообразию проектов: стали делать ещё и перепись, и суды, и много чего ещё. Внутри офиса два зала с разработчиками и тестировщиками. Ещё есть отдельный кабинет для совещаний и кухня.
Наши там активно докручивают фичи к этому самобытному офису по своей инициативе. Например, Виталий сделал умный туалет. До этого основная проблема была с занятостью туалета (их теперь два), было сложно попасть. В итоге он спаял датчик на Ардуине: с инфракрасного датчика снимается занятость помещения, плюс есть приложенька — смотреть, занято или нет и сколько человек там времени уже провёл.
Среда разработки на локальных машинах, не в туннеле. Интернет быстрый.
Стандартное рабочее место разработчика в Иркутском центре разработки
В Иркутском центре разработки работает около 25 человек. Несколько коллег поделились спецификой своей работы.
Так, Павел (ниже на фото) работает над переписью:
С 1 июля по 15 августа по всей России проходит сельскохозяйственная перепись. Задача — поддержка АС ВСХП-2016. Специалисты офиса занимаются технической поддержкой Дальнего Востока и Сибири, так как географическое положение позволяет выполнять свою работу в комфортное рабочее время.
Денис тестирует подсистемы для этого проекта:
Ищу несоответствия документации и реализации подсистем, проверяю, чтобы корректно работал контроль. Например, чтобы переписчик не смог ответить, что у него пшеницы озимой твердой больше, чем пшеницы озимой вообще. Или чтобы в системе была возможность заявить о наличии нескольких гектаров промышленной конопли, или верблюда где-нибудь в Челябинской области.
Сейчас, кстати, переписчики будут ходить уже не с кипой бумажных анкет, а вот с таким мобильным устройством. Все данные будут автоматически попадать в головную систему с появлением интернета.
Павел:
С московскими коллегами занимаюсь поддержкой и модернизацией ПК «Судебно-арбитражное делопроизводство». Как видно из названия комплекса, он представляет собой единую систему учёта и контроля движения дел и документов. В рамках проекта я дорабатываю как само приложение, так и судебную статистику.
Сергей:
Большая часть сотрудников иркутского офиса занята в проекте электронного документооборота для производственной компании. В нашем офисе на проекте работают аналитики, разработчики, тестировщики, внедренцы. Сейчас система находится в фазе массового тиражирования, подключены 30 организаций от Хабаровска до Москвы. До конца года планируется подключение ещё нескольких филиалов. Системой ежедневно активно пользуются порядка 30 тыс. пользователей. Проект реализован на нашей собственной разработке — Корпоративной системе электронного документооборота (которая базируется на EMC Documentum). Из наиболее интересных доработок стоит отметить распределенную архитектуру системы — в каждом филиале развёрнута отдельная инсталляция, обмен информацией между организациями реализован на базе спецификации JMS. Брокеры сообщений также распределены по филиалам и объединены в единую сеть, что позволяет повысить надёжность доставки сообщений. Другим интересным подпроектом является мобильный клиент для системы документооборота. Это прежде всего решение для топ-менеджеров, простое в обращении и позволяющее руководителю быть в курсе производственной ситуации, где бы он ни был — на рабочем месте или на выездном совещании. Сейчас мобильный клиент реализован для платформы WinRT и WPF, в планах перенос на другие мобильные платформы.
Илья:
Проект, на котором я работаю, — это Централизованная система обработки данных для одного крупного госведомства. Эта система предназначена для обеспечения обработки и хранения данных регулярных статистических наблюдений, включая первичные, на федеральном уровне на основе единой НСИ; обеспечения единых механизмов обработки данных в различных статистических наблюдениях; обеспечения разграничения прав доступа к данным и детального протоколирования действий пользователей; обеспечения централизованного планирования и контроля проведения статистических наблюдений; повышения скорости реагирования на изменение методологии за счёт одной точки развёртывания программного обеспечения.
Заказчик оперирует огромнейшим количеством данных. Не решусь назвать точное количество, но думаю, это десятки, а то и сотни терабайт данных в год. Одним из решений, как с этим жить, было использование базы данных Cassandra. Работа с такой NoSQL базой включает в себя определённые ограничения в виде отсутствия join-ов, невозможности сделать выборку по любым полям, каким хочется, в Cassandra есть много ограничений на то, как писать условия. Также необходимо мириться с дублированием данных, и если вдруг появилось новое требование, то надо быть готовым, что, возможно, придётся создать ещё одну таблицу.
Анатолий:
Я работаю над модулем публикации видеозаписей судебных заседаний — это необходимо для просмотра удалёнными участниками в рамках личного кабинета, который появится в конце этого года на внешнем портале Мосгорсуда. Есть вероятность, что некоторые громкие дела будут транслировать онлайн, например, для СМИ. Если электронное правосудие будет и дальше развиваться, то, думаю, лет через пять будет возможно супершоу вроде: «В прааавом углу зааала — Витька Косой, серийный убийца и алкоголик, а также злостный компьютерный пират и сын депутата! В леееевом углу заала — Иннокентий Дмитриевич, безжалостный прокурор года! Смотрите на канале московских судов общей юрисдикции. Шучу, конечно Но, работая над проектом, осознаю, насколько сильно меняется формат работы такой, казалось бы, бюрократической отрасли. Настоящий переворот. Очень приятно быть к этому причастным.
Ссылки
- Тут можно почитать детально про проект в Мосгорсуде и 35 районных судах
- Проект на базе КСЭД КРОК для СИБУРа
- Пост про то, как мы разрабатываем тяжёлый прикладной софт
- И ещё немного про собственные разработки КРОК в интервью
Автор: КРОК