<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>태천인</title>
    <link>https://taecheonin.tistory.com/</link>
    <description>IT 기술을 활용하여 패션&amp;middot;뷰티 산업과 커머스를 혁신하고, 사용자 친화적 웹&amp;middot;모바일 서비스를 제공하는 것을 목표로 함.</description>
    <language>ko</language>
    <pubDate>Sat, 4 Jul 2026 12:07:19 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>태천인</managingEditor>
    <item>
      <title>용인시 사회적경제 공동브랜드 '사경미감' 플랫폼 및 체험단 챗봇 구축</title>
      <link>https://taecheonin.tistory.com/5</link>
      <description>&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&quot;리뷰 데이터 자권 확보를 위한 자체 아카이빙 웹 플랫폼 및 체험단 관리 챗봇 시스템 개발&quot;&lt;/b&gt;&lt;br /&gt;용인시 사회적경제지원센터의 의뢰로 진행된 공동브랜드 활성화 프로젝트입니다. 타사 플랫폼 의존도를 낮춰 생성된 리뷰 데이터를 영구적으로 자산화&amp;middot;보호하고, 시민 체험단('사경미식단')과의 원활한 소통 및 미션 수행을 자동화하기 위해 자체 리뷰 웹사이트 구축, 검색엔진 최적화(SEO), 카카오톡 챗봇 연동을 수행한 디지털 전환(DT) 프로젝트입니다.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;참여 기간&lt;/b&gt;: 2022.06 ~ 2022.11 (기획 협업, 풀스택 개발 및 운영)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;역할&lt;/b&gt;: 1인 개발 (체험단 전용 챗봇 시나리오 설계, 리뷰 아카이빙 웹사이트 개발, SEO 최적화 담당)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;협업&lt;/b&gt;: 사회적기업 '생각나눔소' (로고 및 패키지 디자인 협업)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;성과&lt;/b&gt;:&lt;/li&gt;
&lt;li&gt;공동브랜드 체험단 전용 오너십 플랫폼(&lt;code&gt;migambox.org&lt;/code&gt;) 런칭 및 운영&lt;/li&gt;
&lt;li&gt;체험단 리뷰 데이터 삭제/어뷰징 방지를 위한 자체 데이터 아카이빙 환경 구축&lt;/li&gt;
&lt;li&gt;구글 및 네이버 '사경미감' 키워드 검색엔진 최적화(SEO) 달성&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드 (7).png&quot; data-origin-width=&quot;966&quot; data-origin-height=&quot;828&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/AaeKs/dJMcadJheL8/VnPNCOjRAMXaecvh2APr81/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/AaeKs/dJMcadJheL8/VnPNCOjRAMXaecvh2APr81/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/AaeKs/dJMcadJheL8/VnPNCOjRAMXaecvh2APr81/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FAaeKs%2FdJMcadJheL8%2FVnPNCOjRAMXaecvh2APr81%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;966&quot; height=&quot;828&quot; data-filename=&quot;다운로드 (7).png&quot; data-origin-width=&quot;966&quot; data-origin-height=&quot;828&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Tech Stack&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;&lt;b&gt;Backend &amp;amp; &lt;/b&gt;Frontend&lt;/b&gt;: PHP (Wordpress) /&amp;nbsp; HTML, CSS, jQuery&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Bot Platform&lt;/b&gt;: Kakao i Open Builder (체험단 전용 챗봇)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Database&lt;/b&gt;: MySQL / Redis (체험단 미션 상태 관리)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Infrastructure&lt;/b&gt;: AWS (S3)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Key Implementation &amp;amp; Work (핵심 구현 및 담당 업무)&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. 데이터 소버린티(Data Sovereignty) 기반의 자체 리뷰 아카이빙 플랫폼 구축&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;포털이나 SNS 체험단 운영 시 발생하는 '리뷰 무단 삭제 및 숨김' 문제를 해결하기 위해, 기업이 데이터를 온전히 소유하고 보호할 수 있는 &lt;b&gt;자체 리뷰 수집 및 적재 웹 아키텍처&lt;/b&gt; 설계.&lt;/li&gt;
&lt;li&gt;다양한 형태의 꾸러미 상품(식품, 체험 세트, 심리 상담 등 비정형 서비스) 리뷰를 정형화하여 업로드할 수 있는 멀티미디어 컴포넌트 및 확장형 DB 스키마 설계.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. 크롤링 최적화 및 검색엔진 최적화(SEO) 고도화&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;대형 커머스 플랫폼 밖에서도 신규 브랜드 '사경미감'이 효과적으로 노출될 수 있도록 네이버, 구글 등 주요 검색엔진 봇(Bot) 친화적인 구조 설계.&lt;/li&gt;
&lt;li&gt;Next.js 기반의 서버 사이드 렌더링(SSR)을 도입하고 동적 메타 태그(Dynamic Meta Tags), Open Graph(OG) 프로토콜, 시맨틱 마크업, 사이트맵(Sitemap.xml) 자동 생성 로직을 적용하여 포털 검색 결과 상위 노출 달성.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3. 시민 체험단('사경미식단') 관리 및 가이드용 챗봇 개발&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;체험단 유저들이 가이드를 숙지하고 정해진 기한 내에 리뷰를 작성할 수 있도록 알림 및 소통을 담당하는 카카오톡 챗봇 스킬 API 구현.&lt;/li&gt;
&lt;li&gt;체험단 개별 식별값(유저 토큰)을 기반으로 미션 진척도를 추적하고, 리뷰 작성 페이지로의 이탈 없는 랜딩을 돕는 유연한 UX 시나리오 설계.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Measurable Results (성과 및 비즈니스 임팩트)&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;성공적인 브랜드 런칭 지원&lt;/b&gt;: 온&amp;middot;오프라인을 융합한 꾸러미 사업(용미/용감박스 2종)의 디지털 거점을 구축하여 관내 사회적경제 조직들의 상품과 미션을 시민들에게 성공적으로 각인.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;리뷰 자산의 영구 보존&lt;/b&gt;: 외부 플랫폼에 분산되어 휘발될 수 있었던 고품질의 시민 리뷰 및 사진 에셋을 자체 웹 갤러리에 100% 안전하게 축적하여 향후 마케팅 자산으로 활용 가능한 인프라 마련.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Engineering Challenges &amp;amp; Troubleshooting (성장 경험 및 고민)&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 체험단 종료 후 발생할 수 있는 데이터 손실(리뷰 삭제 등) 방지 아키텍처 고민&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Problem&lt;/b&gt;: 일반적인 블로그/SNS 체험단은 가끔 유저가 포스팅을 임의로 삭제하거나 비공개 처리하여 정당한 비용을 지불한 기업의 마케팅 자산이 소멸하는 고질적인 문제가 있었음.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Solution&lt;/b&gt;: 이를 방지하기 위해 외부 링크 스크랩 방식이 아닌, &lt;b&gt;체험단 웹사이트 내에 직접 리뷰와 사진을 업로드하는 폐쇄형 인앱(In-app) 리뷰 시스템&lt;/b&gt;을 구축함. 유저가 작성한 데이터는 AWS S3와 DB에 실시간 스냅샷 형태로 영구 저장되도록 설계했고, 작성 후 일정 기간 동안은 수정/삭제 권한을 관리자(Admin) 승인제로 제어하여 데이터 오너십을 완벽히 방어함.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Learned&lt;/b&gt;: 플랫폼 개발 시 비즈니스 요구사항에 맞춰 데이터의 생성 및 변형 권한(ACL)을 설계하는 것이 비즈니스 리스크를 방지하는 데 얼마나 중요한지 깨달음.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 신생 도메인의 포털 검색 노출 스피드업 및 대역폭 최적화&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Problem&lt;/b&gt;: 신설된 도메인(&lt;code&gt;migambox.org&lt;/code&gt;)은 인지도가 없어 검색엔진이 페이지를 인덱싱하는 데 오랜 시간이 걸렸고, 체험단이 업로드하는 고용량 사진들로 인해 메인 갤러리 로딩 속도가 저하되어 SEO 점수에 악영향을 줄 우려가 있었음.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Solution&lt;/b&gt;: 이미지 업로드 시 백엔드에서 WebP 포맷으로 자동 인코딩 및 리사이징하는 가공 파이프라인을 구축하여 에셋 크기를 70% 이상 압축함. 또한 Next.js의 SSR과 로봇 텍스트(&lt;code&gt;robots.txt&lt;/code&gt;) 최적화를 통해 사이트 런칭 초기 단계부터 네이버와 구글 검색 결과에 '사경미감' 브랜드가 정확히 크롤링되어 노출되도록 조치함.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드 (8).png&quot; data-origin-width=&quot;966&quot; data-origin-height=&quot;504&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cmP9z5/dJMcadJheL7/RHQjoeXY7u9UJlpKUfAgx1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cmP9z5/dJMcadJheL7/RHQjoeXY7u9UJlpKUfAgx1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cmP9z5/dJMcadJheL7/RHQjoeXY7u9UJlpKUfAgx1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcmP9z5%2FdJMcadJheL7%2FRHQjoeXY7u9UJlpKUfAgx1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;966&quot; height=&quot;504&quot; data-filename=&quot;다운로드 (8).png&quot; data-origin-width=&quot;966&quot; data-origin-height=&quot;504&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>개발자포트폴리오</category>
      <category>검색엔진최적화</category>
      <category>공동브랜드런칭</category>
      <category>데이터소버린티</category>
      <category>데이터아카이빙</category>
      <category>사회적경제</category>
      <category>웹최적화</category>
      <category>카카오톡챗봇</category>
      <category>풀스택개발자</category>
      <author>태천인</author>
      <guid isPermaLink="true">https://taecheonin.tistory.com/5</guid>
      <comments>https://taecheonin.tistory.com/5#entry5comment</comments>
      <pubDate>Fri, 3 Jul 2026 01:35:56 +0900</pubDate>
    </item>
    <item>
      <title>환경사랑실천 '해용' 캠페인 챗봇 및 게이미피케이션 플랫폼 고도화</title>
      <link>https://taecheonin.tistory.com/4</link>
      <description>&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&quot;사용자 경험(UX) 강화를 위한 캐릭터 기반 게이미피케이션 도입 및 펀딩 연동형 환경 미션 인증 챗봇 플랫폼 구축&quot;&lt;/b&gt;&lt;br /&gt;2021년 수행한 '용인시 환경사랑 캠페인'의 성공적인 성과를 바탕으로 후속 의뢰를 받아 진행된 고도화 프로젝트입니다. 크라우드 펀딩을 통해 운영 재원을 마련하는 비즈니스 구조를 실험하고, 유저의 지속적인 참여 동기를 부여하기 위해 '러닝메이트' 콘셉트의 가상 캐릭터 시나리오와 상태별 동적 피드백 메커니즘을 도입한 디지털 캠페인 플랫폼입니다.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;참여 기간&lt;/b&gt;: 2022.02 ~ 2022.06 (기획 고도화, 설계, 개발 및 운영)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;역할&lt;/b&gt;: 1인 개발 (카카오톡 챗봇 스킬 아키텍처 고도화, 동적 피드백 엔진 및 웹 갤러리 개발 담당)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;성과&lt;/b&gt;:&lt;/li&gt;
&lt;li&gt;&lt;b&gt;크라우드 펀딩 플랫폼 '바스켓' 연동&lt;/b&gt;: 시민 참여형 펀딩을 통한 성공적인 챗봇 인프라 운영 기금 마련 모델 검증.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;언론 보도&lt;/b&gt;: 기술 기반 로컬 환경 운동 사례로 '용인시민신문' 등 지역 언론에 대대적 보도.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;사용자 리텐션(Retention) 강화&lt;/b&gt;: 15개 미션 중 10개 선택 완주 구조 설계 및 맞춤형 리포트 데이터 축적.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드 (5).png&quot; data-origin-width=&quot;966&quot; data-origin-height=&quot;617&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/qLsSG/dJMcagTDXK6/KQkzdJfe7p1phy9kwf1wZ0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/qLsSG/dJMcagTDXK6/KQkzdJfe7p1phy9kwf1wZ0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/qLsSG/dJMcagTDXK6/KQkzdJfe7p1phy9kwf1wZ0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FqLsSG%2FdJMcagTDXK6%2FKQkzdJfe7p1phy9kwf1wZ0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;966&quot; height=&quot;617&quot; data-filename=&quot;다운로드 (5).png&quot; data-origin-width=&quot;966&quot; data-origin-height=&quot;617&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Tech Stack&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Bot Platform&lt;/b&gt;: Kakao i Open Builder (카카오톡 채널 '환경사랑해용')&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;b&gt;Frontend &amp;amp; &lt;/b&gt;Backend&lt;/b&gt;: PHP (워드프레스) / HTML, CSS, jQuery&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Database&lt;/b&gt;: Mariadb / Redis (유저별 미션 진척도 및 세션 트래킹)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Infrastructure&lt;/b&gt;: AWS (S3)&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Key Implementation &amp;amp; Work (핵심 구현 및 담당 업무)&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. 캐릭터 인터랙션을 위한 동적 피드백(Dynamic Feedback) 엔진 구현&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;단순 텍스트 응답 위주의 레거시 챗봇 구조에서 탈피하여, 유저의 미션 수행 진척도(1회 성공, 5회 반환점 통과, 10회 최종 완주 등)에 따라 캐릭터 '해용'의 다채로운 이미지와 격려 멘트가 매핑되어 나가는 &lt;b&gt;조건부 동적 메시지 발송 로직&lt;/b&gt; 설계.&lt;/li&gt;
&lt;li&gt;유저별 미션 카운트 및 상태 데이터를 Redis 캐시 레이어에서 실시간 연산하여 카카오톡 챗봇 스킬 API의 응답 속도 최적화.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. 게이미피케이션(Gamification) 기반의 미션 파이프라인 고도화&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;기존의 선형적인 미션 구조를 개선하여, 유저가 주도적으로 15가지 환경 미션 중 본인의 성향에 맞는 10가지를 선택하여 완주할 수 있는 &lt;b&gt;유연한 미션 빌더 스키마&lt;/b&gt; 설계.&lt;/li&gt;
&lt;li&gt;데이터베이스 내 미션 테이블을 마스터-디테일 구조로 정규화하여 향후 기획 변경에 따른 미션 개수 증감에 유연하게 대처할 수 있도록 확장성 확보.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3. 상호 자극형 웹 갤러리(Web Gallery) 및 오픈 데이터 연동&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;내가 업로드한 사진뿐만 아니라 타 참여자들의 실시간 환경 실천 인증샷을 상호 모니터링할 수 있는 반응형 웹 갤러리 아키텍처 개발.&lt;/li&gt;
&lt;li&gt;S3에 저장된 다량의 인증 이미지 에셋을 효율적으로 서빙하기 위해 AWS CloudFront(CDN)를 도입하고 이미지 캐싱 전략 수립.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Measurable Results (성과 및 비즈니스 임팩트)&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;비즈니스 지속 가능성 확보&lt;/b&gt;: 온라인 펀딩 플랫폼 '바스켓(basket.fund)'을 통한 사전 펀딩 성공으로 기술 인프라(서버, 트래픽 비용) 운영 예산을 자급 자족하는 프로덕트 라이프사이클 모델 수립.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;유저 참여 및 만족도 증대&lt;/b&gt;: 캐릭터를 활용한 친근한 UX 레이어 추가를 통해 중도 이탈률을 낮추고 10회 완주율을 대폭 끌어올림.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Engineering Challenges &amp;amp; Troubleshooting (성장 경험 및 고민)&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 상태별 동적 멘트(캐릭터 이미지 매핑) 분기에 따른 백엔드 코드 비대화 문제 해결&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Problem&lt;/b&gt;: 유저의 미션 횟수와 조건(1회차, 5회차 반환점, 10회차 완주 등)에 따라 서로 다른 '해용' 캐릭터 이미지와 멘트를 나가게 하려다 보니, 백엔드 라우터 내부의 &lt;code&gt;if-else&lt;/code&gt; 분기문이 지나치게 복잡해지고 유지보수가 어려워지는 스파게티 코드 위험 발생.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Solution&lt;/b&gt;: 분기 로직을 하드코딩하는 대신, 데이터베이스에 미션 진척도별 메시지와 이미지 URL을 메타데이터화하여 관리하는 &amp;lsquo;메시지 라우팅 템플릿 테이블&amp;rsquo;을 구축. 백엔드는 유저의 현재 &lt;code&gt;Count&lt;/code&gt; 값만 계산하여 DB에서 일치하는 템플릿을 쿼리해 카카오 챗봇 포맷(Carousel/SimpleText)으로 파싱만 하도록 아키텍처를 추상화함.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Learned&lt;/b&gt;: 비즈니스 기획(콘텐츠, 이벤트 멘트 변경 등)이 자주 바뀌는 서비스일수록 코드를 수정하는 것이 아니라 데이터를 바꿀 수 있도록 구조적으로 분리(Decoupling)하는 디자인 패턴의 중요성을 체득함.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 펀딩 기간과 캠페인 기간의 유기적인 유저 데이터 스위칭&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Problem&lt;/b&gt;: 3월 펀딩 참여자와 4월 챗봇 실참여자 간의 유저 매핑 및 데이터 정합성 검증이 필요했음.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Solution&lt;/b&gt;: 외부 펀딩 플랫폼의 참여 데이터를 정형화하여 시스템 DB로 마이그레이션한 후, 카카오톡 채널 유입 시 최초 1회 본인 인증 프로세스를 통해 매스 유저 데이터 간의 릴레이션십(Relationship)을 안전하게 연결함.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드 (6).png&quot; data-origin-width=&quot;966&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bm50cQ/dJMcaf1rsB8/kYldrWBFqolf0JYcUlQ4o0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bm50cQ/dJMcaf1rsB8/kYldrWBFqolf0JYcUlQ4o0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bm50cQ/dJMcaf1rsB8/kYldrWBFqolf0JYcUlQ4o0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbm50cQ%2FdJMcaf1rsB8%2FkYldrWBFqolf0JYcUlQ4o0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;966&quot; height=&quot;572&quot; data-filename=&quot;다운로드 (6).png&quot; data-origin-width=&quot;966&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>1인개발</category>
      <category>IT로사회혁신</category>
      <category>개발자포트폴리오</category>
      <category>게이미피케이션</category>
      <category>동적피드백</category>
      <category>웹갤러리</category>
      <category>챗봇고도화</category>
      <category>카카오톡챗봇</category>
      <category>코드추상화</category>
      <category>크라우드펀딩연동</category>
      <author>태천인</author>
      <guid isPermaLink="true">https://taecheonin.tistory.com/4</guid>
      <comments>https://taecheonin.tistory.com/4#entry4comment</comments>
      <pubDate>Fri, 3 Jul 2026 01:24:42 +0900</pubDate>
    </item>
    <item>
      <title>서울혁신파크 공식 홈페이지 유지보수 및 인프라 매니지먼트</title>
      <link>https://taecheonin.tistory.com/3</link>
      <description>&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&quot;대규모 공공 자산(대관&amp;middot;공간) 플랫폼의 고가용성 유지보수 및 레거시 시스템 고도화&quot;&lt;/b&gt;&lt;br /&gt;서울시 내 소셜벤처 및 사회적경제 조직의 허브였던 '서울혁신파크'의 공식 웹 플랫폼을 안정적으로 관리하기 위해 서버 인프라 매니지먼트, 실시간 대관 데이터 관리, 키오스크 및 인터랙티브 투어맵 DB 연동, 긴급 장애 대응(On-call) 체계를 아우르는 통합 유지보수를 수행한 프로젝트입니다.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;참여 기간&lt;/b&gt;: 2022.09 ~ 2023.12 (서비스 종료 시까지)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;역할&lt;/b&gt;: 메인 백엔드 및 인프라 유지보수 개발자 (1인 인프라&amp;middot;서버 관리, 기능 개선 및 DB 통합 담당)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;성과&lt;/b&gt;: 과업 기간 내 웹사이트 다운타임 최소화, 데이터 아카이빙 성공적 완료, 이기종 디바이스(키오스크) 연동 최적화&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드 (4).png&quot; data-origin-width=&quot;966&quot; data-origin-height=&quot;719&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/m5sBH/dJMb99NFC7X/0bPV3101GuekkYo2tMH3p0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/m5sBH/dJMb99NFC7X/0bPV3101GuekkYo2tMH3p0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/m5sBH/dJMb99NFC7X/0bPV3101GuekkYo2tMH3p0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fm5sBH%2FdJMb99NFC7X%2F0bPV3101GuekkYo2tMH3p0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;966&quot; height=&quot;719&quot; data-filename=&quot;다운로드 (4).png&quot; data-origin-width=&quot;966&quot; data-origin-height=&quot;719&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Tech Stack&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Backend&lt;/b&gt;: PHP (워드프레스) / Node.js&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Database&lt;/b&gt;: MariaDB&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Infrastructure&lt;/b&gt;: Cafe24&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Hardware Integration&lt;/b&gt;: Kiosk API, Web-to-Device DB Sync&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Key Implementation &amp;amp; Work (핵심 구현 및 담당 업무)&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. 인프라 매니지먼트 및 고가용성 유지 (서버 &amp;amp; 보안 관리)&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;온라인 혁신파크의 상시 안정적 운영을 위한 Linux 기반 웹/DB 서버 모니터링 및 성능 최적화.&lt;/li&gt;
&lt;li&gt;공공 성격의 플랫폼 특성을 고려하여, 트래픽 급증 시 발생할 수 있는 긴급 장애에 대비한 백업 모니터링 가동 및 24/7 장애 대응 체계 수립.&lt;/li&gt;
&lt;li&gt;데이터 유실 방지를 위한 주기적인 콘텐츠 및 DB 아카이빙(증분 백업 로직 구축) 스크립트 운영.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. 대관 운영 시스템 및 이용자 편의 기능 고도화&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;혁신파크 내 수많은 공간&amp;middot;회의실 예약 및 대관 관리 시스템의 백엔드 로직 수정 및 데이터 정형화 작업 수행을 통해 운영 관리 효율성 제고.&lt;/li&gt;
&lt;li&gt;다양한 혁신기업 및 일반 방문자가 플랫폼 내 정보(공지사항, 입주 단체 데이터 등)를 효과적으로 습득할 수 있도록 검색 쿼리 개선 및 UI 편의 기능 연동 개발.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3. 이기종 디바이스(키오스크) 및 온라인 투어맵 DB 동기화&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;오프라인 현장에 설치된 &lt;b&gt;키오스크 프로그램&lt;/b&gt;과 웹 서버 간의 실시간 데이터 연동 API 정비.&lt;/li&gt;
&lt;li&gt;넓은 혁신파크 부지를 안내하는 &lt;b&gt;'온라인 파크 투어맵'&lt;/b&gt; 서비스의 위치 및 공간 정보 데이터베이스(DB) 구조를 연동하고, 프론트엔드 렌더링에 필요한 JSON API 최적화로 동기화 지연율 감소.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Measurable Results (성과 및 임팩트)&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;성공적인 서비스 엔드오브라이프(EOL) 수행&lt;/b&gt;: 2023년 12월 서울혁신파크 운영 종료 및 사이트 폐쇄 결정에 따라, 다년간 축적된 공공 데이터 및 콘텐츠를 유실 없이 안전하게 백업 및 콜드 스토리지로 마이그레이션 완료.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;운영 리소스 절감&lt;/b&gt;: 대관 및 입주 기업 관리 시스템의 동기화 에러율을 줄여 운영 조직의 대관 관리 및 민원 처리 리소스를 크게 낮춤.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Engineering Challenges &amp;amp; Troubleshooting (성장 경험 및 고민)&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 레거시 플랫폼과 오프라인 키오스크 디바이스 간의 DB 동기화 병목&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Problem&lt;/b&gt;: 현장 키오스크에서 호출하는 데이터와 웹 플랫폼의 실시간 대관/입주 정보 DB 간의 동기화 쿼리가 비효율적으로 설계되어 있어, 트래픽이 몰리는 시간대에 키오스크 화면이 멈추거나 웹 서버에 부하를 주는 현상 발생.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Solution&lt;/b&gt;: 키오스크가 매번 전체 DB를 풀 스캔(Full Scan)하여 조회하던 방식을 &lt;b&gt;최근 변경된 데이터만 가져오는 델타(Delta) 동기화 방식&lt;/b&gt;으로 변경하고, 자주 변경되지 않는 공간 마스터 데이터는 키오스크 로컬 캐시를 활용하도록 아키텍처 개편. 이를 통해 서버 쿼리 부하를 기존 대비 대폭 감소시킴.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Learned&lt;/b&gt;: 웹 브라우저 환경뿐만 아니라 하드웨어(키오스크) 등 이기종 디바이스와 통신하는 서비스를 유지보수할 때, 네트워크 대역폭과 서버 자원을 효율적으로 분배하는 최적화 전략의 중요성을 학습함.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 플랫폼 폐쇄에 따른 대규모 아카이빙 인프라 전략&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Problem&lt;/b&gt;: 서비스 종료가 결정된 후, 단순 텍스트 데이터뿐만 아니라 수년간 축적된 수십 기가바이트(GB) 상당의 고용량 멀티미디어(이미지, 첨부파일 등) 데이터를 손실 없이 완벽히 백업해야 하는 과제 봉착.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Solution&lt;/b&gt;: 서비스 가동에 영향을 주지 않는 새벽 시간대를 활용하여 파일 시스템 압축 및 DB 덤프 자동화 파이프라인을 구축함. 무결성 검사(Checksum) 과정을 포함하여 최종 백업 데이터를 안전하게 확보함으로써 인프라 엔지니어로서의 데이터 관리 마무리를 성공적으로 완수함.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드 (2).jpeg&quot; data-origin-width=&quot;696&quot; data-origin-height=&quot;984&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bDyXrS/dJMcagMVpuY/LGm4WDQu6RbyAfitPxzKxK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bDyXrS/dJMcagMVpuY/LGm4WDQu6RbyAfitPxzKxK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bDyXrS/dJMcagMVpuY/LGm4WDQu6RbyAfitPxzKxK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbDyXrS%2FdJMcagMVpuY%2FLGm4WDQu6RbyAfitPxzKxK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;696&quot; height=&quot;984&quot; data-filename=&quot;다운로드 (2).jpeg&quot; data-origin-width=&quot;696&quot; data-origin-height=&quot;984&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>1인엔지니어</category>
      <category>db최적화</category>
      <category>고가용성</category>
      <category>공공플랫폼</category>
      <category>데이터아카이빙</category>
      <category>레거시개선</category>
      <category>웹유지보수</category>
      <category>인프라매니지먼트</category>
      <category>키오스크연동</category>
      <author>태천인</author>
      <guid isPermaLink="true">https://taecheonin.tistory.com/3</guid>
      <comments>https://taecheonin.tistory.com/3#entry3comment</comments>
      <pubDate>Fri, 3 Jul 2026 01:18:19 +0900</pubDate>
    </item>
    <item>
      <title>용인시 환경사랑 캠페인 챗봇 및 인증 플랫폼 구축</title>
      <link>https://taecheonin.tistory.com/2</link>
      <description>&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&quot;카카오톡 챗봇 기반의 대규모 주민 참여형 환경 미션 실천 및 이미지 인증 플랫폼 개발&quot;&lt;/b&gt;&lt;br /&gt;BAT 두드림 공모전 대상 수상작으로, 기후위기 대응을 위한 로컬 환경 캠페인의 주민 참여를 유도하기 위해 카카오톡 챗봇 UI를 활용한 미션 수행, 실시간 이미지 기반 실천 인증, 설문조사 및 보상(리워드) 지급 시스템을 구축한 디지털 전환(DT) 프로젝트입니다.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;참여 기간&lt;/b&gt;: 2020.12 ~ 2021.04 (기획 협업, 개발 및 운영)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;역할&lt;/b&gt;: 1인 개발 (카카오톡 챗봇 시나리오 및 백엔드 API 설계, 이미지 업로드 인프라 구축, 운영 툴 개발 담당)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;성과&lt;/b&gt;:&lt;/li&gt;
&lt;li&gt;캠페인 기간 내 총 238명 참여, &lt;b&gt;누적 878장의 환경 실천 인증 이미지 데이터 수집 및 처리&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;용인시마을공동체지원센터 등 7개 로컬 거점 기관&amp;middot;단체&amp;middot;생협과의 성공적인 시스템 연동 및 캠페인 수행&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;11-672x1024.jpg&quot; data-origin-width=&quot;672&quot; data-origin-height=&quot;1024&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bc4rj4/dJMcafmVQZu/3YUiPHl4BLE2ZWkdGyvPak/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bc4rj4/dJMcafmVQZu/3YUiPHl4BLE2ZWkdGyvPak/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bc4rj4/dJMcafmVQZu/3YUiPHl4BLE2ZWkdGyvPak/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbc4rj4%2FdJMcafmVQZu%2F3YUiPHl4BLE2ZWkdGyvPak%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;672&quot; height=&quot;1024&quot; data-filename=&quot;11-672x1024.jpg&quot; data-origin-width=&quot;672&quot; data-origin-height=&quot;1024&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt; ️ Tech Stack&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Bot Platform&lt;/b&gt;: Kakao i Open Builder (카카오톡 채널 '작은돌')&lt;/li&gt;
&lt;li&gt;&lt;b&gt;F/B end&lt;/b&gt;: Wordpress / NestJS&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Database&lt;/b&gt;: MySQL&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Infrastructure&lt;/b&gt;: Cafe24&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Third-Party API&lt;/b&gt;: 카카오톡 챗봇 스킬 API, 모바일 상품권 및 포인트 연동 API&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;  Key Implementation &amp;amp; Work (핵심 구현 및 담당 업무)&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. 카카오 i 오픈빌더 기반의 챗봇 시나리오 및 상태 머신(State Machine) 설계&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;사용자의 개인정보 입력, 환경서약 동의, 11가지 환경 미션 선택 및 인증으로 이어지는 유기적인 사용자 경험(UX)을 카카오톡 챗봇 스킬(Skill) API로 구현.&lt;/li&gt;
&lt;li&gt;사용자가 미션을 이탈하지 않고 단계별로 진행할 수 있도록 Redis 기반의 세션 관리 시스템을 도입하여 실시간 미션 수행 상태(Status)를 추적&amp;middot;제어.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. 실시간 이미지 업로드 파이프라인 및 아카이빙 인프라 구축&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;사용자가 카카오톡 채팅창에 전송한 환경 실천 사진(텀블러, 장바구니 사용 등)을 챗봇 스킬 API를 통해 실시간으로 캡처하고 유효성을 검증하는 프로세스 구현.&lt;/li&gt;
&lt;li&gt;대량의 이미지 트래픽(누적 878장)을 안정적으로 처리하기 위해 AWS S3 버킷을 연동하고, 이미지 최적화 및 메타데이터(유저 정보, 미션 종류, 전송 시간) 매핑 알고리즘 개발.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3. 멀티 리워드(Reward) 정산 및 지급 자동화 로직 설계&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;11회 미션을 모두 클리어한 사용자를 식별하고, 사용자가 선택한 보상(온누리 모바일상품권, 한살림 포인트, 아이쿱 포인트)에 맞게 정산 데이터를 분류하는 백엔드 로직 구현.&lt;/li&gt;
&lt;li&gt;다양한 생협 및 외부 기관과의 데이터 정산 처리를 위해 관리자(Admin)용 대시보드를 개발하여 데이터 추출 및 보상 지급 프로세스 효율화.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;  Measurable Results (성과 및 비즈니스 임팩트)&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;높은 유저 인게이지먼트(Engagement) 달성&lt;/b&gt;: 챗봇의 접근 편의성을 극대화하여 한 달 반이라는 짧은 기간 동안 238명의 실참여자와 878장의 실천 인증샷을 유도, 단순 정보 제공형 챗봇 대비 높은 참여율 기록.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;비즈니스 모델 검증 및 수상&lt;/b&gt;: 기술을 통해 로컬 사회 문제를 재미있고 지속 가능하게 해결한 가치를 인정받아 &lt;b&gt;BAT 두드림(Do-Dream) 프로그램 대상&lt;/b&gt;을 수상하고 차기 사업화를 위한 마중물 확보.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;  Engineering Challenges &amp;amp; Troubleshooting (성장 경험 및 고민)&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 카카오톡 플랫폼의 기술적 제약(인터페이스 한계 및 타임아웃) 극복&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Problem&lt;/b&gt;: 카카오톡 챗봇 API는 유저의 입력(이미지 전송 등) 후 5초 이내에 응답하지 않으면 타임아웃 에러를 발생시킴. 유저가 보낸 고용량 사진을 서버에서 받아 S3에 업로드하고 DB를 갱신하는 과정을 5초 내에 동기적으로 처리하기엔 병목 위험이 존재했음.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Solution&lt;/b&gt;: 이미지 처리를 &lt;b&gt;비동기 큐(Queue) 구조&lt;/b&gt; 및 AWS Lambda 기반의 서버리스 아키텍처로 분리. 챗봇 스킬 서버는 이미지 URL 수신 즉시 유저에게 &quot;인증 확인 중입니다&quot;라는 응답을 먼저 보낸 뒤(Timeout 방지), 백그라운드에서 비동기적으로 이미지를 가공&amp;middot;저장하고 최종 미션 카운트를 업데이트하도록 설계하여 UX와 시스템 안정성을 동시에 확보함.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Learned&lt;/b&gt;: 서드파티 플랫폼의 제약 조건을 정확히 이해하고, 이를 우회하기 위한 비동기 처리 및 인프라 설계 역량을 기를 수 있었음.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 비정형 실천 데이터(텍스트 피드백) 활용 및 확장성 고민&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Problem&lt;/b&gt;: 유저들이 사진과 함께 감동적인 실천 소감들을 텍스트로 많이 보내주었으나, 초기 설계에서는 이미지 중심의 인증만 고려되어 유저들의 생생한 보이스(Voice) 데이터를 구조화하여 보존하기 어려웠음.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Solution&lt;/b&gt;: 미션 인증 스키마를 고도화하여 텍스트 데이터도 함께 인덱싱될 수 있도록 DB 구조를 변경하고, 캠페인 종료 후 진행된 설문조사 데이터와 매핑하여 유저 피드백 아카이브를 구축함. 이는 차기 커뮤니티 갤러리 기능의 확장 기반이 됨.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드 (1).jpeg&quot; data-origin-width=&quot;611&quot; data-origin-height=&quot;643&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xfQPJ/dJMcacXZwoX/PWVOmznNGSYoyaKqj4MtQk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xfQPJ/dJMcacXZwoX/PWVOmznNGSYoyaKqj4MtQk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xfQPJ/dJMcacXZwoX/PWVOmznNGSYoyaKqj4MtQk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxfQPJ%2FdJMcacXZwoX%2FPWVOmznNGSYoyaKqj4MtQk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;611&quot; height=&quot;643&quot; data-filename=&quot;다운로드 (1).jpeg&quot; data-origin-width=&quot;611&quot; data-origin-height=&quot;643&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>디지털캠페인</category>
      <category>로컬네트워크</category>
      <category>사회적기업가</category>
      <category>챗봇개발</category>
      <category>카카오톡챗봇</category>
      <category>프로젝트회고</category>
      <author>태천인</author>
      <guid isPermaLink="true">https://taecheonin.tistory.com/2</guid>
      <comments>https://taecheonin.tistory.com/2#entry2comment</comments>
      <pubDate>Fri, 3 Jul 2026 01:09:26 +0900</pubDate>
    </item>
    <item>
      <title>마을공동체 디지털 전환 플랫폼 '마을백' (maeul100.com)</title>
      <link>https://taecheonin.tistory.com/1</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드 (1).png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;826&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/crxs84/dJMcage1fqk/KrIA2lDJ6KDBImKkdHVUXk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/crxs84/dJMcage1fqk/KrIA2lDJ6KDBImKkdHVUXk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/crxs84/dJMcage1fqk/KrIA2lDJ6KDBImKkdHVUXk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcrxs84%2FdJMcage1fqk%2FKrIA2lDJ6KDBImKkdHVUXk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;826&quot; data-filename=&quot;다운로드 (1).png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;826&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&quot;파편화된 로컬 커뮤니티 데이터의 통합 및 지속 가능한 아카이빙 플랫폼 구축&quot;&lt;/b&gt;&lt;br /&gt;지역 공동체의 정보 휘발 문제를 해결하기 위해 SNS 및 매체별로 분산된 정보를 모아 데이터화하고, 디지털 소외 계층과 단체를 위한 상세 페이지 빌딩 및 로컬 매칭 서비스를 제공하는 디지털 전환(DT) 프로젝트입니다.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;참여 기간&lt;/b&gt;: 2021.06 ~ 2022.08 (유지보수 및 확장 포함)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;역할&lt;/b&gt;: 1인 개발 (서비스 기획 및 디자인 협업, 풀스택 아키텍처 설계 및 핵심 기능 개발 담당)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;성과&lt;/b&gt;: 2022년 경기도마을공동체지원센터 국제포럼 디지털 전환(DT) 우수 사례 선정 및 발표&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Tech Stack&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Frontend&amp;amp;Backend&lt;/b&gt;: Wordpress / HTML5, CSS3, JQuery&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Database&lt;/b&gt;: MySQL&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Infrastructure&lt;/b&gt;: Cafe24&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Key Implementation &amp;amp; Work (핵심 구현 및 담당 업무)&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. 매체별 파편화된 데이터의 통합 및 정형화 디렉토리 시스템 구조 설계&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;인스타그램, 네이버밴드, 페이스북 등 외부 플랫폼에 분산된 로컬 콘텐츠의 휘발 문제를 해결하기 위한 중앙 집중형 아카이빙 시스템 구축.&lt;/li&gt;
&lt;li&gt;공동체 자원(단체, 공간, 가게 등)의 메타데이터(위치, 연락처, SNS 링크 등)를 구조화하여 확장 가능한 DB 스키마 설계.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;[마을점방]&lt;/b&gt; 이메일 연동 기반의 데이터 인입 프로세스를 고려하여, 비정형 데이터를 유연하게 수집하고 관리자(Admin) 단에서 빠르게 상세 페이지로 빌딩&amp;middot;배포할 수 있는 템플릿 엔진 구현.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. 주민 참여형 실시간 로컬 보드 플랫폼 구현&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;[마을톡톡] / [마을잡]&lt;/b&gt; 동네의 모임, 장터, 구인구직 등 잦은 데이터 변경(CUD)이 발생하는 오픈 게시판 형태의 서비스 개발.&lt;/li&gt;
&lt;li&gt;지역 주민(디지털 소외 계층 포함)의 접근성을 최우선으로 고려하여 UI/UX 복잡도를 최소화한 직관적인 폼(Form) 벨리데이션 및 상태 관리 구현.&lt;/li&gt;
&lt;li&gt;멀티미디어(이미지 등) 업로드 최적화를 통해 로딩 속도 및 인프라 비용 개선.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3. 서비스 확장성 및 확장 도메인을 고려한 설계&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;초기 용인시(동천동, 고기동) 중심의 아키텍처에서 타 지역구 및 골목상권(로컬 소상공인)으로 서비스 권역을 유연하게 확장할 수 있도록 지역 코드 기반의 멀티 테넌시(Multi-tenancy) 구조 고려 및 라우팅 설계.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Measurable Results (성과 및 비즈니스 임팩트)&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;기술을 통한 사회적 가치 증명&lt;/b&gt;: 2022년 경기도마을공동체지원센터 국제포럼에서 아날로그 자원을 온라인으로 성공적으로 이전한 '작지만 강한 디지털 전환' 사례로 인정받아 초청 발표 진행.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;지속 가능한 아카이빙 달성&lt;/b&gt;: 자체 홈페이지나 SNS 유지가 어려운 소규모 마을 단체들을 위한 고유 디지털 상세 페이지를 100% 자급하여 기술적 진입 장벽 제거.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Engineering Challenges &amp;amp; Troubleshooting (성장 경험 및 고민)&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 플랫폼마다 분산된 데이터의 아카이빙 방식 및 운영 효율화 고민&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Problem&lt;/b&gt;: 마을 단체마다 사용하는 SNS 채널이 달라, 사용자가 직접 데이터를 매번 양식에 맞춰 등록하기엔 허들이 높았고, 운영진이 매번 수동으로 이메일 수집 후 페이지를 만드는 것은 리소스 낭비가 심했음.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Solution&lt;/b&gt;: 마을백 유입되는 이미지와 텍스트 데이터를 빠르게 구조화된 상세 페이지로 전환할 수 있도록 &lt;b&gt;컴포넌트 기반의 어드민 페이지 및 데이터 파싱 자동화&lt;/b&gt; 프레임워크를 점진적으로 구축. 이를 통해 기획/운영팀의 상세 페이지 생성 소요 시간을 대폭 단축함.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Learned&lt;/b&gt;: 기술적 화려함보다 실제 사용자와 운영자의 편의성을 고려한 아키텍처 설계가 롱런하는 서비스의 핵심임을 깨달음.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 서비스 지역 확장 및 소상공인 데이터 유입에 따른 쿼리 확장성 대비&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Problem&lt;/b&gt;: 마을 공동체 단체 중심에서 '지역 기반 작은 가게'로 도메인이 확장됨에 따라 데이터 조회 조건(지역별, 카테고리별 필터링)이 복잡해질 가능성 존재.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Solution&lt;/b&gt;: 데이터베이스 설계 단계에서부터 지역 단위 코드와 카테고리 인덱싱을 고도화하여 대량의 로컬 데이터 검색 쿼리가 유입되더라도 지연 시간을 최소화할 수 있도록 인덱스 전략 수립 및 최적화 진행.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드 (2).png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;826&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bZY9BC/dJMcagzi1f4/UDrpEuOV4ZJVwr2YHXSGGk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bZY9BC/dJMcagzi1f4/UDrpEuOV4ZJVwr2YHXSGGk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bZY9BC/dJMcagzi1f4/UDrpEuOV4ZJVwr2YHXSGGk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbZY9BC%2FdJMcagzi1f4%2FUDrpEuOV4ZJVwr2YHXSGGk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;826&quot; data-filename=&quot;다운로드 (2).png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;826&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>IT로사회혁신</category>
      <category>데이터구조화</category>
      <category>데이터아카이빙</category>
      <category>디지털전환</category>
      <category>로컬플랫폼</category>
      <category>마을공동체</category>
      <category>우수사례발표</category>
      <category>웹서비스개발</category>
      <category>풀스택개발자</category>
      <category>확장성설계</category>
      <author>태천인</author>
      <guid isPermaLink="true">https://taecheonin.tistory.com/1</guid>
      <comments>https://taecheonin.tistory.com/1#entry1comment</comments>
      <pubDate>Fri, 3 Jul 2026 00:56:04 +0900</pubDate>
    </item>
  </channel>
</rss>