Skip to main content

Reindeers Workflow: B2B 파트너 업무 효율과 자동화를 위한 워크플로우 플랫폼

B2B 파트너 업무 효율과 자동화를 위한 워크플로우 플랫폼

기술 스택, 서비스 목표, 그리고 실제 업무 효율 증대 사례까지

프로젝트를 시작한 이유: B2B 파트너의 업무 효율과 자동화

REINDEERS 플랫폼은 내부 직원과 B2B 파트너가 함께 사용하는 비즈니스 환경입니다. 반복되는 수작업, 툴 간 데이터 복사·붙여넣기, 수동 알림·리포트 작성 등은 시간을 잠식하고 실수를 늘립니다. 이런 문제를 줄이기 위해 우리는 업무 흐름을 한 곳에서 설계하고, 트리거 기반으로 자동 실행되는 워크플로우 플랫폼이 필요했습니다. 그래서 워크플로우 엔진을 기반으로 자사 브랜딩과 인프라에 맞춘 Reindeers Workflow 프로젝트를 시작했습니다.

목표는 단순했습니다. “파트너와 직원이 코드 없이 워크플로우를 만들고, 폼·웹훅·스케줄·외부 서비스 연동으로 반복 업무를 자동화할 수 있는 하나의 플랫폼”을 제공하는 것입니다. 동시에 보안과 운영을 위해 단일 도메인(workflow.reindeers.com)에서 HTTPS로 서비스하고, 내부 전용(직원·파트너)으로 제한해 사용할 수 있도록 했습니다.

해결하고자 했던 것

첫째, 도구 간 수동 연동이었습니다. 이메일, 슬랙, 스프레드시트, CRM, API 등 여러 시스템 사이에서 사람이 중간에 끼어 정보를 옮기는 구조는 비효율적이고 지연을 만들었습니다. 둘째, 반복 작업의 자동화 부재입니다. 주기적 리포트, 이벤트 시 알림, 폼 제출 후처리 등을 매번 사람이 하면 낭비가 큽니다. 셋째, 일관된 자동화 환경 부재입니다. 팀·파트너마다 스크립트·스케줄러를 따로 쓰면 유지보수와 권한 관리가 어렵습니다. Reindeers Workflow는 “워크플로우 편집기 + 트리거/노드 + 단일 인스턴스”로 이 세 가지를 해결해, 하나의 URL에서 설계·실행·이력 조회가 모두 가능한 플랫폼을 만들었습니다.

기술적 구성: 무엇으로, 어떻게 돌아가나

Reindeers Workflow는 워크플로우 엔진 모노레포를 기반으로 브랜딩과 설정을 커스터마이징한 형태입니다. 전부 TypeScript로 작성되며, Node.js 22 이상, pnpm 10 이상을 요구합니다. 프론트엔드는 Vue 3 기반의 워크플로우 에디터(노드 기반 캔버스, 드래그·연결·파라미터 패널)를 사용하고, 백엔드는 Node.js 기반의 CLI/서버가 HTTP API·웹훅·스케줄·실행 엔진을 담당합니다. 데이터 저장은 PostgreSQL을 사용해 워크플로우 정의, 활성 버전, 실행 이력, 자격 증명(암호화된 값), 사용자·프로젝트·공유 정보를 안정적으로 보관합니다.

배포는 deploy/docker-compose.yml 한 세트로 Postgres·워크플로우 앱·Caddy(리버스 프록시·HTTPS)를 띄우며, 환경 변수(POSTGRES_PASSWORD, N8N_HOST 등)로 DB 비밀번호와 호스트(예: workflow.reindeers.com)를 설정합니다. CI/CD는 Drone으로, main 푸시 시 빌드 → Docker 이미지 푸시 → SSH로 운영 서버에서 pull·docker compose up -d가 자동으로 이어져 코드 푸시만으로 최신 플랫폼이 반영됩니다.

로그인 화면과 시스템 메시지에는 “REINDEERS 플랫폼의 내부 업무 자동화 및 AI Agent 서비스”, “REINDEERS 직원 전용” 문구를 넣어 서비스 정체성을 분명히 했고, 타임존은 Asia/Shanghai로 맞춰 운영합니다.

제공하는 기능과 “해결한 것”

트리거와 자동 실행: Reindeers Workflow Form Trigger로 웹 폼을 만들면 제출 시점에 워크플로우가 자동 실행됩니다. 리드 수집·문의 접수·이벤트 등록을 폼으로 받고 이메일·시트·CRM 연동을 노드로 이어붙일 수 있습니다. 웹훅 트리거는 슬랙, GitHub, 결제·CRM 등 외부 이벤트 수신 시 즉시 워크플로우를 실행하며, Reindeers Workflow Trigger는 워크플로우 발행·업데이트·인스턴스 시작 시 후속 작업을 돌립니다.

워크플로우 간 호출: Execute Workflow Trigger로 한 워크플로우가 다른 워크플로우를 서비스처럼 호출할 수 있습니다. 알림·데이터 정규화·로깅 등 공통 로직을 하위 워크플로우로 분리해 여러 플로우에서 재사용하면 모듈화와 유지보수가 쉬워집니다.

연동 노드와 자격 증명: Gmail, Slack, Notion, Telegram, Google Sheets, HTTP Request 등 수백 개의 노드가 내장되어 있어 코드 없이 API·서비스와 연결할 수 있습니다. 자격 증명은 플랫폼 내에서 암호화·관리되며 OAuth·API 키 등을 지원하고, 노드에서 “어떤 자격 증명을 쓸지”만 선택하면 실행 시 안전하게 주입됩니다.

우리의 기술 구조: 모노레포와 빌드

코드베이스는 pnpm 워크스페이스 + Turbo 모노레포입니다. workflow에 워크플로우 그래프·노드 실행 규칙·표현식 평가가, core에 실행 엔진(노드 실행 스택, 트리거·폴링 활성화, 서브워크플로우 호출)이 들어 있고, cli가 HTTP 서버·웹훅 라우팅·DB·자격 증명·RBAC를 담당합니다. nodes-base에는 트리거·일반 노드·자격 증명 타입 정의가, editor-ui에는 Vue 에디터가 있습니다. 프로덕션은 build-n8n.mjs로 전체 빌드 후 compiled/를 Docker 이미지에 넣어 서비스합니다.

워크플로우 실행 엔진과 트리거

“시작 노드”에서 연결된 노드를 순서대로 실행하는 노드 실행 스택 방식을 씁니다. 트리거(폼, 웹훅, 스케줄)가 진입점이고, 활성화 시 경로·메서드별로 DB에 등록되며 요청 수신 시 해당 워크플로우를 로드해 트리거부터 실행합니다. 폼은 GET(폼 페이지)·POST(제출)를 같은 경로로 두고 제출 시 즉시 실행합니다. 트리거는 웹훅(HTTP 수신·등록/해제 관리), 폴링(주기적 poll), 이벤트(워크플로우 발행·인스턴스 시작) 세 패턴으로 나뉘며, 라이브 웹훅과 테스트(편집 중) 웹훅을 분리해 배포된 플로우와 편집 중인 플로우가 서로 간섭하지 않도록 했습니다.

표현식과 보안: 샌드박스

노드 파라미터·조건문의 표현식은 사용자 입력을 그대로 eval하지 않고, AST 파서로 파싱한 뒤 허용된 연산·예약 변수만 통과시키는 샌드박스를 적용합니다. with·eval·전역 접근은 차단하고, $json·$node 등 노드 간 데이터 참조만 안전하게 쓸 수 있어, 워크플로우 정의가 서버와 데이터에 미치는 영향을 제한합니다.

자격 증명과 권한

자격 증명(API 키, OAuth 토큰 등)은 DB 저장 전 암호화하고, 복호화는 실행 시 해당 워크플로우·노드에 권한이 있을 때만 합니다. 프로젝트 단위로 자격 증명을 공유(SharedCredentials)하고, RBAC로 credential:owner·workflow:owner 등 역할을 나누어 접근을 제어합니다. 웹훅·폼 요청이 들어와도 그 워크플로우를 소유한 프로젝트 기준으로 실행 컨텍스트와 자격 증명 접근이 정해지므로, 팀·파트너 단위로 자동화를 안전하게 나눌 수 있습니다.

데이터 저장과 인프라

워크플로우·활성 버전·실행 이력·자격 증명·사용자·프로젝트는 모두 PostgreSQL에 두며 TypeORM 엔티티로 스키마를 관리합니다. 자격 증명 생성·공유는 트랜잭션으로 원자 처리합니다. 배포 시 Postgres·앱·Caddy를 컨테이너로 띄우고, Caddy가 80/443과 TLS를 처리해 별도 인증서 없이 HTTPS를 제공합니다. docker compose up -d로 앱만 갱신해도 DB·볼륨 데이터는 유지됩니다.

현재 기능으로 얻는 업무 효율

폼 제출·웹훅 수신 시 즉시 워크플로우가 돌아가 문의·리드·등록을 이메일·시트·CRM으로 이어줍니다. 서브플로우 재사용으로 알림·검증·로깅을 공유할 수 있고, workflow.reindeers.com 한 곳에서 설계·실행·이력을 관리합니다. “결제 완료 시”, “이슈 생성 시”처럼 외부 이벤트에 맞춰 알림·리포트·데이터 갱신을 자동화할 수 있습니다. 리드 폼→메일·슬랙, 주기 시트 집계·리포트, API 결과 시트 반영 등이 이미 쓰이고 있으며, 비개발자도 노드 연결만으로 자동화를 만들 수 있어 전사 적용 속도가 빨라졌습니다.

Reindeers Workflow는 B2B 파트너와 내부 직원의 반복 업무를 줄이고, 이벤트·폼 기반 자동화를 한 플랫폼에서 설계·운영하게 해 주는 서비스입니다. 트리거·노드·실행 엔진, PostgreSQL, Docker·Caddy·Drone CI/CD로 구성되어 있으며, 앞으로도 트리거와 노드를 확장해 더 많은 시나리오를 코드 없이 자동화할 예정입니다.

서비스 관점에서의 정리

Reindeers Workflow는 “내부·파트너 전용”으로 설계되었고, 로그인 화면과 문구로 REINDEERS 플랫폼의 공식 업무 자동화 서비스임을 명시합니다. 퍼블릭 SaaS가 아니라 B2B 파트너와 내부 팀의 업무 품질·속도를 높이기 위한 전용 인프라로 쓰입니다. 폼·웹훅·스케줄·워크플로우 호출·연동 노드 조합으로 코드 없이 리드 수집·알림·리포트·데이터 동기화를 다루며, “B2B 파트너의 업무 효율과 자동화”를 기술 스택과 기능으로 구체화한 결과입니다.

블로그를 읽어 주셔서 감사합니다. 궁금한 점이나 자동화 시나리오는 내부 채널로 공유해 주세요.


Reindeers Workflow | 내부 업무 자동화 및 AI Agent 플랫폼 | workflow.reindeers.com

Popular posts from this blog

팀과 기술의 리빌드 — 다시 일하는 법을 정비하다

팀과 기술의 리빌드 — 다시 일하는 법을 정비하다 요약: REINDEERS는 시스템을 다시 설계하기 전에 먼저 팀을 해체했다. 기존 인력 전원이 퇴사한 후, 기술 커트라인을 통과한 새로운 엔지니어들로 조직을 재구성했다. 이후 Drone 기반 CI/CD, Git 워크플로우, 테스트 자동화, AI 협업 체계까지 모든 기술 문화가 새롭게 정의되었다. 1. 리빌드의 시작 — 사람부터 바꿨다 2025년 4월 초, REINDEERS는 중대한 결정을 내렸다. 시스템을 새로 만드는 일보다 먼저, 사람을 바꾸기로 한 것이다. 플랫폼은 기술로 움직이지만, 운영의 일관성을 무너뜨리는 것은 언제나 사람이다. 결국 기존 직원들은 모두 퇴사했다. 이전 팀은 실험적이었지만, 운영 가능한 구조를 만들기엔 역부족이었다. 남은 것은 코드 일부와 배포 스크립트뿐이었다. 우리는 그 위에 새로운 문화를 세우기보다, 완전히 새 팀을 만드는 길을 선택했다. “사람을 남긴 게 아니라, 기준을 남겼다.” 2. 새 팀의 탄생 — 기술 커트라인부터 통과해야 했다 신규 채용의 기준은 단순했다. “ 운영 가능한 기술을 이해하는가 .” 단순히 코드를 작성할 줄 아는 개발자가 아니라, 시스템이 어떻게 동작하고 복제되며, 장애를 어떻게 복구해야 하는지를 아는 엔지니어만이 합류할 수 있었다. 기술 커트라인 (필수 항목) Nuxt 3 / Vue3 + SSR 구조 이해 Python / Node.js 기반 API 서버 설계 경험 Drone CI/CD 파이프라인 구축 및 유지 경험 Tencent Cloud CLI 활용 및...

JD 플랫폼 매니저 (Platform Manager )

🇰🇷 플랫폼 매니저 (운영 / 글로벌 B2B & AI 기반 자동화 플랫폼) 회사명: (주)레인디어스 | Reindeers Co., Ltd. 근무지: 서울 / 방콕 (Hybrid 가능) 고용형태: 정규직 (계약-전환형 가능) ⸻ 회사 소개 레인디어스는 산업자재 및 무역 중심의 글로벌 B2B 플랫폼을 운영하는 기술 기반 기업입니다. 한국, 태국, 말레이시아, 중국 등 주요 아시아 시장에서 **견적–발주–물류(3PL)–통관–정산–재고관리(WMS)**를 통합 관리하는 시스템을 제공하며, AI 기반 자동화와 데이터 인사이트로 업무 효율과 무역 생산성을 혁신하고 있습니다. 레인디어스는 운영 중심의 플랫폼 관리 전문가를 찾습니다. 본 포지션은 플랫폼의 운영·유지·관리·발전·확장을 담당하며, 서비스가 안정적으로 성장하도록 전체적인 흐름을 관리하는 역할을 맡습니다. (※ 개발 업무를 직접 수행하지 않으며, 개발팀과 협업을 통해 개선을 주도합니다.) ⸻ 주요 업무 • REINDEERS B2B 플랫폼의 운영 및 서비스 유지관리 • 상품, 주문, 물류(3PL), 통관, 정산 등 운영 프로세스 실행 및 관리 • 사용자(공급사·고객사) 중심의 운영 이슈 대응 및 개선 요청 관리 • 운영 효율화 및 신규 기능 제안을 위한 서비스 개선 기획 및 테스트 • AI 기반 자동화 기능(데이터 매칭, 견적 추천 등) 운영 및 모니터링 • 국가별 서비스 환경(태국·말레이시아·중국·한국) 유지 및 운영 품질 관리 • 운영 데이터 분석을 통한 서비스 개선 및 운영 인사이트 도출 • 개발·물류·영업 등 유관 부서와의 운영 협의 및 실행 관리 ⸻ 자격 요건 • 플랫폼 운영 또는 서비스 관리 경력 3~7년 내외 • e-Commerce, B2B, 무역, Fulfillment(3PL/WMS) 관련 서비스 운영 경험 • 플랫폼 운영 프로세스(주문·정산·물류·CS 등)에 대한 이해 • 데이터 기반 문제 해결 및 서비스 ...

레인디어스, Buybly로 동남아시아 산업자재 시장 혁신

B2B 오픈마켓 Buybly, 한국 기업의 글로벌 진출을 돕다 레인디어스, 머신러닝 기반의 산업자재 매칭 솔루션으로 경쟁력 강화 김명훈 레인디어스 대표 산업자재 시장의 복잡성과 유통장벽은 많은 기업들에게 큰 도전 과제가 되어왔다. 특히 동남아시아 시장 진출을 원하는 한국의 산업자재 제조사들은 현지의 불투명한 거래 환경과 물류 문제로 어려움을 겪어왔다. 이러한 상황에서 레인디어스의 Buybly 플랫폼은 새로운 기회를 제시하고 있다. Buybly는 B2B 오픈마켓으로, 한국 기업들이 손쉽게 동남아시아 시장에 진출할 수 있도록 지원하며, 유통의 복잡성을 해결하는 혁신적인 솔루션으로 주목받고 있다. 이러한 변화의 중심에는 레인디어스 대표가 있다. 그는 지난 9년간 태국에서의 경험을 바탕으로 고객의 pain point를 해결하기 위해 Buybly를 개발했다. 이번 인터뷰를 통해 그의 비전과 경영 철학, 그리고 Buybly가 어떻게 산업자재 시장을 변화시키고 있는지에 대해 깊이 있는 이야기를 나누게 되었다. 김명훈 레인디어스 대표 -.소개  레인디어스는 국내 산업자재 제조사들이 동남아시아 시장에 쉽게 진출할 수 있도록 돕는 B2B 오픈마켓인 Buybly를 운영하고 있다. 해외 시장 진출에서 가장 큰 장애물인 유통, 물류, 무역의 장벽을 해결해주는 것이 이 플랫폼의 핵심이다. Buybly는 단순한 거래 플랫폼이 아니라, 산업자재 구매와 공급 과정을 간소화하고 최적화하는 One-Stop 솔루션으로 자리 잡았다. 레인디어스의 서비스는 Buybly와 Enterprise Solution(ERP, POP, WMS)으로 구성되어 있다. 이 솔루션은 동남아시아 현지의 고객사와 공급사에 맞춤형으로 제공되며, 산업현장의 선진화를 이끌어낸다. 기업 운영과 생산 관리, 재고 관리를 전산화해 이익을 극대화하는 데 기여하고 있다. Buybly는 산업현장에서 획득한 Raw data를 활용해 인공지능 분석을 통해 발주 주기와 재고에 따른 최적의 산업자재 및 공급사 매칭 기능을 제공한다. 이로...