이 사이트의 지원사업 페이지 뒤에는 매일 자정 K-Startup 공공데이터에서 공고를 받아 오는 자동 수집 파이프라인이 돌고 있습니다. 처음 이 글을 쓴 2026년 7월 5일에는 누적 377건, 모집 중 291건이었고, 8월 22일 현재 누적 885건이 쌓였습니다. 공고를 '훑는' 것과 '쌓는' 것은 다른 일이었습니다. 쌓아 놓고 보니 공고 몇 건을 읽어서는 안 보이던 것들이 드러났고, 첫 달의 기록 뒤에 한 달 반이 더 지나면서 고쳐야 할 판단도 생겼습니다. 날짜순으로 남깁니다.
- 1매일 자정 수집K-Startup 공공데이터 API
- 2원장에 쌓기삭제 없음 · 처음 본 날짜 기록
- 3정규화 · 집계표기 흔들림 정리 후 계산
- 4화면과 리포트지원사업 페이지 · 월간 집계
마감된 공고도 지우지 않고 이력으로 보존합니다. "이번 달 신규가 몇 건인가" 같은 시계열 질문에 답하기 위한 규칙입니다.
구조: 모으고, 지우지 않는다
파이프라인의 규칙은 두 줄입니다. 매일 자정 API에서 모집 중인 공고 전체를 받아 저장하고, 마감된 공고도 지우지 않습니다. 처음에는 마감 공고를 30일 뒤 삭제했는데, 그 방식으로는 "이번 달 공고가 지난달보다 늘었나"라는 가장 기본적인 질문에 답할 수 없다는 걸 뒤늦게 알았습니다. 시계열 질문에 답하려면 각 공고를 처음 본 날짜를 기록하고 이력을 보존해야 합니다. 삭제는 되돌릴 수 없어서, 이 전환은 빠를수록 손실이 적습니다.
7월 5일, 첫 달에 알게 된 것 셋
- 접수 기간이 생각보다 짧습니다. 당시 모집 중 291건의 접수 기간 중앙값은 29일. 절반 이상이 한 달을 안 주고, 53건(약 18%)은 2주 이하였습니다. "월초에 한 번 확인"하는 성실한 습관으로도 다섯 건 중 한 건은 구조적으로 놓칩니다. 사람의 주기적 확인이 아니라 기계의 매일 확인이 필요한 이유입니다
- 같은 분류도 표기가 흔들립니다. 같은 '기술개발(R&D)' 유형이 HTML 엔티티가 섞인 값과 아닌 값, 두 가지 표기로 들어옵니다. 정규화 없이 그대로 세면 하나의 유형이 둘로 갈라져 집계가 틀어집니다. 공공데이터는 귀한 원천이지만, 받은 그대로 통계를 내면 안 된다는 것을 표기 하나가 가르쳐 줬습니다
- 자동화에는 감시가 따라붙어야 합니다. 7월 초 새벽 동기화가 한 번 소리 없이 누락됐고, 수동 복구로 11건을 메꿨습니다. 매일 도는 시스템의 진짜 완성은 '돌게 만드는 것'이 아니라 '안 돈 날을 알아채는 것'까지였습니다
8월 1일, 사람 손 없이 첫 리포트가 나왔다
첫 달의 기록을 쓸 때 "월간 집계를 준비하고 있다"고 적었습니다. 그 결과물이 8월 1일 새벽에 나왔습니다. 자정을 넘긴 0시 44분, 스케줄러가 7월분 집계를 확정해 2026년 7월 리포트로 공개했고, 운영자는 아침에 결과만 확인했습니다.
| 7월 리포트 항목 | 값 |
|---|---|
| 7월에 처음 수집된 신규 공고 | 348건 |
| 7월 이전부터 이어진 이월 공고 | 294건 |
| 7월 31일 기준 모집 중 | 299건 |
| 사람의 개입 | 없음 |
설계에서 고집한 것이 두 가지입니다. 하나는 확정된 수치는 바꿀 수 없게 한 것입니다. 데이터베이스가 확정 후 수정·삭제를 거부하도록 잠가 두었고, 정정이 필요하면 그 사실을 남기고 다시 확정하는 절차를 따로 둡니다. 다른 하나는 놓쳐도 스스로 메우는 것입니다. 1일 새벽 작업이 실패해도 다음 날 같은 작업이 빠진 달을 찾아 채우게 했습니다. 신규 공고를 '처음 본 날짜'로 세기 때문에 하루 늦게 집계해도 결과가 달라지지 않는다는 성질 덕분에 가능한 설계입니다. 다음 날 발송된 월간 소식 메일도 이 확정치를 그대로 인용했습니다. 리포트와 메일의 숫자가 다르면 둘 다 믿기 어려워지므로, 출처를 하나로 묶었습니다. 집계 기준은 리포트 방법론에 적어 두었습니다.
8월 22일, 한 달 반이 지나 고친 판단
| 항목 | 7월 5일 | 8월 22일 |
|---|---|---|
| 누적 수집 | 377건 | 885건 |
| 모집 중 | 291건 | 257건 |
| 모집 중 공고의 접수 기간 중앙값 | 29일 | 38일 |
| 모집 중 공고 가운데 2주 이하 | 약 18% | 약 7% |
| 누적 전체 공고의 접수 기간 중앙값 | 집계 전 | 21일 |
| 누적 전체 공고 가운데 2주 이하 | 집계 전 | 약 23% |
표를 보면 모집 중 공고만 세었을 때의 접수 기간이 7월보다 길어졌습니다. 그런데 같은 날 누적 885건 전체로 다시 세면 중앙값은 21일이고 2주 이하가 넷 중 하나입니다. 두 숫자가 어긋나는 이유는 단순합니다. 짧은 공고는 금방 마감돼 '모집 중' 목록에서 빠지고, 긴 공고만 남습니다. 오늘 모집 중인 공고만 보면 접수 기간이 넉넉해 보이는 착시가 생기는 것입니다. 7월 5일의 "다섯 건 중 한 건"이라는 말은 사실 과소평가였고, 누적으로 보면 "넷 중 하나는 2주 안에 닫힌다"가 더 정확합니다. 한 달 반을 더 쌓지 않았다면 이 편향은 보이지 않았을 것입니다.
그 밖에 드러난 분포는 이렇습니다. 8월 들어 21일까지 새로 들어온 공고는 227건으로 유형이 사업화 47·멘토링과 교육 46·시설과 공간 44·행사 43·창업교육 25로 고르게 퍼져 있습니다. 모집 중 257건 가운데 예비창업자가 신청할 수 있는 공고는 190건(74%), 지역 제한이 없는 전국 단위는 152건(59%)입니다. 그리고 오늘 기준으로 일주일 안에 마감되는 공고가 74건입니다. 모집 중 공고의 29%가 이번 주 안에 닫히는 셈이라, 지원사업 페이지에서 마감 임박 공고를 맨 위에 두는 판단은 바뀌지 않았습니다.
다음에 할 일
9월 1일에 8월분 리포트가 확정되면 처음으로 전월 대비 증감이 계산됩니다. 7월 348건 대비 8월 신규 공고가 얼마나 줄었는지, 유형별로는 어디가 빠졌는지가 숫자로 나옵니다. 두 달치로 추세를 말하기에는 이르지만, 매달 같은 기준으로 확정치를 쌓아 두면 연말에는 월별 리듬이 보일 것입니다. 공고를 찾는 입장이라면 이 파이프라인의 결론은 처음과 같습니다. 지원사업 페이지에서 지역·업력으로 거르고, 마감 임박 공고를 먼저 보는 것입니다. 공고문을 읽는 요령은 신청 절차 가이드에 따로 정리해 두었습니다.

