Меня зовут Сергей Кузнецов, я один из основателей PROFI.RU, сейчас занимаюсь разработкой и поддержкой CRM/КИС PROFI.RU.
PROFI.RU - это IT-компания, занимающаяся разработкой одноименного ресурса по поиску и подбору специалистов.
С 2005 года с нашей помощью нашли друг друга более 4 000 000 клиентов и более 400 000 специалистов.
CRM — это инструментарий для конвейерных бизнес-процессов, таких как обработка заказов, сбор отзывов, получение оплаты, обзвон соискателей, оформление анкет и т.п. Автоматизация и оптимизация сложных разветвлённых процессов, по которым ежедневно с утра до вечера работает больше 500 сотрудников компании — главная задача CRM.
КИС — платформа, организующая устройство первичных данных. Это основные сущности и логика их связей. По сути — структура ключевых данных и сервисы для её обслуживания.
Помимо CRM/КИС, в PROFI.RU ещё 9 продуктовых команд, каждая из которых отвечает за свой сегмент и использует свои собственные технологические и идеологические подходы к разработке.
Принципы работы:
Мой подход не ортодоксален и противоречит многим общепринятым догмам программирования.
Я ищу не «программиста», а «разработчика». Того, кто думает не о том, как написать внутренне идеальный код, а о том, как построить правильный продукт, который будет работать и приносить пользу людям. Всякие буковки типа PHP/MySQL/JS/CSS автоматически подразумеваются: каждый, кто называет себя программистом, должен всё это знать и уметь, а при необходимости быстро осваивать любую новую технологию. Важно понимать, что код — это лишь инструмент для решения задачи, а не самоцель.
Каждый кандидат должен перед собеседованием ответить себе на вопрос: «Чем я буду гордиться в этой жизни, о чём рассказывать своим внукам?» — Что написал идеальный метод в классе? Что освоил новый фреймворк? Или что создал вещь, которая работает и востребована, за которую люди тебе благодарны?
Это важный и не такой уж очевидный вопрос, потому что работая со мной вы не напишете много идеальных классов и не изучите ультрамодных фреймворков. Но могу обещать вам много задач, о которых будет что рассказать внукам, и много благодарных пользователей, не скупящихся на «Спасибо, мы так об этом мечтали!».
Я придерживаюсь стиля без стиля. Если задача в том, чтобы дать в нос, то надо просто дать в нос, а не вставать в стойку дракона и не заниматься дыхательной гимнастикой для концентрации энергии ци. Красивости — для телекамер. А в реальных боевых задачах нужны жёсткие эффективные решения, далёкие от смузи-стайла entertainment-стартапов.
Масштаб и complexity продукта уже настолько велики, что единственный вариант сохранить его эффективность — придумывать максимально простые решения. А придумать простое решение — крайне сложная интеллектуальная задача.
Получать от заказчика/продакт-менеджера все ответы на все вопросы «Зачем?» — не только право, но и обязанность разработчика. Каждый должен хорошо понимать, зачем оно всё это делается.
Важный принцип, действующий во всей компании: «Больше результата — меньше контроля. Меньше результата — больше контроля.»
Применительно к программированию это означает, что если ты делаешь отлично работающий продукт, то всем без разницы, как там у тебя в коде скобочки расставлены и как модель с контроллером взаимодействуют. Если же результат глючит и разваливается — будь добр каждую запятую ставить так, как в регламенте прописано.
Я не сторонник догм и верю в научный подход и здравый смысл. Если твой подход к разработке отличается от моего, и при этом показывает высокую эффективность — я буду рад у тебя поучиться.
Задачи:
Задача 1. Бухгалтерия просит сделать в админке страницу, на которой выводились бы красивые графики статистики использования разных платёжных систем.
- Решение А. Изучаем библиотеки для отрисовки графики, тестируем разные варианты и выбираем лучший, инсталлируем pChart и Google chart tools, настраиваем Hadoop, делаем интеграционную прослойку в MySQL, пишем API для передачи обработанных данных из хранилища в интерфейс, тщательно отслеживаем соблюдение концепции MVC и стандартов PSR, пишем сам интерфейс, по пути устанавливая пару новейших шаблонизаторов, добавляем различные контролы и фильтры для данных и в результате получаем отличный код, крайне функциональный, масштабируемый и использующий все самые современные достижения IT-индустрии.
- Решение Б. Спрашиваем у бизнес-заказчика: «Как часто вам нужно пользоваться этими данными? А, раз в месяц обычно хочется всякое там разное глянуть? А вы можете в экселе по колонке цифр сами построить нужные вам графики? Да, так вам даже удобнее будет? ОК». Пишется пять строчек кода импорта таблички в xls. Всё.
Задача 2. Выводить на сайте список анкет репетиторов так, чтобы клиент не пугался заоблачных цен топовых преподавателей, а видел и дешёвых тоже.
- Решение А. Импортировать все данные из MySQL в документо-ориентированную СУБД, построить масштабируемый серверный кластер, позволяющий в realtime выдавать листинги анкет, отранжированные по произвольной формуле.
- Решение Б. Выбрать пару десятков наиболее посещаемых страниц с анкетами, хардкодом вбить вручную отобранный список анкет, удовлетворяющих условию «и дорогие, и дешёвые», провести на этих данных АБ-тест, замеряющий разницу в конверсии из посетителей сайта в заказы. Получив нулевые результаты — отменить задачу, сэкономив компании кучу денег, а людям полгода жизни. Получив положительные результаты — перейти к решению «А», разбив его на этапы так, что уже через неделю первый релиз выпущен, работает и повышает конверсию, а каждые последующие расширяют его область действия и эффективность.
Это всё называется «MVP» и описано в книжках по Lean Startup.
Мы предлагаем:
- высокую белую зарплату;
- опционы компании эффективным сотрудникам;
- оплату половины стоимости ДМС, включая стоматологию, с первого дня работы;
- организацию ежегодного обследования на онкозаболевания;
- фермерские молочные продукты, рисовую и овсяную каши на завтрак, фрукты и овощи в обед, кофе из Starbucks — всегда;
- помощь с переездом в Москву и адаптацией в новом городе;
- комфортный офис на Ходынском поле (10 мин. от ст. м. «ЦСКА» и 20 мин. от ст. м. «Аэропорт»);
- ежемесячную компенсацию 15 000 рублей при аренде квартиры или комнаты в 30 минутах ходьбы от офиса с первого дня работы;
- доступ к электронной библиотеке МИФа и профессиональной литературе;
- оплату профильных курсов, участия в российских и международных конференциях;
- корпоративные выезды, хакатоны, митапы, тематические вечеринки и тренинги;
- компенсацию половины стоимости парковки;
- оплату половины стоимости абонемента в фитнес-центры рядом с офисом;
- занятия йогой и боксом в спортзале компании, занятия футболом на стадионе ЦСКА;
- еженедельный маникюр с частичной оплатой.