JuniorSMM Manager > Общее > Публикация и кампании
Короткий ответ Пайплайн публикации — это последовательность этапов, через которые проходит контент от идеи до выхода в соцсеть: черновик, правки, согласование с ответственными лицами и только затем публикация. Он нужен, чтобы снизить риск фактических, юридических и репутационных ошибок до того, как пост увидит аудитория. Как это работает подробнее автор создаёт черновик в документе или планировщике, указывает текст, визуал, ссылки и дату; далее пост проходит ревью (редактор, бренд-менеджер, юрист при необходимости) и только после получения статуса «согласовано» ставится в очередь на публикацию. Что использовать на практике На практике. этапы и их число зависят от размера команды и чувствительности контента — простой пост в блоге может требовать одного согласующего, рекламный пост с акцией — нескольких; важно фиксировать статус каждого этапа в таск-трекере или планировщике, чтобы не терять историю правок. Пример. Фрагмент статуса в контент-плане: «Пост про акцию — черновик готов → на согласовании у бренд-менед
approval-workflowpublishing-campaigns
MiddleData Analyst > SQL и данные > Статистика и теория вероятностей
Короткий ответ Парадокс Симпсона — ситуация, когда тренд, наблюдаемый в объединённых данных, исчезает или разворачивается в противоположную сторону при разбиении данных на подгруппы; обычно вызван скрытой переменной, неравномерно распределённой между группами. Как это работает подробнее если две сравниваемые группы имеют разный состав по важной скрытой переменной (например, разное распределение по платформам, регионам, давности пользователей), а эта переменная сама сильно влияет на метрику, агрегированное сравнение может вводить в заблуждение. Пример кода Что использовать на практике На практике. чтобы выявить парадокс, полезно всегда проверять ключевые метрики не только в целом, но и в разрезе по важным сегментам (платформа, страна, канал привлечения, тип устройства); если знак эффекта отличается между сегментами и в агрегате, это сигнал парадокса Симпсона. Особенно важно проверять это в A/B-тестах, где доли сегментов в тестовой и контрольной группах могли случайно или системно разойтись. Полезно также визуа
causal-inferenceconfounding
MiddlePython Developer > Основы Python > Идемпотентность и транзакции
Короткий ответ Saga — последовательность локальных транзакций в разных сервисах с компенсирующими действиями при сбое; 2PC — протокол, при котором координатор синхронно согласует и либо коммитит, либо откатывает транзакцию во всех участниках атомарно, блокируя ресурсы до завершения голосования. Как это работает подробнее В Saga каждый сервис коммитит свою часть немедленно и публикует событие о результате; при неудаче запускаются компенсации для уже выполненных шагов. В 2PC координатор спрашивает всех участников «готовы закоммитить?» и только при единогласном «да» даёт команду commit всем. Пример кода Что использовать на практике Практика. Saga подходит для микросервисов с независимыми БД, не требует постоянных блокировок, но усложняет код компенсаций; 2PC даёт строгую атомарность, но требует постоянной доступности всех участников, что плохо масштабируется. Подводные камни Риск. Пытаться применить 2PC через REST к внешним сервисам, не поддерживающим протокол; забывать, что компенсация в Saga — отдельная бизнес
consistencydistributed-transactions
MiddleJava Developer > Архитектура и данные > Design Patterns
Singleton гарантирует единственный экземпляр класса, но усложняет тестирование и скрывает зависимости.
CommonDesign Patterns
MiddlePython Developer > Основы Python > Очереди и события
Короткий ответ Transactional Outbox решает проблему dual write, записывая событие в отдельную таблицу outbox в той же транзакции БД, что и бизнес-изменение, а отдельный процесс затем читает outbox и публикует события в очередь. Как это работает подробнее Бизнес-операция и вставка строки в outbox происходят в одной локальной транзакции БД атомарно; relay-процесс (poller или CDC, например Debezium) читает новые строки outbox и публикует их в брокер. Пример кода Что использовать на практике Практика. Избавляет от ситуации, когда БД-транзакция закоммитилась, а публикация в очередь не прошла; relay обеспечивает at-least-once публикацию, и consumer всё равно должен быть идемпотентным. Подводные камни Риск. Публиковать событие до коммита транзакции БД (если транзакция откатится — событие о несуществующем изменении уже ушло); публиковать после коммита отдельным не атомарным вызовом без outbox.
event-drivenmessage-queues
JuniorPerformance Marketer > Google Ads > Бюджет и пейсинг
Короткий ответ Пейсинг бюджета — это скорость расхода бюджета относительно плана за период (день, неделю, месяц); базовая проверка — сравнить фактическую долю потраченного бюджета с долей прошедшего времени периода. Как это работает подробнее Если кампания должна равномерно расходовать бюджет, то доля потраченных денег на определённую дату должна примерно совпадать с долей прошедших дней периода. Отклонение в любую сторону говорит об ускоренном или замедленном расходе. Что использовать на практике На практике. В отчёте кабинета смотрят столбец «Расход» по датам и сравнивают накопленную сумму с планом. Для месячного бюджета простая формула: план на день = месячный бюджет / число дней в месяце × число прошедших дней. Пример. Месячный бюджет 90 000 руб. на 30 дней. На 10-й день потрачено 42 000 руб. План на этот день — 30 000 руб. (90000/30×10). Вывод: кампания расходует быстрее плана, нужно проверить причину. Подводные камни Частая ошибка. Типичная ошибка — сравнивать расход только за последний день, а не накоп
ad-platformsads-scripts
JuniorPython Developer > Основы Python > Реляционная модель данных
Короткий ответ Первичный ключ (PRIMARY KEY) однозначно идентифицирует строку таблицы и не допускает NULL/дублей, а внешний ключ (FOREIGN KEY) ссылается на первичный (или уникальный) ключ другой таблицы и обеспечивает ссылочную целостность между ними. Как это работает подробнее PK создаёт уникальный индекс и ограничение NOT NULL+UNIQUE на одну или несколько колонок; FK добавляет ограничение, что значение колонки должно существовать среди значений PK/UNIQUE родительской таблицы, иначе вставка/обновление отклоняется. Пример кода Что использовать на практике Практика. PK выбирают либо естественный (например, email, если он реально уникален и стабилен), либо суррогатный (SERIAL/UUID); FK настраивают с ON DELETE/ON UPDATE (CASCADE, RESTRICT, SET NULL) в зависимости от бизнес-логики удаления связанных записей. Подводные камни Ошибка. Забывают добавить ON DELETE поведение и получают ошибку при удалении родителя; используют естественный ключ, который со временем меняется (например, email после смены пользователем), чт
constraintsdata-modeling
JuniorPerformance Marketer > Google Ads > Специфика рекламных площадок и каналов
Короткий ответ Learning phase — это начальный этап после запуска или значимого изменения группы объявлений, когда алгоритм Meta собирает данные и стабилизирует показ, из-за чего результаты в этот период обычно менее стабильны и дороже. Как это работает подробнее после запуска или крупного редактирования (изменение аудитории, бюджета, креатива, события оптимизации) система заново тестирует, кому и как часто показывать объявление, чтобы найти стабильный паттерн доставки; выход из обучения обычно происходит после накопления порядка 50 оптимизационных событий на группу объявлений за 7 дней. Что использовать на практике На практике. частые правки «на лету» (смена текста, аудитории, бюджета на большую величину) запускают обучение заново, из-за чего CPA может скакать, а алгоритму не хватает времени стабилизироваться; рекомендуется вносить изменения пакетно и затем выдерживать паузу для накопления данных, а не реагировать на колебания результата день в день. Пример. Группа объявлений за первые 3 дня показывает CPA 40
ad-deliverycampaign-management
JuniorPerformance Marketer > Google Ads > Теги и пиксели
Короткий ответ Пиксель — это фрагмент JS-кода площадки, который ставится на сайт и отправляет площадке события о действиях пользователя (просмотр страницы, покупка, лид), чтобы считать конверсии и обучать алгоритм показа рекламы. Как это работает подробнее Код пикселя подгружается на страницы сайта и при срабатывании условия (загрузка страницы, клик по кнопке, отправка формы) отправляет HTTP-запрос на сервер рекламной площадки с набором параметров события. Что использовать на практике Практика. Пиксель должен стоять на всех страницах сайта (базовый код) и дополнительно на страницах с конверсионными событиями (спасибо-страница, корзина). Корректность проверяют через расширения типа Meta Pixel Helper или вкладку Network в браузере. Для интернет-магазинов, помимо базового кода, отдельно настраивают стандартные события площадки (ViewContent, AddToCart, InitiateCheckout, Purchase) на соответствующих страницах воронки, чтобы видеть не только факт продажи, но и то, на каком этапе пользователи отваливаются. Подводные
conversion-eventsgtm
JuniorPerformance Marketer > Google Ads > Рекламные платформы и форматы
Короткий ответ Пиксель — установленный на сайте код рекламной платформы, который фиксирует события посетителей, например просмотр товара или покупку. Данные помогают измерять конверсии, создавать аудитории для ремаркетинга и оптимизировать доставку рекламы. Как это работает подробнее Пиксель передаёт события вроде просмотра страницы, добавления в корзину и покупки. Параметры события могут включать сумму и валюту; серверная передача может дополнять браузерные данные при корректной дедупликации. Проверка. Тестируй события и параметры в диагностических инструментах платформы. Сверка. Сравнивай данные кабинета с сайтом или CRM. Что использовать на практике До запуска пройди тестовый путь пользователя от просмотра до заказа и проверь все ключевые события. Подводные камни Установка базового кода не подтверждает корректность Purchase: проверь событие покупки и отсутствие дубликатов.
conversion-trackingmeta-ads