Career Map
Открытая статистика зарплат из одиннадцати стран в одном сравнении: возраст, образование, регион и профессия, и ничего не уходит на сервер.
Где на самом деле находится человек с вашим возрастом, образованием, регионом и профессией? Данных, чтобы ответить, хватает в каждой стране, и почти никто этого не делает: ответ приходится собирать из одиннадцати статистических систем, которые не согласны между собой ни в чём.
00 / Один вопрос, одиннадцать способов на него ответить
Одни страны публикуют микроданные: American Community Survey в США и переписной файл общего пользования в Канаде отдают отдельные записи. Из них можно построить любой разрез, и стоит это загрузки в сотни мегабайт. Другие публикуют таблицы: японское 賃金構造基本統計調査, британский ASHE, Structure of Earnings Survey от Eurostat для Германии, Франции, Италии и Нидерландов, австралийский Employee Earnings and Hours, сингапурские таблицы зарплат по профессиям, корейский KOSIS. Они маленькие и отвечают только на те разрезы, которые выбрал публикатор.
Пайплайн должен привести и то и другое к одной форме. А это значит решить — по каждой стране и письменно, — что считать профессией, что считать полной занятостью и какие возрастные группы с какими сопоставимы. Честный результат такой работы — не число, а распределение с приложенным источником.
01 / Три числа для одной зарплаты
Сравнение, которое останавливается на начисленной сумме, утверждает, что зарплата в Токио и зарплата в Берлине — одно и то же число. Это не одни и те же деньги. Поэтому каждую цифру можно читать тремя способами: начисленная, за вычетом оценённых налогов и социальных взносов, и скорректированная на цены — региональный паритет внутри страны, паритет покупательной способности между странами. У каждой корректировки назван источник, потому что именно на корректировках такие сравнения обычно перестают быть защитимыми.
02 / Расчёт остаётся в браузере
На входе возраст, образование, регион, профессия и доход. Такой набор большинство людей поостереглось бы вводить на чужом сервере, поэтому он никуда и не уходит: пайплайн выкладывает производные наборы данных статическими файлами, а страница считает по ним локально.
У решения о приватности оказалось два следствия, которые сделали проект лучше. Оно ограничивает бюджет данных — разрез обязан быть достаточно маленьким, чтобы доехать до телефона, — и позволяет сайту работать офлайн после первого открытия. В необязательной части, где люди сообщают собственную зарплату, агрегат по группе публикуется только после того, как в ней набралось не меньше десяти человек. Это единственное, что не даёт самоотчётным данным указать на тех, кто их прислал.
03 / Данные устаревают тихо
Статистика выходит примерно раз в год, без уведомления, а набор данных продолжает уверенно отвечать ещё долго после того, как перестал быть актуальным. Ежемесячная задача проверяет каждый источник на новую редакцию и заводит issue, когда находит. Весь механизм в этом, и он же отличает законченный проект от просто брошенного.