Создание портала для компании PSAonline

Здравствуйте, дорогие зрители канала Афонико и те кто просматривают кейсы у нас в портфолио. Я бы хотел вам рассказать об одном проекте, который мы делали не вчера, не месяц назад, этот проект был сделан более года назад, он живой, существует до сих пор. Потому что есть ряд проектов, которые не существуют, я о них тоже расскажу.

Дело в том, что этот проект, про который я сейчас рассказываю, он специфический.

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

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

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

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

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

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

Вот у нас сайт, здесь у нас есть фильтр с зависимыми полями, здесь можно выбирать область энергетическую, либо же нефтяную, мы видим, что у нас при нажатии будет меняться тема оформления, она будет становиться с другими цветами, темное — добавлены синие оттенки.

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

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

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

Этот проект, как я уже сказал, он работает, он существует. Из больших сложностей, которые были в этом проекте — это редактирование. Здесь очень большие карточки компаний есть, необходимо было редактировать эти данные, не как в админке, а как с лицевой части сайта, то есть это тоже прорабатывалось.

На начальном этапе на сайте, в этом сервисе, было запланировано семь писем, в конечном результате, когда сайт был реализован, было реализовано двадцать семь писем различных, 27 шаблонов различных писем.

Мы видим, что у нас вот в эту компанию 6 запросов, в этой кампании было получено и 127 просмотров этого профиля тоже произошло. Понятно что сервисом можно заниматься и слава богу, что люди продолжают этим заниматься, не оставили его, не забыли про него, он у них растет и развивается, мы этому рады.

У этого сервиса, конечно, есть мобильная версия, работает он быстро. Есть еще нюансы, вот я по стоимости вначале говорил, значит, обычно сервисы не стоят до миллиона, обычно они стоят намного больше. На чем можно вообще сэкономить в процессе разработки? Можно, во первых, часть функционала забрать на какой-то цмс системе, части функционала написать разработчиками php или подсоединить какой-то framework для какого-то функционала, или сделать приложение на react и отдельно его вызывать отсюда, такой опыт у нас тоже есть, так мы тоже делали. Это делается просто для удешевления процесса, пусть подключаются внешние сервисы, внешние ресурсы. В данном сервисе, например, можно, он находится на простом хостинге, но это временно, то есть это временно и это тоже экономит деньги. Если сервис будет разрастаться, он будет увеличиваться, то одним из первых модернизаций — это потребуется, с простого хостинга, ну понятно он там мощный, разогнанный у нас, но перенести его на виртуальный сервер, а за этим последует настройка почтового функционала. В данном случае мы реализовали почтовый функционал через иностранный сервис, который посылает письма, соответственно, если мы перенесем просто на виртуальный сервер, нам не нужно будет поднимать почтовый сервер, но обычно это нужно делать, потому что на виртуальном сервере там голые программные возможности, которые вы должны задействовать.

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

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

Опыт написания нового на фреймворке у нас также имеется, прямо сейчас в  разработке проект “Правдакар”, он пишется полностью на фреймворке — laravel и стоимость этого проекта она конечно выше. Вот тот сервис, который я еще один рассказывал — “Мои права”, который не существует на текущий момент. Там была интересная связка, там был wordpress, там был react и там был самописный 1с, в которой, почему самописная, то есть там абсолютно все поля были уникальные, там двухканальное взаимодействие было, двустороннее, то есть данные уходили в 1с, данные приходили из 1с на сайт, там были реализованы скидки по промо кодам, регистрации пользователей, вопрос-ответ, но на все взаимодействие с сайтом пользователя, персонал этого сервиса отвечал через 1с, то есть вот в этом была там сложность.

Сервисы вообще делать сложно. Если вы думаете, что сервис делать просто, вы точно ошибаетесь. Иногда заказчик приходит, говорит хочу авито, хочу циан. У нас есть сайт один, который мы делали, это тоже сервис, для подбора кинолокаций, он выглядел как циан. Это был запрос от заказчика, сделать его похожим на циан. Понятно, что он немного отличается и называется кинопрофи, этот сайт есть у нас в портфолио. Там сложный функционал, он написан с применением react, в wordpress, там используется только регистрация пользователей и добавления объекта, а уже все остальное, как это все фильтруется, выдается, уже написано программистами, потому что не существует таких уникальных фильтров, где вы можете выбирать, фильтровать по станциям метро, где у вас есть множественные выборы, причем зависимые выборы, тоже делается крайне сложно, поэтому каждый сервис сервису рознь.

И если мы говорим из опыта, скажем так, есть сервис, на который мы потратили более 1600 часов и он ещё не завершён, и мы столкнулись с рядом сложностей. Этот сервис наш, он лично наша разработка для наших целей, которые мы хотели и мы сейчас пришли к тому, что мы будем его корректировать, еще переделывать перед тем как опубликовывать в мир.

Я сталкивался с ситуацией, когда не говорили сколько часов было потрачено, мне сказали просто, я этим занимаюсь три года и конечного результата я не вижу, это тоже бывает.

Приходил у нас “Аргонавт”, такой клиент, у него была такая ситуация: мы разбирались в коде чужого программиста, он сам что-то писал, сам что-то делал, оптимизировали, улучшали, на сколько могли, тогда помогли. Но сделать сервис это крайне сложно, основа — это техническое задание, которое не вы напишете, а которые напишут специалисты, причем как бы они его не написали, они все равно что-то не учтут. Дело в том что, чтобы они все учли, понадобится, чтобы их в штате было там порядка 12 различных профессиональных специальностей, узконаправленных и если их будет в таком количестве, то у вас мало того, что час разработки будет стоить точно в районе двух с половиной тысяч, если мы возьмем, что в среднем на разработку сервиса уходит 1000-1500 часов, то вот откуда появились два с половиной миллиона рублей за разработку сервиса. И когда к нам приходят и говорят вы можете что-то сделать даже за 300, мы говорим сервис за 300 не можем, потому что это просто невозможно. Уникальность функционала невозможно достичь за эти деньги. Если мы говорим просто о каком-то новостном агрегаторе или еще о чем-то то, пожалуйста, вон шаблон на вордпрессе, где можно поставить за двадцать шесть долларов и у вас будет там своя крутая новостная лента, но это будет не сервис. Если мы говорим про сервис или про агрегаторы, или про какой-то сложный функционал, то это уже все упирается в функционал, в реализацию, там очень много всевозможных связей, зависимостей существует.

Когда вы делаете фильтра, получается есть зависимые поля, прямая зависимость, обратная зависимость, не полная зависимость, все это должно отрабатывать, потому что если это не будет работать, у пользователя вашего сервиса будет складываться впечатление, что оно поломано и оно как-то не работает. Такого нельзя допускать, соответственно должно работать все. И, как правило, задача почти всегда недооценивается не только заказчиком, но еще и исполнителем, потому что в процессе разработки начинается: здесь давайте еще вот это, давайте вот это, вот это, оно начинает влиять. Вот здесь, например, было, клиент говорил, вот нам удобно в excel, вы можете сделать в excel и чтоб была выгрузка в excel, потом менеджер правил в excel, и потом он в excel заливал на сайт. На начальном этапе переговоров мы поняли, что для клиента это настолько важно, что он не может просто от этой идеи отказаться или так, или никак иначе.

Вообще, это реализуемо, но с точки зрения сервиса, это уже не сервис, это такая структура получается, сложно, сейчас расскажу почему. Мы в документах подписали, что мы делаем в excel, выгрузка в excel и загрузку в excel, все это делаем, но в процессе разработки нам удалось убедить заказчика, что это уже устарело, так делать не нужно и абсолютно все можно редактировать в админ-панели, то есть мы туда перенесли все эти данные, у нас там все редактируемые эти поля, удобно редактировать там. И в чем еще была одна особенность, в том что с сайтом, например, могло работать два, три администратора и они могли выгружать данные, редактировать их и одновременно заливать, они могли друг друга затереть. Сделать функционал, который бы проверял все эти ячейки, это было бы очень сложно, именно на верность ячеек, на то, что они есть или их нет, а именно на верность и на актуальность, на их правильность этой конкретной информации. Поэтому мы это, во первых все оставили в админ-панели, менеджеры правят и администраторы правят данные этого сайта, данные пользователя, они могут под разными логинами заходить, видеть кто вносил изменения, все это корректировать и не нужно, то есть выгрузка есть, если она нужна, но нет такой необходимости туда-сюда файлы вот эти гонять, плодить их, ошибаться и так далее. В процессе нам удалось убедить клиента, он с этим согласился, ему все это очень удобно, все отлично. Здесь было несколько импортов, то есть сначала было таблица одна, вот как обычно, почему много часов, заказчик говорит, Иван Анатольевич, вот у нас одна табличка, надо ее будет залить, табличка будет готова такого-то числа, такого-то числа дает табличку, а потом приходит и говорит, Иван Анатольевич, слушай, месяц прошел, мы тут улучшили табличку 2-ю, давай сейчас зальем, давай нефть и газ зальем, а давай еще что-то зальем, давай, и вот это вот все давай зальем, давай зальем, еще возможны ошибки, возможны ошибки при импорте. Ну люди писали, например, там в одной ячейке по 4 телефона, разные маски телефонов, через запятую, через точку, а для скрипта, который заливает это все, это все имеет значение, все должно быть по единой маске. Его мы заливаем, потом смотрим, что-то не сходится, начинаем проверять, вот это тоже все занимает время. Поэтому когда мы имеем дело с большими данными, с сервисом, сложным функционалом, то это никогда не дешево, если говорить с точки зрения дешево и очень великая ответственность это делать, очень великая ответственность, потому что этим начинают пользоваться тысячи пользователей по всей стране, а тот сервис, который мы сейчас делаем, им этим сервисом будут пользоваться на украине, в грузии, в россии, может быть еще в других странах СНГ. Там стоит внизу наше имя, наша подпись, что это делали мы и для нас это великая честь и ответственность делать такие сложные и великие проекты.

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