캠페인 사무실의 흔한 풍경이 있습니다. 밤 열 시, 팀마다 걷어 온 명단 파일이 단체방에 도착하기 시작합니다. 파일 이름은 제각각이고, 양식도 제각각입니다. 누군가는 그걸 새벽까지 하나로 합칩니다.
맡은 일은 전국 캠페인의 참여 3만 명을 모으는 사이트를 만드는 것이었습니다. 그런데 저 풍경대로 가면, 3만 명은 저 밤샘 위에 쌓일 터였습니다.
파일을 합치는 문제만이 아닙니다. 같은 이름이 두 파일에 있으면 같은 사람인지 알 수 없고, 어제의 실수 위에 오늘 파일이 또 얹힙니다. 그리고 가장 큰 문제는 장부 바깥에 있습니다. 그 명단 속 사람들이 정말 동의했는지, 파일만 봐서는 알 수 없다는 것.
그래서 이 프로젝트는 그 풍경 전체를 바꾸는 데서 시작했습니다.
명단을 걷지 않기로 했습니다
방향을 뒤집었습니다. 사람을 걷어 오는 게 아니라, 참여가 스스로 쌓이게 만들기로 했습니다.
방법은 추천 링크였습니다. 참여를 모으는 사람마다 자기 링크를 받고, 그 링크로 들어온 사람은 화면에서 직접 동의하고 참여합니다. 종이에 이름이 적히는 게 아니라 본인이 들어오는 구조라서, 동의 문제가 처음부터 생기지 않습니다.
들어온 참여는 그 자리에서 지도에 찍힙니다. 내가 데려온 참여가 우리 지역 칸에 불빛으로 쌓이는 게 눈에 보이니, 참여를 모으는 일 자체가 게임이 됐습니다. 지역끼리 칸 채우기 경쟁이 붙었고, 아무도 시키지 않은 순위표가 단체방에 돌았습니다.
취합이라는 업무가 사라졌습니다
이 구조의 진짜 수확은 속도가 아니라 없어진 일입니다.
83개 팀이 전부 같은 화면을 봤습니다. 팀별 파일을 걷지 않아도 화면이 곧 집계였고, 새벽까지 파일을 합치던 "취합"이라는 업무가 통째로 사라졌습니다. 밤마다 파일을 모으던 사람은 그 시간에 다음 날 움직임을 짰습니다.
개인정보는 처음부터 순서를 정해 두었습니다. 본인이 동의하고, 안전하게 저장하고, 목적을 다하면 지운다. 걷어 온 명단이 아니라 본인이 남긴 참여라서 가능한 순서입니다.
숫자로 남은 것
목표 30,000명
명단 취합 0회
지도에 바로바로 쌓임
마지막 주가 가장 뜨거웠습니다. 지역 칸이 차오르는 속도가 눈에 보일 정도였고, 마감 전날 하루에만 수천 명이 들어왔습니다. 걷는 명단은 마감이 가까울수록 지치지만, 스스로 쌓이는 참여는 마감 직전이 가장 빠릅니다.
만든 재료 — 웹(Next.js) · 지도 화면 · 저장(Supabase). 발주처·이름은 적지 않습니다.