StudyDad Loop 제품을 만들며 배운 운영과 설계를 기록합니다.

FamBlend를 중심으로 실제 구현, 운영 메모, GitHub 포트폴리오를 연결해 쌓아가는 StudyDad의 작업 기록입니다.

워크플로우 6

Apps Script에서 S3로 직접 쓰지 않은 이유

자동화 워크플로우 시리즈 5/8Google Apps Script에서 AWS S3로 파일을 직접 업로드할 수도 있다.이론적으로는 가능하다. AWS Signature Version 4 서명을 직접 만들고, S3 PUT 요청을 보내면 된다.하지만 운영 자동화에서는 "가능하다"와 "좋은 선택이다"가 다르다.나는 Apps Script가 S3에 직접 쓰는 방식보다, API Gateway와 Lambda를 경유해 S3 저장을 위임하는 구조가 더 낫다고 봤다.문제 상황스프레드시트의 데이터를 가공해 JSON 파일로 저장해야 했다.이 JSON은 운영자 화면과 공개 페이지에서 읽을 데이터였다.구조는 단순해 보인다.Sheets-> Apps Script-> S3 JSON-> Console/Public page여기서 선택지는 두 ..

Apps Script를 비즈니스 로직 엔진으로 쓰기

자동화 워크플로우 시리즈 4/8Google Sheets를 운영 데이터의 원천으로 두면 자연스럽게 Google Apps Script를 쓰게 된다.폼 제출 이벤트를 받을 수 있고, 시트 데이터를 읽고 쓸 수 있으며, 외부 API도 호출할 수 있다.이 정도면 작은 운영 자동화에서는 충분히 비즈니스 로직 엔진 역할을 할 수 있다.하지만 Apps Script는 만능 백엔드가 아니다. 잘 맞는 역할과 넘기면 안 되는 역할을 구분해야 한다.Apps Script가 자연스러운 위치스프레드시트 중심의 업무에서 Apps Script는 데이터 가까이에 있다.예를 들어 다음 작업을 하기에 좋다.폼 제출 시 후처리입력값 정리상태값 업데이트특정 조건의 행 필터링운영자용 메뉴 추가외부 API 호출JSON 데이터 생성정기 동기화 실행..

Google Sheets를 Source of Truth로 둘 수 있는 조건

자동화 워크플로우 시리즈 3/8스프레드시트를 데이터 원천으로 쓴다고 하면 불안하게 들릴 수 있다.개발자 입장에서는 데이터베이스가 더 자연스럽다. 스키마가 있고, 권한이 있고, 쿼리가 있고, 트랜잭션도 있다.하지만 모든 운영 자동화에 RDB가 필요한 것은 아니다.특정 조건에서는 Google Sheets가 Source of Truth, 즉 원천 데이터 저장소 역할을 할 수 있다.중요한 것은 스프레드시트를 무작정 쓰는 것이 아니라, 어떤 조건에서 가능한지 명확히 아는 것이다.Source of Truth란 무엇인가Source of Truth는 같은 정보가 여러 곳에 있을 때 "원본으로 인정하는 곳"이다.운영 자동화에서는 데이터가 여러 곳에 복제될 수 있다.폼 응답스프레드시트S3 JSON운영자 화면공개 페이지월별..

Google Forms를 입력 도구로 인정하기

자동화 워크플로우 시리즈 2/8운영 시스템을 만든다고 하면 입력 화면부터 직접 만들고 싶어진다.회원 인증을 붙이고, 신청 폼을 만들고, 검증 로직을 넣고, 데이터베이스에 저장하고, 관리자 화면에서 조회하게 만드는 방식이다.하지만 모든 입력 흐름에 직접 만든 화면이 필요한 것은 아니다.특히 외부 사용자가 간단한 신청 정보를 제출하는 업무라면 Google Forms 같은 도구가 충분히 좋은 입력 도구가 될 수 있다.문제 상황외부 사용자가 특정 기간에 신청 정보를 제출해야 하는 업무가 있었다.입력 항목은 정해져 있었고, 제출량은 폭발적으로 많지 않았다. 운영자는 제출된 내용을 확인하고, 이후 상태를 관리해야 했다.이 상황에서 선택지는 두 가지였다.첫 번째는 신청 화면을 직접 만드는 것이다.두 번째는 Googl..

운영 자동화는 어디서 시작해야 할까

자동화 워크플로우 시리즈 1/8운영 자동화를 시작할 때 가장 먼저 떠올리는 것은 도구다.폼을 만들까, 스프레드시트를 쓸까, 관리자 페이지를 만들까, 자동화 스크립트를 붙일까, 아니면 처음부터 데이터베이스와 백엔드를 갖춘 시스템을 만들까.하지만 자동화는 도구에서 시작하면 자주 실패한다.먼저 봐야 할 것은 업무 흐름이다.누가 입력하고, 누가 확인하고, 어떤 기준으로 상태가 바뀌고, 결과가 누구에게 공개되는지부터 정리해야 한다. 그다음에야 어떤 도구가 충분한지 판단할 수 있다.문제 상황신청을 받고, 내부에서 확인하고, 일정이나 결과를 공개하는 업무가 있었다.처음부터 완전한 백오피스 시스템을 만들 수도 있었다. 로그인, 신청 화면, 관리자 화면, 상태 관리, 데이터베이스, 알림, 공개 페이지를 모두 직접 구현하..

GAS + Lambda로 정산 데이터 자동 수집, 가공, 리포트 발송하기

🪙 정산 자동화 시리즈 #2GAS + Lambda로 정산 데이터 자동 수집, 가공, 리포트 발송하기1️⃣ 목표이 단계에서는 다음을 자동화하여 정산 보고 프로세스를 구축한다:✅ 매일/매주 거래 데이터 자동 수집✅ 카테고리별 수수료율, 반품/환불 데이터 자동 가공✅ 엑셀 리포트 생성 및 자동 이메일 발송✅ Slack/메일 보고 자동화2️⃣ 아키텍처 개요구조 설명사용자 → Google Sheets 메뉴 클릭GAS → Lambda URL로 action, params 전송Lambda:DB 조회Excel 리포트 생성SES 이메일 발송사용자 → Slack/메일로 보고 받음Google Apps Script (GAS): 시트 기반 유저 인터페이스, Lambda 호출, Slack 연동AWS Lambda + EventBr..