천천히 하지만 확실히 성장하는 백엔드 개발자
기술을 통해 일상의 비효율을 해결하고, 사용자에게 실질적인 시간을 선물하는 과정에 매력을 느낍니다. 제한된 시간 안에서도 핵심 기능(MVP)을 빠르게 정의하고 완성도 있게 구현해내는 실행력 있는 개발자가 되고 싶습니다.
기존 서비스는 '정확한 기록'에만 집중하여 다시 읽어야 하는 비효율이 존재했습니다. Action-Log는 기록을 넘어 실질적인 생산성 향상에 집중합니다.
단순한 텍스트 변환을 넘어, 회의 직후 즉시 행동으로 옮길 수 있는 Action Item(할 일 목록)을 제공하는 것을 핵심 목표로 삼았습니다.
OpenAI의 Whisper 모델을 활용하여 다화자 회의 녹음 파일을 높은 정확도의 텍스트로 변환합니다.
긴 줄글 형태의 스크립트를 분석하여 3줄 핵심 요약과 체크리스트 형태의 실행 과제를 자동으로 추출합니다.
프롬프트 엔지니어링을 통해 LLM의 응답을 JSON 포맷으로 강제하여, 시스템 간 데이터 연동성과 안정성을 확보했습니다.
React(SPA) + Spring Boot (WebFlux) + OpenAI API
대용량 오디오 파일 처리 시 발생할 수 있는 서버의 스레드 차단(Blocking)을 방지하기 위해 Spring WebFlux (WebClient)를 도입했습니다. 이를 통해 다수의 사용자가 동시에 요약을 요청해도 서버가 멈추지 않고 안정적으로 처리합니다.
LLM의 비정형 텍스트 반환 문제를 해결하기 위해 JSON Mode를 강제하는 프롬프트를 설계했습니다. 페르소나 부여와 제약 조건 명시를 통해 프론트엔드에서 별도 파싱 로직 없이 즉시 UI에 렌더링 가능한 데이터 정합성을 확보했습니다.
▲ 메인 홈 화면
▲ 핵심 기능 : 3줄 요약 및 Action Item 추출
| Features | Existing Services (ClovaNote 등) | Action-Log (본 서비스) |
|---|---|---|
| 핵심 가치 | 정확한 기록 및 검색 (Archiving) | 빠른 요약 및 행동 유도 (Productivity) |
| 결과물 | 긴 줄글 형태의 스크립트 | 3줄 요약 + Action Item 체크리스트 |
| 사용자 경험 | 다시 읽고 정리해야 함 (비효율) | 정리된 결론만 확인하면 됨 (효율) |
1시간 분량 회의 처리 시간
60분 → 3분으로 단축
JSON Mode 도입으로
구조화 데이터 변환 오류 해결
Prompt Engineering을 통한
정보 누락 방지 및 환각 최소화