[언더스코어] 데일리 글로벌 이슈 큐레이션
역할 프론트엔드 (1인 / 언더스코어 외주 / 디자이너, 백엔드 2인, KB측 기획자와 협업)
요약 매일 아침 발행되는 외신 큐레이션의 프론트엔드 전체를 개발, 운영함. 비개발 직군을 시안으로 설득하고, 재현이 되지 않는 카카오톡 인앱브라우저 버그를 실험으로 규명함.
프로젝트 개요
새벽에 보도된 외신을 크롤링하고 LLM으로 한글 기사를 생성해, 주요 언론보다 빠르게 전달하는 서비스입니다. 매일 아침 7시 30분경 페이지를 생성하고 카카오톡으로 주요 뉴스를 발송합니다. 외부 공개용 베타와 KB 임원 대상 내부 서비스(로그인 필요) 두 형태로 운영되었고, 프론트엔드 전체를 개발한 뒤 현재까지 운영 및 유지보수하고 있습니다.
작동 화면






주요 구현
서비스에 접속하면 기본적으로 최신 날짜에 해당하는 페이지로 라우팅됩니다.
이미 클릭한 기사는 배경이 흐리게 처리됩니다.
오늘 포함 일 주일치의 기사를 확인할 수 있습니다.
카테고리별로 정렬된 기사를 확인할 수 있습니다.
출처가 된 원본 기사로 갈 수 있는 링크를 제공합니다.
협업 — 시안으로 설득하기
기획자·디자이너와 긴밀히 협업하는 프로젝트였습니다. UX·접근성에 영향을 준다고 판단한 이슈는 말로 설명하는 대신 직접 시안(프로토타입)을 만들어 제안했습니다.


이 제안은 최종 채택되지 않았지만, 이후 기술 이슈를 비개발 직군에게 설명할 때 "보여주며 설득"하는 방식이 팀의 기본 소통 방식이 됐습니다.
트러블슈팅: 재현되지 않는 로그인 버그
해당 서비스의 로그인(성공 시 Next.js에서 308 redirect)이 2025년 1월까지 정상 작동하다가, 1월 14일부터 간헐적으로 실패하기 시작했습니다. 카카오톡 인앱 브라우저에서만 발생했고, 확인하러 가면 재현되지 않는 상황이 반복됐습니다.
실험으로 원인을 좁혔습니다:
인앱 브라우저 캐시 의심 → 재배포로 임시 해결 (재발)
로그인 로직을 server actions에서 API 라우트로 이동 (재발)
클라이언트에서 200 응답을 받으면 라우팅하는 방식으로 변경 → 해결
카카오톡 인앱 브라우저가 서버 응답으로 온 리다이렉트를 무시하는 경우가 있어, 리다이렉트 대신 클라이언트 라우트 이동으로 로직을 옮겨 해결했습니다.
이와 함께 상태 코드별 모달 UI 피드백을 추가했는데, 인앱 브라우저는 콘솔, 네트워크 탭을 볼 수 없기 때문에 문제 발생 시 화면만으로 원인을 파악할 수 있게 하기 위함이었습니다.


러닝 포인트 및 이슈
기획자, 디자이너 등 비개발 직군과 긴밀하게 소통하면서 개발해야 했습니다. 기술 이슈가 발생했을 때 어떤 이슈인지, 어떻게 해결해야 하는지에 대해 소통하는 방법을 익힐 수 있었습니다.
재현되지 않는 버그는 가설별 실험으로 변수 하나씩 제거하며 원인을 규명하는 접근을 익혔습니다.
운영 기간 동안 사용자(임원 비서실 등) 피드백을 받아 반영하는 사이클을 경험했습니다.