AI 지원 로우코드(low-code) 도구를 활용해 가나의 한 개발자가 만든 크라우드소싱 기반 정전 추적기 PowerPulse가 두 번의 주요 제품 피벗을 거쳐 Vercel에서 정식 출시되었습니다. 이 앱은 전문적인 소프트웨어 엔지니어링 배경 지식이 없어도 가나의 누구나 정전을 보고하고, 실시간 보고 피드를 확인하며, 복구 통계를 볼 수 있도록 설계되었습니다.

“dumsor”에 공유된 진실이 필요한 이유

가나에서 “dumsor”는 예고 없이 마을 전체를 어둠 속으로 몰아넣는 불규칙한 정전을 의미합니다. 주민들은 문제가 자신의 연결 상태 때문인지, 거리의 문제인지, 아니면 국가 전력망의 문제인지 추측하느라 수 시간을 허비합니다. 이러한 불확실성은 비즈니스, 학업, 그리고 일상생활을 지연시킵니다. 커뮤니티가 검증한 정전 데이터 소스가 있다면, 사람들은 정전에 대비해 계획을 세우고, 구호 활동을 조율하며, 유틸리티 기업에 서비스 개선을 요구할 수 있을 것입니다.

개인적인 불만에서 시빅테크(civic-tech) 프로토타입으로

비전문 개발자라고 자신을 소개하는 제작자는 dumsor에 대한 개인적인 짜증을 공공 서비스로 탈바꿈시켰습니다. 그녀는 모든 코드를 직접 작성하는 대신, 프롬프트 기반 코드 생성 및 사전 구축된 서비스를 제공하는 AI 기반 로우코드 플랫폼을 사용하여 풀스택 웹 앱을 하나로 엮어냈습니다.

이 제품은 네 가지 핵심 기능을 제공합니다:

  • 정전 보고: 드롭다운 메뉴에서 지역과 마을을 선택하여 정전을 보고합니다.
  • 실시간 피드 확인: 현재 보고된 모든 정전 상황을 실시간으로 확인합니다.
  • 통계 탐색: 정전 지속 시간 및 복구 속도에 관한 통계를 살펴봅니다.
  • 포인트 및 등급 획득: 빈번하게 기여하는 사용자에게 포인트와 등급을 부여하여 지속적인 보고를 독려합니다.

이를 가능하게 한 기술 스택

  • Next.js 16TypeScript: 프론트엔드 프레임워크 및 타입 안정성 확보.
  • Tailwind CSS: 신속한 유틸리티 우선 스타일링.
  • Supabase: 데이터베이스, 사용자 인증 및 실시간 업데이트.
  • Vercel: 자동 확장이 가능한 호스팅.

모든 구성 요소는 오픈 소스이거나 관리형 서비스(managed services)이므로, 개발자는 AI가 보일러플레이트(boilerplate) 코드를 채워주는 동안 제품 로직에 집중할 수 있었습니다.

피벗 1 – 실시간 지도 제거

첫 번째 프로토타입은 오픈 소스 JavaScript 매핑 라이브러리인 Leaflet으로 구축된 가나의 실시간 지도를 특징으로 했습니다. 하지만 Leaflet은 브라우저 환경을 필요로 하는데, 이는 Next.js의 서버 사이드 렌더링(SSR)과 충돌하여 디버깅하기 어려운 버그를 발생시켰습니다. 이러한 버그와 씨름한 끝에, 개발자는 지도를 제거하고 지역과 마을을 선택할 수 있는 간단한 드롭다운 선택기로 대체했습니다. UI의 시각적 화려함은 줄어들었지만, 보고를 수집하고 표시한다는 핵심 기능은 더욱 안정적이고 출시 가능한 수준이 되었습니다.

피벗 2 – 레이아웃 재설계

초기 버전은 보고, 피드, 통계를 한데 모은 단일 스크롤 페이지였습니다. 사용자들은 이를 보고 “학교 과제물 같다”는 의견을 주었습니다. 앱에 더 세련된 느낌을 주기 위해 네비게이션을 전면 개편했습니다. 이제 데스크톱 브라우저에서는 사이드바에 주요 섹션이 위치하며, 모바일 사용자에게는 하단 네비게이션 바가 제공됩니다. 보고, 피드, 통계의 각 뷰는 전용 화면을 갖게 되어, 단순한 개념 증명(PoC)이 아닌 성숙한 제품처럼 느껴지게 되었습니다.

콜드 스타트(Cold-start)의 딜레마

기능적인 인터페이스를 갖추었더라도, 크라우드소싱 시스템은 사용자의 참여에 의존합니다. 이 앱은 충분한 사람들이 정전을 보고하여 커버리지가 생성되는 지역에서만 유용합니다. 이는 코딩의 결함이 아니라 커뮤니티 구축의 과제입니다. 기여자의 임계 질량(critical mass)이 확보되지 않으면 데이터 세트가 빈약해져 앱의 가치가 제한됩니다.

반론: 로우코드의 한계와 트레이드오프

AI 지원 로우코드 도구는 개발 속도를 높여주지만 제약을 가하기도 합니다. 지도 문제는 미리 패키징된 라이브러리가 선택한 프레임워크와 조화를 이루지 못할 수 있음을 보여주며, 이로 인해 지리적 맥락을 희생하는 재설계가 강요될 수 있습니다. 또한 Supabase와 같은 관리형 백엔드에 의존하면 맞춤형 분석이나 자체 서버가 제공할 수 있는 오프라인 기능을 제한할 수도 있습니다. 개발자는 특히 사회적 영향력이 걸린 문제에서 속도와 유연성 사이의 균형을 잘 따져봐야 합니다.

향후 계획

로드맵은 세 가지 기능 강화를 목표로 합니다:

  • AI 기반 정전 위험 예측: 과거 데이터를 사용하여 정전 가능성이 높은 지역을 예측합니다.
  • 푸시 알림: 사용자의 지역이 정전되었거나 복구되었을 때 알림을 보냅니다.
  • 네이티브 모바일 앱 개발.

각 기능 추가는 사용자 참여를 높이는 것을 목표로 하며, 공급 측면(더 많은 기능, 앱을 설치하고 사용해야 할 더 많은 이유)에서 콜드 스타트 문제를 해결하고자 합니다.

시사점

PowerPulse는 전력 공급이 불안정한 시장에서도 결단력 있는 개인이라면 AI 기반 로우코드 플랫폼을 활용해 실용적인 시민 기술(civic-tech) 솔루션을 구현할 수 있음을 보여줍니다. 이 이야기는 두 가지 교훈을 강조합니다. 첫째, 결함이 있는 기능을 완벽하게 만드는 것보다 사용 가능한 제품을 출시하는 것이 더 중요하다는 점입니다. 둘째, 기술만으로는 크라우드소싱 문제를 해결할 수 없으며, 기여자 커뮤니티를 구축하는 것이야말로 진정한 병목 구간이라는 점입니다.