
소프트웨어마에스트로와 OpenAI가 주최한 Codex Impact Workshop에서 1등을 수상했습니다.
이번 대회는 “돈이 되는 문제에서, 사회에 필요한 문제로”라는 주제로 진행됐습니다. 기존에는 수익화와 비즈니스 모델을 중심으로 서비스를 고민했다면, 이번에는 그동안 깊게 살펴보지 못했던 사회문제를 소프트웨어로 해결해보는 자리였습니다.
1. 시니어를 위한 서비스
저는 처음에 부모님이나 조부모님의 이야기를 음성으로 녹음하고, 가족이 오랫동안 간직할 수 있는 서비스를 생각했습니다. 하지만 이번 해커톤에서는 주제에 맞춰 실제 생활에서 반복적으로 불편을 만드는 문제를 찾고 싶었습니다. 여러 아이디어를 이야기하던 중 평소 쌓여 있는 우편물이 떠올랐습니다.
저는 자취하면서 우편함에 우편물이 쌓여 있어도 바로 확인하지 않습니다. 종이 우편물이 귀찮아 온라인 고지서로 바꿨지만, 온라인으로 받아도 잘 확인하지 않는 것은 마찬가지였습니다. 읽기 귀찬힉도하고 너무 많은 정보가 들어있어 어떤걸 봐야할지 모르기 때문입니다.20대인 나도 우편물을 읽고 중요한 내용을 찾는 것이 귀찮고 어려운데, 어르신들에게는 얼마나 더 어려울까 하는 생각이 들어 아이디어를 제안하게 되었습니다.
2. 실제 데이터 준비

아이디어만으로 기능을 정하면 실제 고지서의 형태를 제대로 반영하지 못할 수 있다고 생각했습니다. 또한 개발 완료시 AI generated된 Mock 데이터가 아닌 실제 데이터로 우리 서비스의 핵심 흐름을 검증하고 시연하고 싶었습니다. 그래서 해커톤 전에 예준 님에게 집에 있는 고지서나 공공기관 우편물을 찾아봐 달라고 부탁했습니다.
예준 님이 건강보험 관련 우편물과 아파트 관리비 명세서 등을 찾아주셨고, 이 자료를 실제 개발과 최종 시연에 사용했습니다. 실제 고지서를 확인해보니 중요한 정보가 한곳에 모여 있지 않았습니다. 금액, 납부 기한, 납부 방법이 서로 다른 표와 문장에 나뉘어 있었고, 앞면과 뒷면을 함께 봐야 이해할 수 있는 경우도 있었습니다. 이 과정에서 사진 한 장만 분석해서는 부족하다고 판단했습니다.
그래서 같은 우편물의 앞면과 뒷면을 최대 3장까지 촬영하고, 여러 사진을 하나의 문서로 분석하는 기능을 추가했습니다.
3. 우편물은 시니어에게 친화적일까?

한정된 종이에 많은 정보를 담으려다 보니 고지서의 글씨는 작고 내용은 복잡합니다. 행정 문서에서 사용하는 표현도 일상에서 자주 사용하는 말과는 거리가 있습니다.
발표자료를 준비하며 관련 통계를 조사해보니 국내 1인당 연간 우편 이용량은 약 48통이었습니다. 2020년 노인실태조사에서는 조사 대상자의 58.9%가 정부 및 공공기관 우편물이나 공지사항의 용어를 이해하는 데 어려움을 경험했다고 응답했습니다.
한국만의 문제도 아니었습니다. 해외 커뮤니티에서도 고령의 부모님에게 가는 우편물을 자녀의 집으로 돌려받는 방법을 묻거나, 중요한 우편물을 대신 관리하고 있다는 이야기를 찾을 수 있었습니다.
대부분의 우편물은 바로 읽지 않아도 큰 문제가 생기지 않습니다. 하지만 납부, 신청, 방문처럼 행동이 필요한 우편물을 놓치면 연체료가 발생하거나 가산세가 붙는등 불이익을 받거나, 충분히 받을 수 있는 혜택을 놓칠 수 있습니다.
그래서 우리는 단순히 우편물을 읽어주는 것보다, 사용자가 해야 할 행동을 찾아주고 잊지 않게 만드는 기능이 필요하다고 생각했습니다.
4. 그래서 이렇게 해결했습니다

우리 팀은 시니어가 우편물을 휴대전화로 촬영하면 AI가 문서의 내용을 분석하고 쉬운 말로 설명해주는 서비스 ‘놓치지마요’를 만들었습니다.
전체 흐름은 다음과 같습니다.
- 같은 우편물의 앞면과 뒷면을 최대 3장까지 촬영합니다.
- Vision 기능을 지원하는 LLM이 기관, 금액, 날짜와 해야 할 일을 분석합니다.
- 어려운 행정 용어를 쉬운 문장으로 정리하고 TTS로 읽어줍니다.
- 돈을 내거나 신청·방문하는 등 해야 할 일이 있으면 일정에 추가하기 버튼을 보여줍니다.
- 마감일이 유효하면 사용자의 확인을 거쳐 바로 일정과 알림을 등록합니다.
- 마감일이 없거나 이미 지났다면 사용자가 새로운 날짜를 직접 선택할 수 있도록 합니다.
- 일정은 마감 3일 전, 1일 전, 당일 오전 9시에 알려줍니다.
- 별도로 할 일이 없는 안내문은 일정 버튼을 표시하지 않고, 내용을 확인한 뒤 넘어가도록 구성했습니다.
- 일정에 추가한 우편물은 보호자용 웹에서도 확인할 수 있습니다.
AI가 행동이 필요한 우편물을 단순 안내문으로 잘못 판단하면 사용자가 중요한 기한을 놓칠 수 있습니다. 그래서 판단 신뢰도가 낮은 안내문은 안전한 방향으로 행동이 필요한 문서로 분류했습니다. 날짜나 금액이 명확하지 않을 때는 원본을 다시 확인하도록 안내했습니다.
다만 AI가 일정을 자동으로 등록하지는 않습니다. 유효한 날짜가 있더라도 마지막에는 사용자가 일정에 추가하기를 직접 눌러야 합니다. AI의 판단을 그대로 실행하기보다 사용자가 한 번 확인하는 과정을 남겨두었습니다.
5. 시니어용 애플리케이션 개발

저는 프로젝트에서 시니어가 직접 사용하는 모바일 애플리케이션 개발을 담당했습니다.
5-1. Flutter를 선택한 이유
시니어층에서 Android 기기를 많이 사용한다는 점을 고려해 Android를 우선 지원하면서도, iPhone 사용자까지 함께 지원할 수 있어야 했습니다. 또한 개발 시간이 약 2시간 반으로 제한되어 있었기 때문에 두 플랫폼의 애플리케이션을 빠르게 개발하고 실행할 수 있는 Flutter를 메인 프레임워크로 선택했습니다.
5-2. 명확한 정보 전달
애플리케이션을 개발하면서 가장 우선한 것은 명확한 정보 전달이었습니다. 어렵고 복잡한 화면 대신 큰 글씨와 간단한 문장을 사용하고, 사용자가 결과 화면을 보자마자 다음 내용을 알 수 있도록 정보를 배치했습니다. 얼마를 내야 하는지 언제까지 처리해야 하는지 어떤 방법으로 처리해야 하는지
5-3. 안내문과 행동이 필요한 우편물 구분
모든 우편물이 같은 중요도를 가지는 것은 아니라는 점도 설계에 반영했습니다. 우편물을 다음 두 가지로 구분했습니다. 단순 안내문: 별도로 해야 할 일이 없는 우편물입니다. 쉬운 설명을 확인한 뒤 확인했어요 버튼을 누르고 넘어가도록 구성했습니다. 행동이 필요한 우편물: 납부, 신청, 방문처럼 사용자가 직접 해야 할 일이 있는 우편물입니다. 금액과 기한, 처리 방법을 명확하게 보여주고 일정에 추가할 수 있도록 구성했습니다. 우편물의 내용을 읽어주는 데서 끝나는 것이 아니라, 사용자가 지금 해야 할 일이 있는지를 바로 알 수 있게 만드는 것이 목표였습니다.
5-4. 한 화면에는 하나의 주요 행동
여러 기능을 한 화면에 복잡하게 넣기보다 사용자가 다음에 무엇을 해야 하는지 바로 알 수 있는 단순한 흐름을 만들려고 했습니다. 한 화면에는 하나의 주요 행동을 두는 것을 우선했고, 필요한 경우에도 주요 선택지가 많아지지 않도록 구성했습니다. 예를 들어 단순 안내문에서는 내용을 확인하고 넘어가는 행동에 집중하도록 했습니다. 반면 행동이 필요한 우편물에서는 내용을 확인하고 일정에 추가하는 행동에 집중하도록 했습니다. 촬영, 분석, 결과 확인, 일정 등록 단계도 각각 분리해 사용자가 한 번에 많은 판단을 하지 않도록 구성했습니다.
5-5. 개인정보 처리에서 고려한 점
초기에는 Vision 모델에 사진을 보내기 전에 OCR을 통해 개인정보의 위치를 찾고, 해당 영역을 가린 이미지만 전송하는 방식을 생각했습니다. 하지만 OCR 결과에서 이름, 주소, 계좌번호 등의 위치를 정확하게 찾아 원본 이미지의 해당 영역을 마스킹하려면 추가적인 구현과 검증이 필요했습니다. 약 2시간 반이라는 제한된 시간 안에 신뢰할 수 있는 수준으로 완성하기는 어렵다고 판단했습니다. 결국 해커톤에서는 OpenAI Responses API 요청에 store: false를 설정해 응답이 애플리케이션 상태로 보관되지 않도록 하는 수준으로 마무리했습니다.
5-6. 핵심 흐름 구현
제한된 시간 안에 많은 기능을 보여주기보다 다음의 핵심 흐름이 실제로 동작하는 것을 우선했습니다. 우편물 촬영 → AI 분석 → 쉬운 설명 → 음성 안내 → 사용자 확인 → 일정과 알림 최종적으로 Flutter를 통해 이 흐름을 Android와 iPhone에서 구현하고 실제 기기에서 확인할 수 있었습니다.
6. 심사위원 피드백
발표는 3분 30초 제한이 있어 문제, 해결 방법, 실제 시연을 중심으로 짧게 진행했습니다.
감사하게도 심사위원분들로부터 좋은 평가를 받을 수 있었습니다.
가장 기억에 남았던 것은 시각장애인 사용자에 관한 피드백이었습니다.
시력이 좋지 않거나 앞을 보기 어려운 사용자가 ChatGPT의 읽어주기 기능을 통해 이전보다 쉽게 정보를 얻는 사례가 있으며, ‘놓치지마요’도 시니어뿐만 아니라 시각장애인에게 도움이 되는 서비스로 발전할 수 있겠다는 의견이었습니다.
처음에는 시니어를 위한 서비스로 시작했지만, 복잡한 문서를 읽고 핵심 행동을 찾기 어려운 더 많은 사용자에게 적용할 수 있다는 가능성을 확인했습니다.
7. 해커톤 1등, 그리고 다음 계획

약 2시간 반 동안 만든 MVP이기 때문에 더 다듬어야 할 부분도 많이 남아 있습니다.
- 더 직관적인 UI와 UX 흐름
- TTS 목소리를 따뜻한 목소리 혹은 자녀의 목소리로 설정하는 기능
- 휴대전화 기본 캘린더 및 구글 캘린더 연동
- 개인정보 전송 전 마스킹
- 사진 보관 기간과 삭제 정책
- 시니어와 보호자의 안전한 계정 연결
- 공공기관 QR 코드를 통한 검증된 설명 제공
특히 우편물에는 주소, 계좌번호, 고객번호 등 민감한 정보가 포함될 수 있습니다. 실제 서비스로 출시하려면 단순히 분석 결과에서 개인정보를 가리는 것뿐만 아니라, 사진을 어디에 보관하고 누가 볼 수 있는지, 언제 삭제할 것인지까지 함께 설계해야 합니다.
심사위원분들의 피드백과 이번 회고를 바탕으로 실제 사용자에게 도움이 되는 서비스로 발전시켜 출시하는 것을 목표로 하고 있습니다.