Николай ДобровольскийnСоснователь и вице-президент РагаIleIs. Родился 13 июли 1975 года в Москве. В 1997-м окончил Московский институт радиотехники, электроники и автоматики (Технический университет) по специальности «Автоматизированные системы обработки информации и управления». В 2010 году прошел обучение в Гарвардской бизнес-школе, В 2013-м закончил образовательную программу Foundation and Leadership в Йельском университете.nЛауреат Национальной премии им. Владимира Зворыкина как «Лучший инновационный менеджер» (2008).nВ 2012 году в рамках Всемирного экономического форума отмечен в числе 200 лучших мировых молодых лидеров а номинации Young Global Leader.В 13 лет стал победителем всероссийского конкурса программирования.n
Николай Добровольский:n«Настоящий DeuOps-инженер должен быть отличным программистом и норошим системным администратором»
Николай, расскажите, чем вы занимаетесь в Parallels?nnОтвечаю за весь процесс разработки нашими инженерами программного обеспечения Parallels. Я руковожу BSD-центрами в России, Эстонии и на Мальте.nВообще, учитывая, что мы с моей командой вместе более 20 лет, параллельно приходилось заниматься различными вещами начинав от поиска инвесторов, привлечения и удержания ключевых сотрудников до административных вопросов, связанных с офисной жизнью. Скучать не приходится.nnКак организован ваш рабочий день?nnВсе довольно стандартно: ранний подъем, зарядка, завтрак, рабочие будни. Поскольку у Parallels 10 офисов по всему миру, приходится довольно активно перемещаться. Совещания, личные встречи с сотрудниками, ничего из ряда вон выходящего.nОткрытое ПО может сыграть важную роль в развитии ИТ-отрасли, упрощая исследовательские разработки [делая их доступными] и снижая стоимость законченных промышленных решенийnЕдинственное — стараюсь максимально оптимизировать рабочий график. Иногда провожу деловые переговоры или встречи с сотрудниками за обедом. Вообще мне здорово помогает персональный ассистент.nОна знает все о моем графике, владеет информацией о моих встречах, перелетах, визах и паспортах. Думаю, что без ее помощи мне было бы сложно со всем управляться.nОна также планирует все официальные мероприятия и обеспечивает мою явку.nnКакое программное обеспечение используете (почтовые клиенты, браузеры, ОС, редакторы, среды разработки и т.п)nnМне кажется, я пользуюсь всем. У меня iOS и Android-смартфоны и планшеты. На iOS использую встроенного почтового клиента и браузер. На Android — Exchange-клиента TouchDown и Google Chrome. Достаточно активно пользуюсь TripAdvisor, Flight Radar. Telegram, Skype, WhatsApp. Uber. Google Maps и т.д. Часто помогает Microsoft Office Lens -бесплатный удобный мобильный сканер документов, white boards и экранов презентаций. На компьютере использую Safari, Chrome, Parallels Desktop, Microsoft Office, для почты-MS Outlook.nnА облачные сервисы?nnУ нас в офисе развита инфраструктура Office 365. Помимо этого, есть Dropbox. Для бэкапа лично я использую решения от наших коллег из Acronis. Вообще видно, что все больше мы уходим в облака. Parallels не исключение. Например, наш Parallels RAS дает возможность использовать VDI и SaaS-решения для малого и среднего бизнеса. В целом динамика позитивная.nnКак организован процесс разработки — от создания кода до релиза и поддержки решения?nnВ создании любой программы, приложения или сервиса принимают участие различные ИТ-специалисты: разработчики, пишущие код, инженеры QA, проверяющие результаты разработки, системные администраторы, отвечающие за работу серверной инфраструктуры, и DevOps-инженеры, обеспечивающие корректное развертывание и функциональность созданного продукта на базе специальных хранилищ/депозитариев.nНа мой взгляд, настоящий DevOps-инженер должен быть отличным программистом и хорошим системным администратором.nИх задача не столько администрировать работу «железа», сколько стараться автоматизировать процессы, чтобы упростить действия.При этом знания в области системного администрирования также важны.nИменно по этому хорошие DevOps инженеры в прошлом хорошие системные администраторы. Наряду с алгоритмами и программированием для них важно понимать внутренние системные процессы. Если мы говорим про веб-сервисы, то им важно знать, как работают высоконагруженные системы.Очень важную роль в разработке наших решений играют тестировщики и менеджеры продукта. Мы внимательно относимся ко всем замечаниям и стараемся оперативно исправлять все критические моменты.nn— Какие инструменты (среды. ОС и т п.) и сервисы используете для разработки?nnПоскольку у нас не один программный продукт Мы используем разнообразньй инструментарий javascript, C#. С, С++, Assetiber, Python, Perl. Для организации npouecca используем продукты компании Atlassian — Jira. Confluence, Bitbucket, HipCrat. Если говорить про DevOps, то здесь Chef, Ansible и Jenkins.nБез знания хотя бы двух из этих трех слов мы вообще не рассматриваем человека, как DevOps. Возможно, он хороший человек, но это гигиенический минимум. Без него никак. Плюс, поскольку скрипты у нас пишутся в основном на Python, его знание просто необходимо.nnВ целом что такое Parallels для Linux?nnПриложение Parallels Client позволяет организовать удаленный доступ к рабочим столам персональных компьютеров, виртуальных машин или сеансам терминального сервера — как через Parallels Remote Application Server (RAS), так и напрямую через обычное RDP-соединение.nnРасскажите о вкладе вашей компании в разработку ядра Linux?nnПоскольку Parallels начинает свою историю с конца девяностых годов, в этом отношении нашей командой было сделано немало Причем я говорю обо всех инженерах, работавших когда либо и рабтающих по сей день в группе компаний Parallels. Отмечу, что большой вклад был внесен нашими коллегами из Virtuozzo.nВ разные годы го отчетам Linux — Foundation мы входили в список разработчиков, внесших наибольших вклад в код ядра Linux.nНапример, когда-то только по проекту OpenVZ у нас было сделано примерно 1700 патчей в основном ядре. Наши инженеры были отмечены Red Hat за обнаружение серьезных уязвимостей CVE-2014-0203 и CVE-2014-4483 и удостоены благодарности за обнаружение ошибок CVE-2014-5045 и С VE-2012-4508.nn А что можно сказать в целом об Open Source-решениях?nnСегодня Open Source представляет собой самодостаточную программную экосистему, способную на высоком качественном уровне решать практически весь спектр ИТ-задач в масштабах любого предприятия. На мой взгляд, открытое ПО может сыграть важную роль в развитии ИТ-отрасли, упрощая исследовательские разработки (в том числе делая их доступными даже силами специалистов-индивидуалов) и снижая стоимость законченных промышленных решений.nn Какие дистрибутивы Linux поддерживаются Parallels?nnВ новой версии Parallels Desktop 13 вы можете бесплатно создать виртуальную машину (ВМ) с одной из перечисленных ниже операционных систем: Windows 10 — Development Environment, Modern.IE — Test Environment, Ubuntu, Fedora, CentOS, Debian, Linux Mint, Android, MacOS. Кроме того, для Linux была добавлена поддержка дистрибутивов: Elementary, Kali Linux, Manjaro и Zorin. Список поддерживаемых дистрибутивов сейчас насчитывает 50 различных вариантов Linux.nnМы не можем протестировать все существующие дистрибутивы, но это не значит, что они не будут работать. Рекомендую попробовать запустить ваш любимый дистрибутив, даже если его нет в списке поддерживаемых. Скорее всего заработает, ведь Parallels Desktop создает полноценный виртуальный компьютер.nnНесколько вопросов о DevOps. Что для Parallels «работа по принципам DevOps»?nnОт команды DevOps зависит продуктивность большого числа людей. Плохой девопс способен свести на нет усилия группы разработчиков из пятидесяти и более человек. Некорректно работающая билдовая система может существенно затормозить производственный процесс.nВ этой связи для нас крайне важны способность и умение людей работать в команде. Мы стремимся к тому, чтобы наши инженеры всегда находили кратчайший путь друг к Другу и решали возникающие ситуации максимально результативно.nnКакую программную платформу для DevOps вы сделали базовой?nnДанный вопрос в определенном смысле можно считать абсурдным, поскольку девопс — это культура и практики взаимодействия разработчиков (Development) и инженеров, занимающихся инфраструктурой (Operations).nnПрограммное обеспечение для автоматизации непрерывной интеграции? Почему остановили выбор на нем?nnJenkins. Огромный выбор плагинов, с которым возможно реализовать любую смелую фантазию команды разработки, большое активное сообщество.nnНе могли бы привести пример того, как выстраиваете и сопровождаете на практике CI/CD?nnИспользуем Jenkins pipeline для версионирования конфигураций сборок продуктов.nДля больших продуктов сборки из мастера и релизных бранчей идут по расписанию несколько раз в день. Также для них есть урезанные короткие сборки, которые запускаются покоммитно по факту обновления репозитория.nДля маленьких продуктов сборки покоммитные. Предоставляем возможность любую сборку запустить из девелоперского бранча.nНа успешных сборках запускаются юнит-тесты. Оповещения о результатах сборок и тестирования по email и в Hipchat. Сборочные окружения описаны в Chef-кукбуках и terraform-скриптах, которые мы поддерживаем.nnКакие сервисы используете для реализации DevOps-решений?n
- оркестрация Terrafomi;
- контейнерная виртуализация Virtuozzo;
- для управления конфигурации контейнеров и других платформ используем Chef;
- в качестве системы непрерывной интеграции — Jenkins;
- для повышения отказоустойчивости инфраструктуры -мониторинг от Icinga;
- различные продукты от Elastic для хранения и обработки логов и визуализации событий.
В каких мероприятиях/конференциях принимаете участие?nnТрадиционно мы представлены на международных форумах и конференциях. В этом году в очередной раз были на IFA, WMC, WWDC. В России мы стараемся делиться опытом на базе крупнейших отраслевых форумов, таких как RIW, РИФ. HighLoad++, MobiiDev и других.n
Услуги девопс администратора, внедрение продуктов Jenkins, Jira, Bitbucket, оркестратор, докер и др, обращайтесь, [email protected]