Игорь, расскажите о вашем профессиональном пути: как вы начали работать с Open Source, и что стимулировало ваше развитие в этом направлении?
В этом году исполнилось 20 лет с начала моей профессиональной карьеры, которая стартовала на первом курсе Тверского государственного университета, где я проходил обучение в области прикладной математики и кибернетики. Среди моих задач было сетевое администрирование в интернет-департаменте университета, поддержка внутренних сетей и связь ректорских служб с учебными корпусами. В этот период я впервые столкнулся с концепцией Open Source (программное обеспечение с открытым исходным кодом, который доступен всем для просмотра, использования, изменения и распространения). Это была возможность не только использовать программы как готовые продукты, но и изучать их внутреннюю структуру, а также перенимать опыт тех, кто их создавал.
Первый осязаемый вклад в этом направлении я сделал около 15 лет назад, когда начал применять язык программирования Ruby. Чтобы продемонстрировать свои навыки при устройстве на работу, я написал несколько небольших библиотек и выложил их в GitHub. Эти проекты послужили отправной точкой для моего развития в области открытого программирования.
В 2011 году я полностью перешел на фриланс в веб-разработке, что дало мне опыт работы над разными проектами и позволило развивать новые навыки. Активное участие в Open Source-сообществе также способствовало моему профессиональному росту. Во время одного из проектов мы с партнером решили объединить усилия и основать собственную компанию JetRockets. С тех пор ее штат вырос до 70 специалистов, а мой путь от разработчика до технологического директора был наполнен множеством вызовов и достижений.Как DevOps-сервис помогает «разгрузить» высоконагруженные системы BPMSoft
Поделитесь, какие интересные проекты вы реализовали на основе технологии Open Source.
В моей работе было немало увлекательных проектов, но особенно выделяю свой вклад в развитие Safari Portal – программное обеспечение для построения маршрутов, которое позволяет туристическим агентствам и туроператорам создавать интерактивные цифровые маршруты и удобные для печати предложения в формате PDF за считанные минуты. Проект получился уникальным в своей сфере и совершил революцию на рынке CRM-систем для туристических компаний.
Кроме того, я участвовал в разработке инструмента для взаимодействия с Docker-контейнерами, который называется Kamal. Программа позволяет быстро и легко разворачивать приложения за счет автоматизации процессов настройки и управления контейнерами. Она использует простые команды для создания, обновления и управления приложениями, а также обеспечивает гибкость через поддержку разных серверов и облачных платформ. Такие возможности позволяют инструменту легко интегрироваться с любой инфраструктурой.
В сферу моих интересов входит не только написание кода, но и менторство, поэтому я стараюсь отвечать на вопросы коллег и делиться знаниями на конференциях, например, на RubyRussia[1] и других.
Как изменилось отношение бизнеса к открытым программным решениям за последние 20 лет?
За последние два десятилетия Open Source прочно вошел в предпринимательскую среду. Согласно отчету за 2023 год[2], 80% опрошенных компаний сообщили о росте использования открытого программного обеспечения по сравнению с предыдущим годом. В этой трансформации ключевую роль сыграло не только возросшее доверие к качеству и безопасности таких решений, но и появление целых бизнесов вокруг них. Сейчас многие организации активно участвуют в развитии открытого кода и строят на этом успешные модели монетизации. Например, веб-сервер Nginx изначально был создан для внутренних нужд портала Rambler. Затем он стал отдельным продуктом, который сегодня обслуживает более 30% всех веб-сайтов в мире. Основной продукт компании доступен бесплатно, а монетизация происходит за счет предложения премиум-версии. Она включает в себя расширенные возможности, такие как балансировка нагрузки, мониторинг, защита и круглосуточная техническая поддержка. Пример показывает, что бизнес-модель Open Source может быть успешной, если основывается на предоставлении специализированных услуг.
Другой показатель успешности использования открытых решений в корпоративной среде — это система управления базами данных (СУБД) PostgreSQL. С ее помощью можно проводить аналитику как сайтов и приложений, так и больших корпоративных систем. Например, в этой базе можно хранить информацию о пользователях, транзакциях или продуктах, а затем быстро получать нужные данные для работы приложения или анализа. Такие возможности делают систему особенно привлекательной для бизнеса. Согласно исследованию Stack Overflow[3], в 2024 году PostgreSQL стала самой популярной СУБД. Эта тенденция привела к образованию компаний, которые специализируются на внедрении и поддержке системы. Они предлагают комплексные решения для бизнеса — от переноса данных до настройки инфраструктуры под специфические задачи. Программа PostgreSQL сейчас внедряется в крупные предприятия и предлагает поддержку полного цикла: IT-аудит, консалтинг, разработка, администрирование, консультирование или обучение.
Подобные кейсы показывают важный тренд: бизнес не только перестал бояться открытого ПО, но и активно участвует в его развитии.
Как компании могут наилучшим образом воспользоваться преимуществами открытого программного обеспечения для повышения эффективности своих IT-решений?
Одно из главных достоинств такого программного обеспечения — это возможность сократить расходы, так как лицензии приобретать не требуется. По данным компании Sirius, внедрение и поддержка Open Source может быть на 10–15% дешевле по сравнению с коммерческими продуктами[4]. Благодаря этому сэкономленные средства можно использовать на другие приоритетные задачи, такие как повышение квалификации сотрудников или обновление инфраструктуры.
Открытый код предоставляет возможность адаптировать программы под специфические нужды бизнеса, что особенно важно для уникальных проектов. Применение готовых библиотек и фреймворков ускоряет создание новых решений, так как позволяет сосредоточиться на разработке ключевых функций, а не на базовых элементах.
Кроме того, такие системы обеспечивают высокий уровень защиты, поскольку компании могут самостоятельно проверять код на наличие уязвимостей и контролировать безопасность данных. Активная поддержка сообществ разработчиков позволяет оперативно устранять ошибки и внедрять улучшения, а гибкость этих решений делает их оптимальными для организаций, стремящихся к росту.
Что, по вашему опыту, нужно учесть, чтобы интеграция Open Source в инфраструктуру компании прошла успешно?
Внедрение подобных решений в корпоративную среду — это сложный и многогранный процесс, он требует тщательной подготовки и продуманного подхода. Наиболее успешной будет поэтапная интеграция с четким разграничением элементов инфраструктуры: тех, которые можно перевести на систему открытого ПО, и те, которые нельзя. Также компании следует провести аудит существующей IT-структуры и определить, какие системы можно заменить на Open Source аналоги без ущерба для безопасности и стабильности.
К примеру, это могут быть системы управления базами данных, веб-серверы или системы виртуализации. Кроме того, важно привлекать внутренних или внешних экспертов, у которых уже есть опыт взаимодействия с открытым ПО. Такие специалисты не только помогут разработать план перехода, но и предоставят поддержку на каждом этапе. Стоит учитывать, что Open Source решения требуют внутренней экспертизы. Поэтому компании должны подготовить свои команды к работе с новыми технологиями через обучение.
Один из важнейших элементов успешной интеграции — это создание планов по поддержке и обновлению внедренных решений. Наличие плана регулярного мониторинга системы позволит избежать рисков, связанных с устареванием технологий или прекращением поддержки.
С какими рисками сталкиваются компании, внедряющие подобные решения?
Один из основных рисков — это непостоянство поддержки со стороны сообщества разработчиков. Большинство Open Source решений развиваются благодаря вкладу отдельных разработчиков и энтузиастов, поэтому существует вероятность, что со временем проект может перестать поддерживаться. В такой ситуации компания может остаться с продуктом, который больше не обновляется.
Другим риском является выбор неподдерживаемых или малоизвестных решений. Некоторые проекты могут оказаться недостаточно зрелыми для использования в корпоративной среде, особенно если они не обеспечивают необходимый уровень безопасности и совместимости. Следует иметь в виду, что переход на Open Source требует существенных ресурсов для обучения сотрудников и адаптации инфраструктуры.
Наконец, существует риск того, что решения могут не соответствовать корпоративным стандартам безопасности или требованиям к масштабируемости. Это особенно важно для компаний, работающих с конфиденциальной информацией.
Что может помочь минимизировать эти риски?
Компаниям следует придерживаться ряда проверенных практик. Во-первых, важно проводить тщательный аудит всех Open Source решений. Это позволит оценить их зрелость, активность сообщества и наличие коммерческой поддержки. Компаниям стоит обращать внимание, насколько регулярно обновляется выбранный продукт, и есть ли у него долгосрочные перспективы развития.
Во-вторых, я рекомендую выстраивать прочные отношения с вендорами и консультантами, которые имеют опыт работы с подобными решениями. Так компания обеспечит себе стабильную поддержку и экспертизу, необходимую для эффективного использования продукта. Важным элементом является также создание внутренней команды, которая будет заниматься управлением и развитием Open Source решений.
Компании должны предусмотреть планы по мониторингу безопасности своих Open Source решений. Регулярные проверки уязвимостей и своевременное обновление ПО помогут сократить риски и защитить бизнес от возможных угроз.
Какие тенденции в развитии Open Source в корпоративной среде мы можем ожидать в ближайшее время?
Уже сейчас мы наблюдаем значительный рост внедрения Open Source в корпоративной среде, что связано с поддержкой крупных IT-вендоров и улучшением качества продуктов. Особенно заметен рост интереса к облачным платформам, таким как OpenStack, они обеспечивают гибкость и экономию на инфраструктуре. Эта тенденция будет продолжаться.
Компании активно инвестируют в искусственный интеллект — уже 92% разработчиков применяют ассистенты для кодирования на его основе.[5]
Растет популярность продуктов с двойным лицензированием, где базовые версии доступны бесплатно, а корпоративная поддержка и дополнительные функции оплачиваются. Это позволяет компаниям оптимизировать расходы и сохранить доступ к профессиональной поддержке.
Использование Open Source дает бизнесу возможность сократить затраты на лицензирование, быстрее адаптироваться к изменениям и минимизировать риски зависимости от поставщиков. Открытые решения также способствуют развитию профессиональных сообществ, где разработчики обмениваются опытом и знаниями. Это стимулирует инновации и помогает компаниям оставаться конкурентоспособными на мировом уровне.
Автор: Кирилл Добронравов