Зачем Postgres Professional ?
Прошлом немногим больше года, с тех пор как я написал вот эту заметку про Национальную СУБД. Подошла пора написать, что удалось сделать в области субд-строения за это время.
Трое ведущих разработчиков PostgreSQL, сооснователей компании: Александр Коротков, Федор Сигаев, Олег Бартунов.
За это время прошли две большие российские конференции по постгресу (ставшие ежегодными), причем последняя в начале февраля собрала более 400 человек и на ее открытии выступил министр минкомсвязи Никифоров, мы организовали компанию Postgres Professional, которая сумела за три месяца стать узнаваемой в российском айти-сообществе и выиграть конкурс минкомсвязи в категории СУБД, а также стать спонсором крупнейших международных конференций по постгресу в Канаде и Австрии. У нас отличный офис, растущая команда, большие планы по разработке постгреса, расширению списка клиентов, продвижению постгреса, созданию отрасли субд-строения, науки и образования.
Это все более-менее укладывается в образ стандартной коммерческой айти-компании, однако самое главное остается "за кадром", а именно, ответ на вопрос, зачем нам нужно было создавать компанию для продвижения в России открытой и абсолютно доступной СУБД. Я всегда был и остаюсь приверженцем опенсорса. Я и мои коллеги в сумме имеем около 60 лет экспертизы в постгресе (недавно нашел свое первое официальное письмо в рассылку хакеров постгреса от 1995 года, то есть, я уже 20 лет в строю :), все это время мы работали в разных компаниях и занимались разработкой постгреса на общественных началах изредка получая спонсорскую помощь от коммерческих компаний. Мы выступали на конференциях, читали лекции, проводили семинары, нас приглашали в компании что-нибудь починить или настроить, практически на наших глазах постгрес в России стал популярной СУБД с хорошей репутацией. Многие большие компании стали использовать его в своей работе, наш вклад в популяризацию постгреса я считаю довольно заметным, ибо еще в 1999 году я настоял, чтобы создававшийся тогда портал Рамблер использовал постгрес, а не Оракл. Рамблер много сделал для развития постгреса, в частности, он поддержал наши первые работы по расширяемости постгреса, эффективную работу с массивами и полнотекстовый поиск, но самое главное - это то, что мы смогли стать ведущими разработчиками (major contributor) постгреса. Глядя на Рамблер, многие компании стали использовать постгрес.
Однако, я все время осознавал, что что-то у нас идет не так, мы не масштабируемся, нас как было несколько разработчиков в России, так и остается. Нет сложившегося рынка постгресовых специалистов (прикладных разработчиков и администраторов), нет профессиональной поддержки, что мешает активному продвижению нашей прекрасной субд в энтерпрайз рынок. 4 года назад, когда был аннонсирована НПП (национальная программная платформа), я выступил на круглом столе "Свободное ПО: переход к реальным действиям" с предложением использовать постгрес в качестве национальной субд и одной из основных проблем назвал нехватку отечественных кадров в области субд-строения. Однако, ничего положительного сделать мне не удалось, несмотря на то, что тогда меня многие поддержали и даже приглашали участвовать в разных конкурсах и программах. Ничего не получилось, разве что я получил прививку от всего этого процесса. Где-то в 2013 году у меня уже стало созревать понимание, что без создания собственной компании не обойтись. На этот шаг меня подталкивали мои друзья и некоторые активисты постгресового сообщества. Я же со своей стороны не мог решиться, так как считал себя законченным опенсорсником и опасался мира бизнеса. Я был свободен в своих мнениях и решениях, я мог позволить себе заниматься интересными проектами и общаться только с теми людьми, которым симпатизировал. Летом 2014 года после первой летней конференции по постгресу в Питере я просто осознал необходимость "лечь под танк" и создать структуру, на тот момент центр компетенции, так как объективно если кому и затевать такое дело, то только мне.
Вот каковы были мои соображения. Во-первых, назревали санкции, которые могли бы привести к печальным последствиям в большом бизнесе, который практически весь завязан на коммерческие субд "оттуда", и надо было иметь возможность предложить не только рабочую альтернативу в виде свободного постгреса, которому никакие санкции не страшны, но и иметь реальную экспертизу в разных его подсистемах, чтобы при самом плохом сценарии развития событий мы могли бы продолжать развивать и поддерживать постгрес. Во-вторых, у меня возникли личные мотивы для существования постоянного и надежного дохода.
Кроме того, понимание вектора развития информационного общества говорило мне, что время коммерческих субд проходит и требуются совершенно новые субд, создание которых не под силу в рамках одной компании, в рамках одной страны, и единственной возможностью является использование свободной и открытой модели разработки, когда используется экспертиза большого международного сообщества. Появление целого класса новых открытых субд (их уже больше сотни), которые разрабатываются в небольших и подвижных компаниях, говорит о том, что времена монстров типа Оракла, Микрософта, IBM уже проходят, ибо эти монстры не смогли уловить ветер перемен и выпустить новые продукты для нового класса задач. Все эти новые субд при всей своей привлекательности относятся к нишевым базам данных, при том, что существует потребность в универсальной и доступной субд, которая могла бы заменить коммерческих, неповоротливых гигантов. Постгрес является очень хорошим кандидатом на такую субд, однако за последнее время наметились не очень приятные тенденции среди разработчиков, а именно, то первое поколение разработчиков стало стареть, конечно, появились новые лица, но их все еще мало для больших проектов. Современный опенсорс изменился, стал профессиональным. Практически все ведущие разработчики постгреса работают фулл-тайм в каких-либо компаниях, которые делают бизнес на постгресе. Из настоящих опенсорсников остались мы, для которых постгрес оставался интересным проектом для души. Но новых российских разработчиков не появлялось и связано это с очень высоким уровнем входа в проект, на преодоление которого не каждый программист в России может выделить ресурсы. Таким образом, единственный путь для роста числа разработчиков - это создание структуры, в рамках которого можно было воспитать новых разработчиков. Я назвал это поначалу центром компетенции, интуитивно боясь коммерциии и наивно надеясь как-то получить помощь от государства, но потом понял, что наше государство просто не знает как работать с опенсорсом и проще работать с частным бизнесом. Так центр компетенции потихоньку трансформировался в образ компании, которая должна зарабатывать своей компетенцией на создание команды разработчиков.
Дальше все пошло стандартной дорогой. Я поговорил со своими друзьями, мы обговорили условия на которых они будут готовы подписаться под проект создания компании, и я начал целенаправленно искать бизнес-партнера, который смог бы первые три года поддержать нас в создании компетенции по постгресу (подготовка команды разработчиков), и которому было бы интересно создать бизнес на внедрении и поддержке постгреса. При этом мы, разработчики постгреса, не только помогали бы в его бизнесе, но и являлись бы поддержкой третьего уровня. Почти полгода ушло на общение с частным бизнесом, который уже стал что-то понимать и чувствовать, но реального дела так и не случилось. Эти полгода были практически потеряны, накопления таяли и я стал думать, что может быть стоить осесть в какой-нибудь теплой компании на хорошей зарплате и попытаться там создать отдел разработчиков постгреса. Однако я быстро убедился, что таким путем можно превратиться в "придворного" разработчика для решения частных задач, а нам хотелось заниматься решением общих задач разработки постгреса. В таких условиях нам удалось сделать большой проект для новой версии постгреса (спасибо компаниям-спонсорам), фактически мы дали людям возможность использовать функциональность модных NoSQL баз данных в надежной реляционной субд. И сделали это первыми среди реляционных субд. В конце 2014 года я практически случайно, через нескольких людей, познакомился с Антоном, который только-только покинул мир большого бизнеса и искал стоящий проект, в который стоило бы поиграть. Нам хватило одной встречи на Арбате, чтобы понять общее желание сделать дело. Мы удивились, что жили все это время в разных непересекающихся мирах, а мне показалось здорово, что у нас будет такой бизнес-партнер с опытом работы в российской айтишной среде.
Я с самого начала показал, что постгрес - это только начало, что это возможность собрать команду настоящих профессионалов с которой мы сможем делать большие проекты, про которые пока рано говорить. Потом все произошло очень быстро и уже 5 февраля, за день до большой зимней конференции, мы имели документы на компанию Постгрес Профессиональный или Postgres Professional. Это были романтические времена, когда мы создавали компанию, собирались в необычном месте на Арбате, из окон которого можно было посмотреть на посла Америки, решали много вопросов и узнавали друг друга.
Я тогда завел специальную тему в фб про создание компании и выкладывал рабочие фотографии. Люди понимали, что что-то происходит, интересовались. Эти фотографии можно посмотреть у меня на фликре, почувствуйте ту атмосферу.
Сейчас у нас светлый офис на Дмитрия Ульянова, где удобно работать, куда людям приятно приходить. У нас кипит жизнь, появляются новые ребята, мы проводим два раза в неделю семинары, на которых разбираем трудные вопросы, ребята докладывают о своих работах, некоторые семинары делаем открытыми, на которые приходят желающие ознакомиться с постгресом. Молодые разработчики уже сражаются с задачами, скоро ожидаем от них патчей в постгрес и доклады на конференциях, инженеры работают реальных проектах миграции с Оракла, занимаются тестированием разного железа, наращивают компетенцию. Параллельно у нас работает группа над нашим кластером - это трудная задача, но всеми ожидаемая. Готовятся курсы по постгресу, которые мы будем передавать нашим партнерам, переводится документация, начали процесс сертификации постгреса для использования в разных государственных проектах. Как я всегда говорил, не хватает людей. Так получилось, что у нас очень мало настоящих программистов. Все готовые программисты уже разобраны большими компаниями, поэтому мы делаем ставку на амбициозную молодежь, которые хотят сделать карьеру в большом опенсорсном проекте, работать над настоящими проектами, стать узнаваемыми в этом мире, войти в элиту программистов. У нас они получают возможность сделать это максимально быстро, общаясь с нами вживую. Часто мне говорят, что в наших айти компаниях-лидерах работают профессионалы и число их тысячи, многие до сих пор мечтают поступить туда на работу. Я всегда говорю, что работа в таких компаниях опасна, не каждый сможет сохранить себя как личность, сохранить свои амбиции и через пять лет сказать навскидку чего он добился по гамбургскому счету. У нас он сможет реализовать себя программистом, у нас много интересных задач, мы всегда поддерживаем авторство кода, он всегда сможет сказать, что он реализовал такую-то функциональность в постгресе и в логах гита будет его фамилия.
Часто говорят с придыханием, что Оракл - это такое-такое, что постгресу никогда не стать на один уровень с ним. Так вот, мы не стремимся стать на один уровень с Ораклом, у нас планы гораздо амбициознее. Если мы так и будем продолжать инвестировать Оракл и не будем вкладываться в свою экспертизу, то у нас так ничего и не появится. Риски при миграции есть и будут, никто этого не скрывает и надо быть готовым к этому. Но опыт миграции других стран, например, евросоюза, говорит о том, что Оракл вполне можно заменить. Оракл хорош тем, что он задает некий ориентир для нас на какое-то время. Никто не собирается в одночасье отказываться от Оракла, это контрпродуктивно. Наоборот, надо последовательно вводить новые системы на постгресе, параллельно выращивая у себя постгресовую экспертизу. Мы вам поможем в этом деле. И только потом начинать думать о плане перехода.
Не могу не ответить еще на одно популярное мнение касательно санкций, мол пусть оракл уходит, мы можем продолжать работать на оракле и без его поддержки и ваш постгрес нам не нужен. Так вот, вопросы безопасности базы данных - это очень актуальная тема и без регулярного лечения дыр безопасности не обходится ни одна серьезная система и здесь нужна вендорская поддержка.
Статья получилась большая и разнотемная, но тут уж извините, так звезды легли :)