SQL — супер-скилл для продакт менеджеров и разработчиков

23 августа 2024 г.

Если вам нечем заняться в выходные (есть такие у кого нет детей?) углубитесь в SQL.

Для продактов продвинутый SQL необходим как инструмент. Если вы не знаете SQL, вы не реализовываете свой потенциал. Даже если у вас есть люди, делающие аналитику за вас, вы теряете время на водопадный подход к получению данных и теряете возможность сделать неожиданные открытия, просто ковыряясь в данных в поисках «чегомабыть».

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

Мы у себя в стартапе инвестировали в BigQuery на раннем этапе. У нас есть данные для всего в одном месте, связанные между собой общими ключами (по ID пользователя можно вытащить всю историю всего).

На мне лежит ответственность за дашборды и анализ конкретных ситуаций. SQL в BigQuery помогает мне делать сложные запросы, соединяющие данные таблиц из бекенда (например, данные по подкастам) с событиями из Гугл аналитики и данные в какой-нибудь таблице в Google Sheets. Это очень мощный инструмент.

СТО и наша разработчица часто смотрят в BigQuery данные, которые им бы пришлось бы вытаскивать из нескольких NoSQL таблиц в продакшене (это очень геморно, так как данные раскиданы по разным таблицам). Плюс иногда смотрят данные по конкретным пользователям, чтобы восстановить историю событий при расследовании багов.

Для того, чтобы было так как у нас, надо:

  1. Заранее продумать как ты будешь измерять успех продукта и какие данные тебе нужны для операционки. Продумать схемы данных, чтобы к ним было легко делать запросы.
  2. Заложить бюджет и сроки на инструментацию метрик во всех системах при разработке. Впихивать их пост-фактум дольше и больнее.
  3. Настроить стриминг данных из всех источников в единый data warehouse. Мы выбрали BigQuery и очень им довольны. Позже может ещё добавим ElasticSearch для полнотекстового поиска.
  4. Начать писать запросы и делать дашборды в процессе разработки софта, когда начинают появляться первые данные. Так вы сможете увидеть их форму и на практике убедиться, что вы все правильно спроектировали. Если чего-то не хватает, пофиксить проще пока продукт не в продакшене.
  5. Profit.