figma

제작 비하인드: 개발 (새 탭에서 열림)

개빈 맥팔랜드는 사용자들이 겪는 불편에서 아이디어를 얻어 Figma 플러그인과 FigJam 위젯을 개발해 왔다. 대표작인 Table Creator와 테이블 위젯은 FigJam을 떠나지 않고 표 데이터를 생성·관리하도록 돕는다. 그는 단순한 API 실험에서 출발했지만, 실시간 협업과 대규모 데이터 처리 같은 문제로 관심을 확장하며 도구가 팀의 생산성과 협업을 높여야 한다고 강조한다.

사용자 문제에서 출발한 개발

  • 개빈은 사용자 중심 디자인을 바탕으로 기업의 디지털 전환을 돕는 프리랜서 디자인 컨설턴트다.
  • 친구와 가족의 웹사이트를 제작하던 경험에서 시작해, 새로운 기술과 작업 방식을 꾸준히 시도해 왔다.
  • 트위터에서 “Figma에서 표를 더 쉽게 만들고 싶다”는 요청을 본 것이 플러그인 개발의 계기가 됐다.
  • Figma의 Rectangle Creator 예제를 수정해 표 생성 기능을 만들었고, 이를 Table Creator라는 첫 플러그인으로 출시했다.
  • 해당 플러그인은 수만 명이 사용할 정도로 확산됐다.

FigJam용 테이블 위젯

  • 첫 플러그인 개발 경험을 바탕으로 FigJam용 테이블 위젯을 제작했다.
  • 위젯의 주요 기능은 다음과 같다.
    • 행과 열 추가
    • 데이터 가져오기
    • 열 기준 정렬
    • 표의 디자인과 구조 조정
  • 별도의 도구로 이동하지 않고 FigJam 작업 공간에서 표 데이터를 바로 확인하고 활용할 수 있도록 설계됐다.
  • 디자인 작업, 협업 회의, 데이터 정리 등 표 형식의 정보를 사용하는 다양한 팀을 대상으로 한다.

예제 코드로 시작한 개발 방식

  • 처음에는 FigJam 위젯의 notepad 예제를 수정하며 API 동작을 단계적으로 익혔다.
  • 간단한 변경을 반복하면서 위젯의 구조와 동작 방식을 파악했다.
  • 기존에 익숙하지 않았던 JSX 코드도 개발 과정에서 학습했다.
  • 기본적인 사용법을 이해한 뒤 행과 열을 표시하고, 여러 레이아웃과 디자인을 실험했다.
  • 완성된 설계에서 시작하기보다 작은 프로토타입을 빠르게 수정하는 방식으로 기능을 발전시켰다.

단순한 기능에서 협업 문제로 확장

  • 처음에는 위젯 API를 익히기 위한 연습 프로젝트였지만, 팀 협업을 개선할 수 있는 도구로 발전했다.
  • 여러 사용자가 같은 표를 동시에 편집할 때 발생하는 문제에 관심을 갖게 됐다.
  • 특히 다음과 같은 과제가 중요하다고 보았다.
    • 다른 사용자가 같은 표를 편집 중임을 어떻게 표시할 것인가
    • 실시간 멀티플레이어 상호작용을 어떻게 설계할 것인가
    • 대량의 데이터를 다루면서도 인터페이스가 느려지지 않게 하려면 어떻게 해야 하는가
  • 시각적 디자인과 기술적 구현을 함께 고민해야 한다는 점이 개발의 매력으로 작용했다.

영감과 개발자 커뮤니티

  • 영감은 사람들이 디자인 과정에서 어떤 부분을 어렵게 느끼는지 관찰하는 데서 얻는다.
  • Friends of Figma Slack 그룹에서 사용자들의 요구와 작업상의 불편을 파악한다.
  • 플러그인 개발자 커뮤니티에도 적극적으로 참여하며 다른 제작자들과 아이디어와 개선 방법을 공유한다.
  • 사용자 피드백과 개발자 간 협업을 통해 실제 업무 문제를 해결하는 기능을 찾으려 한다.

생산성과 협업을 위한 도구

  • 위젯을 사용하는 사람들이 더 생산적으로 일하고, 중요한 문제에 집중하기를 기대한다.
  • 개인의 작업 속도 향상뿐 아니라 팀원 간 협업을 더욱 긴밀하게 만드는 것이 목표다.
  • 개빈에게 좋은 도구란 기능을 추가하는 데 그치지 않고, 사람들이 일상적으로 겪는 문제를 함께 해결하도록 돕는 도구다.
  • 이후에도 Figma 플러그인인 Node Decoder를 만드는 등 새로운 개발 작업을 이어가고 있다.

사용자들이 반복적으로 겪는 불편을 관찰하고, 작은 예제에서 출발해 실제 협업 환경에 필요한 기능으로 확장한 점이 이 사례의 핵심이다. Figma·FigJam 플러그인을 개발할 때도 기능 자체보다 사용자의 작업 흐름, 실시간 협업, 데이터 규모와 성능을 함께 고려하는 것이 중요하다.