← к блогу

// бэкенд

Схема БД, которую не стыдно показать через год

Хорошую схему БД видно через год: легко ли добавить отчёт, не разваливается ли всё при росте данных. Красота диаграммы тут дело десятое.

Принципы, которых держусь

  • Нормализую до 3НФ, денормализую осознанно и только под измеренную нагрузку.
  • Индексы — под реальные запросы, а не «на всякий случай».
  • Тяжёлую аналитику выношу в materialized views и обновляю по расписанию.
CREATE MATERIALIZED VIEW funnel_daily AS
SELECT date_trunc('day', created_at) AS day,
       count(*) FILTER (WHERE status = 'paid') AS paid
FROM leads GROUP BY 1;

Дашборд тимлида, который раньше собирался руками за час, стал открываться за пять минут — потому что тяжёлое посчитано заранее.

Есть похожая задача?

Расскажите — вернусь с оценкой в тот же день.

Обсудить проект

// читать дальше

Кадр из клипа про то, почему ИИ-агенты рисуют серые интерфейсы
0:36
// видео

Почему ИИ-агенты рисуют одинаково серые интерфейсы

Обложка статьи: «Claude Design в проде»
// дизайн6 мин

Как использовать Claude Design в проде

Я разработчик, дизайнер из меня никакой. Но сайт, который ты читаешь, выглядит как надо — дизайн я собрал с Claude, руками не рисовал. Показываю весь путь и артефакты, которые реально пошли в работу.

Обложка статьи: «1 блог, 2 сайта, 1 сервис»
// архитектура8 мин

Два сайта — один блог: как я не уронил SEO, сливая контент в один сервис

Слил блоги двух сайтов в один сервис на Hono и Turso. База оказалась простой частью, вся коварность — в доставке: контент должен приезжать на билде, потому что при фетче на клиенте превью-боты ловят пустую страницу.