Open source уже не просто общемировой тренд, а естественное направление для компаний, которые хотят иметь полный доступ к своему программному обеспечению, чтобы адаптировать его под себя, полностью контролировать свои данные и при этом привлекать к развитию и улучшению продукта контрибьюторов со всего мира. Если бизнес никогда не использовал открытое ПО, но хочет для себя его открыть, то как это сделать?

О том, как оценить потребности бизнеса, подобрать подходящее решение open source и стоит ли внедрять открытый код просто потому, что это тренд, рассказывает генеральный директор финтех-компании RBK.money и фаундер IT-компании Osnova Денис Бурлаков.

Денис Бурлаков

Open source широко используется в мире уже более 20 лет. Это программное обеспечение с открытым исходным кодом, которое, в отличие от проприетарных решений, прозрачно для пользователя. Каждый может заглянуть «под капот» продукта и убедиться, что от него ничего не спрятали, в коде нет уязвимостей или неприемлемых для пользователя функций. А если и найдет, то это даже хорошо, ведь их сразу можно будет устранить. И каждый может создать IT-инфраструктуру под нужды своей компании, собрав ее, как лего, из нужных модулей.

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

В России решения на открытом коде также набирают популярность. Хотя пока, по данным Red Hat, доля таких разработок в среднем в мире составляет менее 1%. Для сравнения: в США – 23%, в Китае – 10%. Аналитики из McKinsey & Company отмечают, что внедрение открытого кода и переход из категории пользователей в категорию разработчиков своего отраслевого ПО становятся для компаний факторами успеха и роста. Известные игроки – Facebook, LinkedIn, Spotify и Uber – постепенно открывают код своего ПО.

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

Ведь код подвергается тщательным проверкам и анализу не просто группы разработчиков, а огромного IT-комьюнити, как авторов, так и пользователей, чего не может обеспечить обычная компания-разработчик. И это делает использование программного обеспечения с открытым кодом привлекательным, а процесс его совершенствования – постоянным.

Найти проекты open source просто: достаточно зайти в открытые репозитории GitHub и выбрать продукт, наиболее подходящий для вашей компании. Все проекты на открытом коде предлагаются бесплатно. И тут встает вопрос: что выбрать и из каких соображений исходить, если вы хотите использовать открытое ПО в своем бизнесе?

1. Большой секрет для маленькой компании

Чтобы перейти на open source в ежедневной практике, необходимо убедиться, что вашей компании не требуются какие-то специфические и критически важные решения, которые либо не представлены в открытом коде либо требуют специальной разработки из-за наличия у вас каких-то секретов – военных и так далее. Это главное стартовое условие. В остальном пользователь абсолютно свободен. Дорабатывать продукт можно собственными силами или отдать на аутсорсинг.

Сегодня переходить на open source заставляет сама жизнь. Если в компании задумались о криптографических алгоритмах, то другого пути и не будет. Госструктуры настаивают на их открытости. Считается, что люди сами должны определить, будет ли им нужен продукт, будет ли он работать.

Еще более предсказуемая ситуация с операционными системами. Современные серверы, как правило, работают на открытом коде – на Linux или FreeBSD. В этом случае больших трудностей при переходе на open source не будет. Все уже давно приняли условия игры и поняли, что эти операционные системы работоспособны, хорошо развиваются, а главное, их много кто поддерживает. Например, Intel активно вкладывается в развитие Linux и других серверных систем.

Еще лет пятнадцать назад хороших решений open source уровня enterprise, то есть зрелых с точки зрения бизнеса продуктов, было не так много. К признаками зрелости я отношу не только развитую кодовую базу, но и наличие квалифицированной поддержки, документации, сопровождение, вообще, всю инфраструктуру, которая входит в понятие «продукт». Сейчас у многих опенсорсных решений это все присутствует.

Решение open source

2. Все зависит от задачи

Главное – правильная постановка задачи. Сегодня никто не придет и не скажет: «Хочу open source!» На практике процесс внедрения начинается с поиска системы, которая удовлетворяет определенным требованиям компании. Ее специалисты оценивают рынок на предмет имеющихся предложений, выбирают те технические компоненты, которые будут использоваться. В итоге рождается проект решения, который в последующем влияет на итоговый выбор.

В случае с банками, например, могут быть особые требования к безопасности, надежности. В результате будет выбрана IBM mainframe, больше ничего не подойдет. Может быть важна географическая распределенность: в этом случае система выстраивается из расчета дата-центров, наличия оборудования на рынке, возможностей облака. Oracle, например, в облаке не работает, ему необходимо реальное «железо». А Postgres, наоборот, лучше использовать с облаком.

Таких поставщиков сегодня очень много. Какая-то компания может решить, что Postgres не удовлетворяет всем их потребностям, необходимо что-то более масштабное и нужно возвращаться к Oracle или IBM. Но это не получится, просто потому, что нет необходимых средств. При этом нужного готового опенсорс-решения не существует, предстоит придумывать и собирать свой сервис из отдельных компонентов.

3. Свести дебет с кредитом

Конечно, одного желания перейти на открытый код мало. Компании предстоит оценить выбранный продукт. Действительно ли в их случае такое решение будет экономически обосновано? Изучить документацию, профильные ресурсы в сети или пригласить для консультации компанию, которая специализируется на поддержке таких систем. В последнее время, выбирая между enterprise и open source, нередко останавливаются на втором: переход на открытый код в итоге оказывается дешевле.

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

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

4. Если не деньги, то время

Экономия – не единственный важный фактор. Если речь идет о критических задачах, специализированных решениях, проще и быстрее заплатить специалисту, а затем взять что-то готовое. На рынке может не быть открытых систем с нужным качеством, которые в состоянии обеспечивать все необходимые требования. Кроме того, сейчас часто применяется маркетинговый ход: пользователям предлагаются бесплатные опенсорс-варианты enterprise-продуктов. Но в них нет важных бизнес-функций, без которых бизнес работать не может и которые поставляются за дополнительную плату.

Важно увидеть в рассматриваемой системе нужные вам компоненты, понять, насколько она в целом удовлетворяет вашим требованиям. А они могут быть очень специфическими. Например, для нас важны требования по прохождению PCI DSS. Платежная система, которая обеспечивает полный цикл, но не содержит PCI DSS, не позволит пройти отраслевую сертификацию, так что нам нельзя использовать продукт, созданный «на коленке».

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

5. Цените свои ресурсы

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

Переход на open source предполагает переустановку рабочих машин на новые решения, настройку на него всего офисного оборудования. За этим последует переобучение персонала. И, конечно, помните о необходимости организовать техподдержку сотрудников. Если в компании есть люди, которые все настроят, переведут, обучат и будут вести коллектив за собой, смело переходите на ПО с открытым кодом.

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

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

Одним словом, смотрите на свой бизнес, анализируйте, и если open source вам подходит, то смело используйте открытые решения: будьте уверены, что вы окажетесь в тренде. И дело не только в том, что вы стали обладателем современного, гибкого и безопасного решения. Главное, вы будете знать, что оно всегда полностью находится под вашим контролем, вы можете на всех этапах контролировать все без исключения процессы, происходящие в системе. Это не только современно, но и выгодно.


Новые комментарии:

Ваш адрес email не будет опубликован. Обязательные поля помечены *