Techlist.io - 한국 테크 블로그 큐레이터

coupang원문

클라우드 서비스 사용량 관리를 통한 운영 비용 최적화 (새 탭에서 열림)

쿠팡은 파이낸스 및 엔지니어링 팀의 긴밀한 협력을 통해 클라우드 온디맨드 비용을 최적화하고 재정적 책임을 강화하는 운영 모델을 구축했습니다. 'Hate Waste'라는 리더십 원칙에 따라 데이터 기반의 분석 도구를 도입하고 리소스 사용량을 효율적으로 통제함으로써, 서비스의 신뢰성을 유지하면서도 연간 수백만 달러 이상의 운영 비용을 절감하는 성과를 거두었습니다. **최적화 전담 팀 구성과 데이터 기반 의사결정 체계 구축** * 클라우드 인프라 엔지니어와 TPM(Technical Program Manager)을 중심으로 전담 프로젝트 팀을 구성하여 각 도메인 팀이 클라우드의 가변 비용 모델을 깊이 이해하도록 지원했습니다. * Amazon Athena를 통해 처리된 CloudWatch 데이터와 AWS CUR(Cost & Usage Reports)을 활용하여 실시간 비용 및 사용량을 분석할 수 있는 맞춤형 BI 대시보드를 개발했습니다. * 파이낸스 팀과의 협업을 통해 월별·분기별 예산 준수의 중요성을 강조하고, 각 팀이 주도적으로 리소스를 관리하는 엔지니어링 문화를 정착시켰습니다. **리소스 효율화와 기술적 최적화를 통한 실질적 비용 절감** * **사용량 절감(Use Less):** 비-프로덕션(Non-prod) 환경에서 리소스가 필요할 때만 자동으로 시작되도록 설정하여 해당 환경의 운영 비용을 약 25% 절감했습니다. * **비용 최적화(Pay Less):** 사용량 패턴을 분석하여 방치된 EC2 리소스를 수동으로 제거하고, 인스턴스를 최신 세대로 조정하여 성능 향상과 가용성 확보를 동시에 달성했습니다. * **기술적 수단 활용:** Amazon S3 스토리지 구조를 최적화하고, AWS Spot Instances 및 ARM 기반의 AWS Graviton 인스턴스를 도입하여 데이터 처리 및 저장 비용을 획기적으로 낮추었습니다. 클라우드 비용 관리는 단순히 지출을 줄이는 작업을 넘어, 인프라를 얼마나 더 똑똑하고 효율적으로 활용하느냐에 대한 기술적 성숙도를 의미합니다. 조직 전체가 비용에 대한 주인의식을 갖고 데이터를 바탕으로 리소스를 관리할 때, 비즈니스의 성장과 인프라의 지속 가능성을 동시에 확보할 수 있습니다.

coupang원문

쿠팡 SCM 워크플로우: 효율적이고 확장 가능한 low-code, no-code 플랫폼 개발 (새 탭에서 열림)

쿠팡 SCM 팀은 복잡한 공급망 관리 과정에서 발생하는 다양한 직군 간의 협업 비용을 줄이고 시스템 확장성을 높이기 위해 'SCM 워크플로우 플랫폼'을 구축했습니다. 이 플랫폼은 Low-code와 No-code 방식을 도입하여 개발자뿐만 아니라 비개발자도 직접 데이터 파이프라인을 설계하고 서비스에 적용할 수 있는 환경을 제공합니다. 이를 통해 요구사항 변화에 민첩하게 대응하며, 데이터 생성부터 프로덕션 연동까지의 전 과정을 효율화하는 것을 목표로 합니다. **No-code 데이터 빌더를 통한 데이터 접근성 혁신** * **다양한 데이터 소스 통합:** Redshift, Hive, Presto, Aurora, MySQL, Elasticsearch, S3 등 산재한 공용 데이터 소스에 대한 접근 및 질의를 코드 없이 수행할 수 있습니다. * **시각적 노드 기반 설계:** 사용자는 데이터 추출, 계산, 연동 등의 과정을 시각적인 '노드'로 생성하고 연결함으로써 직관적인 데이터 워크플로우를 구성할 수 있습니다. * **협업 효율화:** 비즈니스 분석가(BA)나 데이터 사이언티스트가 개발자에게 매번 파이프라인 생성을 요청하던 기존 프로세스를 개선하여, 스스로 데이터를 가공하고 시스템에 반영할 수 있게 함으로써 커뮤니케이션 비용을 획기적으로 낮췄습니다. **Low-code 기반의 서비스 확장 및 운영 효율화** * **도메인 확장성 확보:** 새로운 시스템을 매번 구축하지 않고도 워크플로우 설정을 통해 도메인을 확장할 수 있어, 변화가 빠른 이커머스 환경에 유연하게 대처합니다. * **기존 도구의 복잡성 해소:** Jenkins, Airflow, Notebook 등 파편화된 도구들이 가진 연결성 문제를 단일 플랫폼 안에서 통합하여 관리 편의성을 높였습니다. * **신속한 서비스 론칭:** 간단한 조작만으로 데이터를 시각화하거나 간단한 서비스를 출시할 수 있는 환경을 제공하여 아이디어의 실행 속도를 높였습니다. **실용적인 결론 및 제언** SCM 워크플로우 플랫폼은 데이터 기반 의사결정의 주체를 전 직군으로 확대하는 '데이터 민주화'를 실현하는 도구입니다. 복잡한 MSA(마이크로서비스 아키텍처) 환경에서 데이터 파이프라인 유지보수에 많은 리소스를 소모하고 있는 조직이라면, 이러한 로우코드 기반의 워크플로우 플랫폼을 도입하여 엔지니어링 역량을 핵심 알고리즘 개발에 집중시키고 운영 효율을 극대화할 것을 추천합니다.

coupang원문

기계 학습 모델을 활용한 물류 입고 프로세스 최적화 (새 탭에서 열림)

쿠팡은 물류 센터 입고 과정에서 발생하는 자원 낭비를 최소화하고 배송 효율을 극대화하기 위해 머신러닝 기반의 트럭 수량 예측 모델을 도입했습니다. 입고 예약 단계에서 필요한 슬롯(트럭 하역 시간 단위) 수를 정확히 예측함으로써, 자원 부족으로 인한 입고 지연과 유휴 자원 발생 문제를 동시에 해결했습니다. 이를 통해 쿠팡은 직매입 제품의 풀필먼트 센터 입고 프로세스를 최적화하고 고객에게 더 빠른 배송 서비스를 제공하는 기반을 마련했습니다. **물류 입고 프로세스의 병목 현상과 자원 낭비** * 풀필먼트 센터의 한정된 도크(dock)와 시간당 사용 가능한 슬롯은 물류 효율의 핵심 자원입니다. * 입고에 필요한 슬롯을 과소 예측할 경우 하역 작업이 지연되어 전체 물류 흐름에 차질이 생기며, 과대 예측 시에는 다른 업체가 사용할 수 있는 소중한 자원이 낭비되는 문제가 발생합니다. * 이를 해결하기 위해 업체 및 제품 특성을 반영한 데이터 기반의 정교한 예측 시스템이 필요했습니다. **도메인 지식과 데이터 분석을 통한 특징 추출** * 약 2년간 축적된 80만 건의 입고 신청 데이터를 분석하여 학습 데이터 세트를 구성했습니다. * 탐색적 데이터 분석(EDA)뿐만 아니라 물류 현장 전문가들과의 심층 인터뷰를 병행하여 현장의 실질적인 입고 패턴을 파악했습니다. * 피처 엔지니어링 단계에서는 단순 통계 수치를 넘어 업체 특성, 제품군별 물성 등 트럭 수량에 영향을 미치는 다수의 범주형(categorical) 특징들을 도출해 냈습니다. **LightGBM을 활용한 고성능 모델 학습** * 대량의 데이터 세트를 빠르게 처리하고 범주형 특징에 대해 우수한 성능을 보이는 LightGBM 알고리즘을 채택했습니다. * 기존 트리 기반 알고리즘의 수평적 확장(Level-wise) 방식 대신 수직적 확장(Leaf-wise) 방식을 사용하는 LightGBM의 특성을 활용해 학습 속도를 높이고 손실을 최소화했습니다. * 모델의 성능을 극대화하기 위해 베이지안 최적화(Bayesian Optimization) 기법을 적용하여 하이퍼 파라미터 튜닝을 효율적으로 수행했습니다. **시스템 연계 및 운영 최적화** * 학습된 모델을 실제 입고 예약 시스템과 실시간으로 연계하여 업체가 예약을 신청하는 즉시 최적의 트럭 수량을 확인할 수 있도록 자동화했습니다. * 단순히 정확도만 높이는 것이 아니라, 현장의 안정성을 위해 과소 예측과 과대 예측 사이의 트레이드 오프(Trade-off)를 정교하게 관리하여 운영 리스크를 방어했습니다. 데이터에 기반한 입고 프로세스 자동화는 물류 운영의 가시성을 높이고 인적 판단 오류를 줄이는 데 큰 기여를 합니다. 특히 물류와 같이 변동성이 큰 산업군에서는 LightGBM과 같은 고성능 알고리즘과 현장 도메인 전문가의 통찰을 결합하는 것이 실질적인 비즈니스 성과를 내는 핵심 전략이 될 수 있습니다.

coupang원문

쿠팡의 머신러닝 플랫폼을 통한 ML 개발 가속화 (새 탭에서 열림)

쿠팡은 검색, 가격 책정, 물류 등 비즈니스 전반에 머신러닝(ML)을 적극적으로 활용하며, 개발 효율을 극대화하기 위해 통합 ML 플랫폼을 구축했습니다. 이 플랫폼은 데이터 준비부터 모델 배포 및 모니터링까지의 전 과정을 자동화하고 표준화하여, 개발자가 인프라 관리보다는 모델 로직에 집중할 수 있는 환경을 제공합니다. 이를 통해 쿠팡은 대규모 컴퓨팅 자원을 효율적으로 관리하면서도 고객 경험을 개선하기 위한 혁신적인 기능들을 빠르게 시장에 선보이고 있습니다. **ML 개발 가속화를 위한 도전 과제** * **Time-to-Market 단축:** 아이디어 단계에서 모델을 실제 서비스에 적용하기까지 발생하는 복잡한 인프라 설정 과정을 간소화해야 함. * **표준화된 CI/CD 통합:** 머신러닝 모델의 학습, 검증, 배포 과정을 소프트웨어 공학의 지속적 통합 및 배포 체계와 결합하여 운영 안정성을 확보. * **확장성 있는 컴퓨팅 자원:** 대규모 데이터와 복잡한 딥러닝 모델 학습을 위해 GPU 및 CPU 자원을 효율적으로 할당하고 확장할 수 있는 시스템 필요. **효율적인 파이프라인 및 피처 관리** * **노트북 및 워크플로우:** 주피터 노트북(Jupyter Notebook) 환경과 Kubeflow 기반 파이프라인을 제공하여, 데이터 탐색부터 모델 학습까지의 워크플로우를 코드 형태로 관리하고 자동화함. * **피처 스토어(Feature Store):** 실시간 추론과 배치 학습 환경 간의 데이터 불일치를 방지하고, 검증된 피처를 재사용할 수 있는 중앙 집중형 저장소 운영. * **일관성 유지:** 온라인과 오프라인 환경에서 동일한 피처 엔지니어링 로직을 적용하여 모델 성능의 신뢰성을 높임. **모델 훈련 및 실시간 추론 인프라** * **분산 훈련 지원:** 고성능 GPU 클러스터를 활용한 분산 훈련 환경을 구축하여 Ko-BERT와 같은 대규모 언어 모델의 학습 시간을 획기적으로 단축. * **안정적인 추론 서비스:** 실시간 트래픽 처리를 위한 고가용성 서빙 환경과 대량의 데이터를 한 번에 처리하는 배치 추론 시스템을 동시에 지원. * **자동화된 배포:** 훈련된 모델을 검증한 후 클릭 몇 번으로 실제 운영 환경에 배포할 수 있는 셀프 서비스 기능 제공. **지속적인 모니터링 및 자원 최적화** * **가시성 확보:** 모델의 성능 지표뿐만 아니라 입력 데이터의 분포 변화(Data Drift)를 실시간으로 감지하여 모델 재학습 시점을 파악. * **Kubernetes 기반 관리:** 모든 ML 워크로드를 컨테이너화하여 Kubernetes 환경에서 실행함으로써 하드웨어 자원 활용도를 최적화하고 운영 부담을 최소화. **플랫폼 도입을 통한 주요 성과** * **검색 품질 향상:** 한국어에 특화된 Ko-BERT 모델 학습 과정을 플랫폼을 통해 최적화하여 검색 쿼리 이해도와 검색 결과의 정확도를 개선. * **실시간 가격 예측:** 수백만 개의 상품에 대해 시장 상황을 즉각적으로 반영하는 가격 예측 모델을 안정적으로 운영하여 비즈니스 민첩성 확보. 대규모 조직에서 ML 모델 개발 속도를 높이려면 개별 모델의 성능만큼이나 전체 생애주기를 관리하는 플랫폼의 역할이 중요합니다. 쿠팡처럼 다양한 서비스 도메인을 가진 환경에서는 표준화된 ML 플랫폼을 통해 인프라 복잡성을 추상화하고, 데이터 사이언티스트가 비즈니스 가치 창출에만 몰입할 수 있는 환경을 구축하는 것이 가장 효과적인 전략입니다.

coupang원문

머신러닝 모델을 (새 탭에서 열림)

쿠팡은 물류 센터 입고 프로세스의 효율성을 극대화하기 위해 머신러닝 모델을 활용하여 벤더사가 예약해야 할 최적의 트럭 대수(슬롯)를 예측합니다. 한정된 물류 센터 도크 자원을 효율적으로 배분함으로써 자원 낭비를 줄이고 입고 지연 문제를 동시에 해결하는 것이 이 시스템의 핵심 목표입니다. 데이터 기반의 자동화된 예측 시스템은 입고 예약 단계에서부터 정확한 가이드를 제공하여 전체 공급망의 흐름을 개선하고 있습니다. **물류 입고 프로세스의 병목 현상과 과제** - 물류 센터의 도크(Dock)와 시간당 사용 가능한 슬롯은 물리적으로 제한된 자원입니다. - 벤더사가 실제 필요량보다 많은 슬롯을 예약하면 도크 자원이 낭비되어 다른 물품의 입고 기회가 박탈됩니다. - 반대로 실제보다 적은 슬롯을 예약할 경우, 트럭 대기 시간이 길어지고 하역 작업에 병목이 발생하여 전체 물류 흐름이 지연되는 문제가 발생합니다. - 이를 해결하기 위해 상품의 종류, 수량, 벤더의 과거 이력 등을 종합적으로 고려한 정교한 예측 모델이 필요해졌습니다. **머신러닝 기반의 트럭 대수 예측 모델링** - **피처 추출(Feature Extraction):** 수년간 축적된 방대한 물류 데이터와 입고 요청 이력을 분석하여 실제 투입된 트럭 대수에 영향을 미치는 핵심 변수들을 도출했습니다. - **LightGBM 알고리즘 활용:** 대용량 데이터 세트에서도 학습 속도가 빠르고 예측 정확도가 높은 LightGBM 알고리즘을 채택하여 효율적인 모델을 구축했습니다. - **베이지안 최적화(Bayesian Optimization):** 모델의 성능을 극대화하기 위해 하이퍼파라미터 탐색 과정에서 베이지안 최적화 기법을 적용하여 최적의 설정값을 찾았습니다. **예약 시스템 통합 및 최적화 전략** - **실시간 예약 가이드:** 구축된 모델을 입고 예약 시스템에 통합하여, 벤더가 입고 요청을 하는 즉시 필요한 적정 트럭 대수를 자동으로 제시합니다. - **예측 오차의 관리(Trade-off):** 과소 예측으로 인한 입고 지연(Delay)과 과대 예측으로 인한 자원 낭비(Waste) 사이의 균형점을 찾기 위한 최적화 로직을 적용했습니다. - **운영 효율성 증대:** 자동화된 시스템 도입을 통해 사람이 수동으로 예측할 때 발생할 수 있는 주관적 오차를 줄이고 슬롯 가동률을 높였습니다. 이러한 데이터 중심의 접근 방식은 한정된 물류 인프라 내에서 더 많은 상품을 적시에 처리할 수 있게 함으로써, 결과적으로 고객에게 더욱 빠른 배송 서비스를 제공하는 밑거름이 됩니다. 물류 현장의 복잡한 변수들을 머신러닝으로 정교화하는 과정은 기술이 어떻게 실질적인 비즈니스 가치를 창출하는지 잘 보여주는 사례입니다.

coupang원문

LLM을 통한 쿠 (새 탭에서 열림)

쿠팡은 검색, 광고, 물류 등 서비스 전반에 걸쳐 머신러닝(ML) 기술을 적극적으로 활용하고 있으며, 최근에는 대규모 언어 모델(LLM)을 도입해 AI 혁신을 가속화하고 있습니다. LLM은 다국어 환경과 방대한 상품 데이터를 처리하는 데 탁월한 성능을 보이며, 효율적인 모델 학습과 추론을 위한 플랫폼 인프라의 최적화가 이 과정의 핵심 동력이 되고 있습니다. 쿠팡은 이를 통해 고객 경험을 개선하고 운영 효율성을 극대화하는 성과를 거두고 있습니다. **쿠팡의 머신러닝 활용 영역** * **추천 시스템:** 사용자 클릭, 구매 이력, 장바구니 담기 등 대규모 상호작용 데이터와 사람이 직접 라벨링한 관련성 판단 지표를 기반으로 홈 피드, 검색, 광고의 개인화를 구현합니다. * **콘텐츠 이해:** 상품 카탈로그(텍스트, 이미지), 사용자 리뷰, 검색어 등 방대한 데이터를 딥러닝으로 분석해 상품과 고객에 대한 표현(Representation)을 학습하고 이를 쇼핑 경험 개선에 활용합니다. * **예측 모델링:** 100개 이상의 물류 센터(FC) 내 수백만 개 상품에 대한 수요, 가격, 배송 경로를 예측하며, 기존 통계적 기법에 딥러닝 기술을 점진적으로 결합하고 있습니다. **멀티모달 기반의 이미지 및 언어 이해** * **Vision-Language Transformer:** 이미지와 텍스트 데이터를 별개로 처리하던 기존 방식에서 벗어나, 두 데이터를 동시에 모델링하는 트랜스포머 모델을 통해 더욱 정교한 임베딩(Embedding)을 생성합니다. * **검색 및 추천 고도화:** 생성된 임베딩은 광고 검색, 유사 상품 찾기 및 추천 모델의 핵심 피처로 활용되어 사용자에게 더 적합한 결과를 제공합니다. * **다양한 서비스 적용:** 한국어와 대만어 간의 상품명 번역, 쇼핑 피드 이미지 품질 개선, 사용자 리뷰 요약, 상품 및 판매자 키워드 자동 생성 등 다양한 영역에서 대규모 모델이 성공적으로 적용되었습니다. **데이터 레이블링 및 속성 추출 혁신** * **대규모 약지도 학습(Weak Label) 생성:** 사람이 직접 수행하기에 비용과 시간이 많이 드는 다국어(한국어, 영어, 중국어 등) 레이블링 작업을 LLM이 수행하여, 모델 학습을 위한 기초 데이터를 대규모로 확보합니다. * **데이터 부족 문제 해결:** 학습 데이터가 부족한 새로운 카테고리나 세그먼트에서 LLM이 생성한 레이블을 통해 모델의 성능을 빠르게 안정화하고 관련성 모델의 품질을 높입니다. * **통합 모델링으로의 전환:** 과거에는 상품 카테고리별로 개별 ML 모델을 구축해야 했으나, 이제는 통합된 LLM을 통해 상품 분류 및 속성 추출 프로세스를 간소화하고 효율성을 높이고 있습니다. 쿠팡은 LLM을 단순한 기술 도입을 넘어 인프라 최적화와 결합하여 실제 비즈니스 가치를 창출하는 핵심 도구로 활용하고 있습니다. 특히 다국어 지원과 대규모 데이터 처리가 필수적인 글로벌 이커머스 환경에서, LLM 기반의 플랫폼 전략은 향후 AI 경쟁력을 좌우하는 중요한 기반이 될 것입니다.

coupang원문

비용 효율성을 위한 클라우 (새 탭에서 열림)

쿠팡은 재무와 엔지니어링 팀 간의 긴밀한 협력을 통해 클라우드 지출을 최적화하고 재무적 책임감을 강화하는 전략적 로드맵을 실행했습니다. 이를 위해 구성된 중앙 관리 팀(Central team)은 '낭비 지양(Hate Waste)'이라는 기업 원칙 아래 데이터 기반의 분석 도구와 가변 비용 모델을 도입하여 전사적인 비용 관리 문화를 정착시켰습니다. 결과적으로 비즈니스 성장을 저해하지 않으면서도 리소스 사용 효율을 극대화하여 수백만 달러 규모의 온디맨드 비용을 절감하는 성과를 거두었습니다. ### 중앙 관리 팀 조직과 분석 체계 구축 * 인프라 엔지니어와 기술 프로그램 매니저(TPM)로 구성된 중앙 팀을 조직하여 각 도메인 팀이 클라우드 효율성을 스스로 관리할 수 있도록 지원했습니다. * Amazon CloudWatch, Amazon Athena, 그리고 AWS CUR(비용 및 사용 보고서) 데이터를 활용한 맞춤형 대시보드를 구축하여 실시간으로 비용을 모니터링하고 데이터에 기반한 의사결정을 내릴 수 있는 환경을 마련했습니다. * 재무 팀과의 파트너십을 통해 각 도메인 팀이 할당된 월간 및 분기별 예산을 준수하도록 관리하는 거버넌스 체계를 확립했습니다. ### 지출 감소 및 단가 최적화 전략 (Spend Less & Pay Less) * **지출 감소(Spend Less):** 비운영 환경(Non-production)에서 리소스가 필요할 때만 자동으로 실행되도록 자동화 프로세스를 도입하여, 해당 환경의 비용을 약 25% 절감했습니다. * **단가 최적화(Pay Less):** 사용 패턴 분석을 통해 사용되지 않거나 효율이 낮은 EC2 리소스를 수동으로 제거하고, 워크로드에 맞는 적정 사양으로 조정(Rightsizing)했습니다. * **인프라 현대화:** 기존 인스턴스를 최신 세대로 전환하고, x86 대비 가성비가 뛰어난 ARM 기반의 AWS Graviton 인스턴스 도입을 확대하여 처리 성능은 높이고 비용은 낮추었습니다. ### 기술적 세부 최적화 실행 * **데이터 처리 및 저장:** Amazon S3의 저장 구조를 최적화하고 스토리지 계층화(Tiering)를 적용하여 데이터 보관 비용을 효율화했습니다. * **빅데이터 워크로드:** EMR(Elastic MapReduce) 환경에서 Spot 인스턴스 활용도를 높여 데이터 분석 및 처리 비용을 획기적으로 줄였습니다. * **문화적 확산:** 엔지니어들이 클라우드 비용을 단순한 지출이 아닌 관리해야 할 리소스로 인식하도록 교육하고, 기술적 최적화가 비즈니스 가치로 이어지는 선순환 구조를 만들었습니다. 성공적인 클라우드 비용 최적화를 위해서는 단순히 리소스를 삭제하는 것을 넘어, 엔지니어링 팀과 재무 팀이 공통의 목표를 공유하는 것이 중요합니다. 특히 데이터 분석을 통해 가시성을 확보하고, Graviton 인스턴스나 Spot 인스턴스 같은 클라우드 고유의 가변 비용 모델을 적극적으로 활용할 것을 권장합니다.

coupang원문

쿠팡 로켓 배송의 공간 지수 기반 배송 관리 시스템 (새 탭에서 열림)

쿠팡은 급증하는 배송 물량을 효율적으로 처리하기 위해 기존의 텍스트 및 우편번호 기반 배송 구역 관리 시스템을 공간 인덱스(H3) 기반의 시각적 시스템으로 혁신했습니다. 이를 통해 복잡한 배송 구역을 지도상에서 직관적으로 분할하고 관리할 수 있게 되었으며, 숙련된 인력의 경험에 의존하던 운영 방식을 데이터 중심의 체계적인 시스템으로 전환하는 성과를 거두었습니다. 결과적으로 배송 효율성을 극대화하고 캠프 관리자들이 유연하게 구역을 조정할 수 있는 기술적 토대를 마련했습니다. **기존 텍스트 기반 관리의 한계** * **우편번호 단위의 한계:** 과거에는 정부가 할당한 우편번호를 배송 단위로 사용했으나, 배송 물량이 급증하면서 단일 우편번호 구역이 한 명의 쿠팡 친구가 처리하기에는 너무 비대해졌습니다. * **경험 의존적 운영:** 우편번호를 아파트 단지나 건물 단위로 더 세밀하게 쪼개야 했으나, 공간 정보가 없는 텍스트 주소 위주여서 해당 지역에 익숙한 숙련자의 주관적인 판단에만 의존해야 했습니다. * **시각화 및 편집의 어려움:** 텍스트 중심 데이터는 지도상에서 구역의 경계를 직관적으로 파악하기 어려웠으며, 구역을 변경하거나 공유하는 과정에서 데이터의 일관성을 유지하기 힘들었습니다. **H3 공간 인덱스 도입과 이점** * **육각형 격자 시스템(H3) 선택:** 구글의 S2(사각형/다이아몬드 기반) 시스템 대신 우버에서 개발한 H3 육각형 그리드 시스템을 채택했습니다. * **기하학적 이점:** 육각형은 인접한 모든 셀과의 중심 거리가 동일하여 거리 계산 및 확장이 용이하며, 구역을 병합하거나 나누었을 때 시각적 왜곡이 적어 배송 구역 관리에 최적입니다. * **데이터 표준화:** 모든 배송지를 위경도 기반의 H3 인덱스로 변환함으로써, 주소 체계에 상관없이 일관된 공간 데이터를 추출하고 분석할 수 있게 되었습니다. **시스템 재설계 및 기술적 구현** * **적정 해상도(Resolution) 설정:** 너무 세밀한 해상도는 데이터 양을 과도하게 늘리고, 너무 낮은 해상도는 정밀도를 떨어뜨립니다. 쿠팡은 배송 효율을 고려해 관리 효율성과 데이터 크기의 균형을 맞춘 최적의 해상도 단계를 선택했습니다. * **육각형 그룹 기반 구역 정의:** 배송 구역을 단순한 텍스트 리스트가 아닌 '육각형들의 집합(Hexagonized Polygon)'으로 재정의했습니다. 이를 통해 지도상에서 다각형(Polygon)을 그리면 해당 영역에 포함된 H3 셀들이 자동으로 할당되는 방식을 구현했습니다. * **운영 도구의 혁신:** 캠프 관리자들이 웹 인터페이스를 통해 직접 지도 위에서 구역을 수정하고, 변경된 구역의 물량 통계를 즉각적으로 확인하며 최적의 배송 영역을 설정할 수 있는 환경을 구축했습니다. 공간 인덱스 기반의 시스템 전환은 단순한 시각화를 넘어, 배송 구역별 물량 통계를 실시간으로 파악하고 데이터에 기반한 의사결정을 가능하게 합니다. 물류 및 배송 시스템을 운영하는 조직이라면 주소 텍스트에 의존하기보다 H3와 같은 공간 인덱스를 활용해 구역 관리의 유연성과 데이터 정확도를 확보하는 것이 배송 최적화의 핵심입니다.

coupang원문

쿠팡의 머신러 (새 탭에서 열림)

쿠팡의 머신러닝 플랫폼은 데이터 탐색부터 모델 배포에 이르는 전체 ML 생애주기를 가속화하여 개발 생산성을 혁신적으로 높이는 것을 목표로 합니다. 이를 통해 검색, 가격 책정, 물류 최적화 등 쿠팡의 다양한 서비스에 머신러닝을 효율적으로 적용하고 있으며, 인프라 관리 부담을 줄여 엔지니어들이 모델 고도화에만 집중할 수 있는 환경을 제공합니다. 결과적으로 이 플랫폼은 복잡한 비즈니스 문제를 해결하는 핵심 기술 기반으로서 쿠팡의 비즈니스 성장을 견인하고 있습니다. **플랫폼 구축의 동기와 목표** * **생산 모드 전환 시간 단축**: 실험 단계의 모델을 실제 서비스 환경에 배포하기까지 걸리는 시간을 줄여 비즈니스 요구사항에 빠르게 대응합니다. * **ML 개발의 CI/CD 도입**: 소프트웨어 공학의 지속적 통합 및 배포(CI/CD) 개념을 ML에 접목하여, 모델 학습과 배포 과정을 자동화하고 일관된 품질을 유지합니다. * **컴퓨팅 자원의 효율적 확장**: 하부 인프라에 대한 개입 없이도 대규모 학습 및 추론을 수행할 수 있도록 유연한 확장성을 제공하여 비용과 성능을 최적화합니다. **플랫폼의 핵심 기능 및 구성 요소** * **관리형 노트북 및 파이프라인 SDK**: 데이터 과학자들이 익숙한 Jupyter 기반 환경에서 작업할 수 있도록 지원하며, 전용 SDK를 통해 복잡한 ML 파이프라인을 손쉽게 정의하고 실행할 수 있습니다. * **피처 스토어(Feature Store)**: 학습과 추론 단계에서 동일한 피처 데이터를 재사용하고 공유할 수 있는 중앙 저장소를 제공하여, 데이터 정합성 문제를 해결하고 개발 효율을 높입니다. * **모델 학습 및 추론 서비스**: 다양한 ML 프레임워크를 지원하는 매니지드 학습 환경과, 대규모 트래픽을 처리할 수 있는 실시간 및 배치 추론 인프라를 운영합니다. * **모니터링 및 관측 가능성**: 배포된 모델의 성능 저하(Drift)나 이상 징후를 실시간으로 추적하여 모델의 신뢰성을 보장하고 신속한 재학습 여부를 결정합니다. **주요 성공 사례** * **Ko-BERT를 통한 검색 고도화**: 한국어 특화 언어 모델인 Ko-BERT를 학습시켜 고객의 검색 쿼리 의도를 더 정확하게 파악하고 상품 검색의 질을 향상시켰습니다. * **실시간 가격 예측**: 수백만 개의 상품에 대해 시장 변화를 즉각적으로 반영하는 실시간 가격 예측 모델을 성공적으로 배포하여 비즈니스 의사결정을 지원하고 있습니다. 쿠팡 ML 플랫폼은 단순히 도구의 집합을 넘어, 데이터 과학자가 비즈니스 가치 창출에만 전념할 수 있도록 돕는 강력한 엔지니어링 생태계입니다. 대규모 데이터와 복잡한 모델을 다루는 조직이라면 쿠팡의 사례처럼 파이프라인 자동화와 피처 정합성을 보장하는 통합 플랫폼 구축을 통해 개발 사이클을 획기적으로 단축할 수 있습니다.

figma4분 읽기큐레이션 요약

잊지 못할 Config 발표를 준비

인상적인 컨퍼런스 발표는 정보를 전달하는 데 그치지 않고, 청중의 통념을 뒤집으며 오래 기억될 관점과 이야기를 제공해야 한다. Figma의 Config 발표 사례들은 위험을 감수한 선택, 사용자에 대한 깊은 관심, 단순하고 창의적인 문제 해결이 훌륭한 발표와 제품을 만든다는 점을 보여준다. 특히 발표자는 성공 결과보다 그 과정에서의 의외의 판단과 배움을 설득력 있게 전달해야 한다. ## 발표의 목적: 정보 전달을 넘어 기억에 남는 경험 만들기 - 좋은 발표는 단순히 지식을 나열하지 않고 청중의 기존 가정에 도전한다. - 발표 주제뿐 아니라 발표자가 어떤 문제를 발견했고, 어떤 선택을 했으며, 무엇을 배웠는지가 중요한 콘텐츠가 된다. - 글은 Config 2024 발표자들이 인상 깊게 본 세션을 소개하며, 향후 발표 제안서를 준비하는 사람에게 하나의 기준을 제시한다. - 발표의 영감은 제품 디자인, 공간 컴퓨팅, 새로운 하드웨어 등 다양한 분야에서 얻을 수 있지만, 공통적으로 강한 서사와 분명한 관점이 존재한다. ## 통념을 거스른 위험한 선택 - Josh Wardle의 발표 **“Opting for the opposite”**는 일반적인 게임 업계의 성공 공식과 반대되는 선택을 다룬다. - Wordle은 다음과 같은 방식으로 성장과 참여를 극대화하는 관행을 따르지 않았다. - 하루에 한 번만 플레이할 수 있도록 제한 - 공유된 결과에서 게임으로 바로 연결되는 링크를 제공하지 않음 - 모바일 게임처럼 반복 사용과 바이럴 확산을 적극적으로 유도하지 않음 - Wardle은 처음부터 바이럴 히트작을 만들려 한 것이 아니라, 파트너를 위한 애정 어린 선물로 게임을 제작했다. - 이 사례의 핵심은 “성공하려면 반드시 업계의 모범 사례를 따라야 한다”는 생각을 뒤집은 데 있다. - 발표에서 위험을 감수한 선택을 보여주려면 단순히 결과를 자랑하기보다 다음을 설명해야 한다. - 당시 업계의 일반적인 접근법은 무엇이었는가 - 왜 그 반대의 선택을 했는가 - 그 선택이 사용자 경험에 어떤 영향을 미쳤는가 - 예상하지 못한 결과와 배움은 무엇이었는가 ## 지표보다 사용자를 우선한 제품 철학 - Apple의 디자인 에반젤리스트 Linda Dong은 Wordle 사례가 “많은 사람이 사랑하는 제품을 만들기 위해 항상 관습을 따를 필요는 없다”는 점을 상기시킨다고 평가한다. - 수치와 성장 지표가 중심이 된 산업에서도 단순함과 창의성만으로 강력한 제품을 만들 수 있다. - Humane의 리드 프로덕트 디자이너 George Kedenburg III 역시 Wordle의 과정이 “틀린 방식”처럼 보이는 선택을 통해 훌륭한 결과를 만든 이야기라고 강조한다. - 중요한 것은 규칙을 어기는 행위 자체가 아니라, 만들고자 하는 사용자를 깊이 이해하고 그 사용자에게 필요한 경험을 끝까지 고민하는 태도다. ## 구체적인 사례와 시각적·서사적 구성 - Linda Dong과 Mike Stern의 **“An Infinite Canvas”**는 공간 컴퓨팅 디자인의 가능성을 다룬다. - George Kedenburg III와 Humane 공동창업자 Imran Chaudhri의 발표는 Ai Pin의 개발 과정과 제품 비전을 소개한다. - 발표 주제가 복잡하거나 미래지향적일수록 다음 요소가 이해를 돕는다. - 제품이 해결하려는 사용자 문제 - 개발 과정에서의 핵심 결정 - 기술이 사용자 경험을 어떻게 바꾸는지 보여주는 실제 사례 - 아름답거나 유머러스한 시각 자료 - 청중의 기억에 남는 발표는 새로운 기술을 설명하는 데서 끝나지 않고, 그 기술이 왜 필요한지와 어떤 인간적 동기에서 출발했는지까지 전달한다. ## 실용적인 발표 준비 방법 - 업계의 정답을 그대로 따르기보다, 자신이 의도적으로 다르게 선택한 지점을 찾는다. - 성공한 결과보다 실패, 망설임, 예상 밖의 전환점을 이야기의 중심에 둔다. - “무엇을 만들었는가”뿐 아니라 “누구를 위해 만들었고 왜 그렇게 만들었는가”를 설명한다. - 데이터와 성과 지표는 보조 자료로 활용하고, 사용자의 실제 경험과 제작자의 판단을 중심에 둔다. - 발표를 준비할 때 다음 질문을 점검하면 좋다. - 청중의 기존 생각을 바꿀 만한 지점이 있는가? - 나만 들려줄 수 있는 구체적인 제작 경험이 있는가? - 발표가 끝난 뒤 청중이 기억할 한 문장은 무엇인가? - 제품이나 프로젝트에 담긴 사용자에 대한 관심이 드러나는가? 결국 인상적인 발표는 완벽한 성공 공식을 제시하는 자리가 아니라, 사용자에 대한 진정성 있는 관심과 과감한 선택이 어떻게 결과로 이어졌는지를 보여주는 자리다. 발표를 준비한다면 자신의 프로젝트에서 가장 의외였던 결정과 그 이유를 중심으로 이야기를 구성하는 것이 효과적이다.

원문 읽기(새 탭에서 열림)
figma3분 읽기큐레이션 요약

새로운 시대를 위한 웹

Figma는 2024년 브랜드 리프레시를 계기로 figma.com의 웹 디자인 시스템을 전면 점검했다. 기존 시스템은 유사한 컴포넌트가 지나치게 많고, 색상과 타이포그래피가 확장된 브랜드와 다양한 콘텐츠를 충분히 지원하지 못했다. 사용 현황을 데이터로 분석해 컴포넌트를 단순화하고, 일관된 디자인 원칙과 재사용 가능한 템플릿을 마련함으로써 더 유연하고 미래 지향적인 웹 시스템을 구축했다. ## 브랜드와 웹 시스템을 함께 재정비한 배경 - 2020년의 figma.com은 새로운 디자인 도구를 소개하는 데 초점이 맞춰져 있었다. - 2024년의 Figma는 여러 제품 팀을 위한 플랫폼으로 확장되었고, 웹사이트 역시 제품 생태계와 다양한 사용자 요구를 보여줘야 했다. - 기존 시스템에는 다음과 같은 문제가 있었다. - 서로 조금씩만 다른 컴포넌트가 많아 적절한 컴포넌트를 선택하기 어려움 - 변화하는 브랜드 색상 팔레트를 수용할 만큼 색상 체계가 유연하지 않음 - 다양한 콘텐츠 유형을 지원하기에 타이포그래피 체계가 충분히 최적화되지 않음 - Figma Sans와 새로운 색상·일러스트레이션 스타일을 도입한 브랜드 리프레시는 웹 디자인 시스템을 재설계하는 계기가 되었다. ## 컴포넌트 사용 현황을 데이터로 감사 - Web Experience 팀은 스크립트를 작성해 컴포넌트가 다음과 같이 어떻게 사용되는지 분석했다. - 어떤 컴포넌트가 사용되는가 - 각 컴포넌트가 얼마나 자주 사용되는가 - 어떤 페이지에서 사용되는가 - 이 분석을 통해 실제 사용량과 필요성을 기준으로 컴포넌트 구조를 단순화할 수 있었다. - 디자인 시스템을 직관이나 선호만으로 관리하지 않고, 실제 페이지와 팀의 사용 패턴을 근거로 개선한 점이 핵심이다. ## Flex 컴포넌트의 48개 변형을 24개로 축소 - 가장 널리 사용되던 기본 구성 요소인 ‘Flex’ 컴포넌트는 옵션이 추가되면서 48개 변형까지 늘어나 있었다. - 사용 사례를 조사한 결과, 기능을 유지하면서도 변형 수를 24개로 줄일 수 있었다. - 중복되거나 활용도가 낮은 선택지를 제거해 속성 패널을 더 집중된 형태로 만들었다. - 예를 들어 가운데 정렬 텍스트 옵션을 없애고, 웹 시스템 전체에서 왼쪽 정렬을 기본값으로 정했다. - 그 결과: - 디자이너와 콘텐츠 제작자가 선택해야 할 옵션이 줄어듦 - 컴포넌트 사용법이 쉬워짐 - 웹페이지 전반의 시각적 일관성이 높아짐 - 새로운 브랜드 언어와도 더 잘 맞게 됨 ## 템플릿과 조합 가능한 빌딩 블록 - 단순히 기존 컴포넌트를 줄이는 데 그치지 않고, 자주 쓰는 페이지 레이아웃을 템플릿으로 만들었다. - 여러 방식으로 조합할 수 있는 “building block” 컴포넌트 세트도 구축했다. - 이를 통해 팀은: - 일반적인 페이지 구조를 더 빠르게 만들고 - 필요한 구성 요소를 조합해 다양한 페이지를 제작하며 - 별도의 커스텀 작업 없이도 Figma 브랜드에 맞는 결과물을 만들 수 있게 되었다. - 컴포넌트 선택지를 무작정 늘리는 대신, 검증된 핵심 요소와 조합 방식을 제공하는 접근이다. ## 실용적인 시사점 - 디자인 시스템을 정기적으로 감사하고 실제 사용 데이터를 확인해야 한다. - 유사한 변형이 계속 늘어난다면 기능을 유지하면서 옵션을 통합할 수 있는지 검토할 필요가 있다. - 명확한 기본값과 일관된 원칙을 정하면 사용자의 선택 부담을 줄일 수 있다. - 공통 레이아웃 템플릿과 조합형 컴포넌트를 함께 제공하면 확장성과 제작 속도를 모두 높일 수 있다.

원문 읽기(새 탭에서 열림)
datadog원문

테스트 시간을 50 (새 탭에서 열림)

개발 효율성을 저해하는 길고 불안정한 CI 파이프라인 문제를 해결하기 위해, 테스트와 소스 코드 간의 의존성을 분석하여 변경된 코드와 관련된 테스트만 선택적으로 실행하는 '테스트 영향 분석(Test Impact Analysis)' 기술이 주목받고 있습니다. Datadog은 Ruby 환경에서 이를 실현하기 위해 성능 저하를 최소화하면서도 기존 도구와 호환되는 전용 라이브러리를 개발하였으며, 이는 전체 테스트 시간을 절반 수준으로 단축하는 성과를 거두었습니다. 이 과정에서 개발 팀은 Ruby 내장 모듈의 한계를 극복하기 위해 C 확장을 통한 저수준 인터프리터 이벤트 활용 방식을 채택했습니다. ## 테스트 영향 분석(TIA)의 개념과 필요성 - 소프트웨어 규모가 커짐에 따라 전체 테스트 수트 실행 시간은 비대해지며, 코드 변경과 무관한 '불안정한 테스트(Flaky tests)'로 인해 CI가 실패하는 빈도가 높아집니다. - 테스트 영향 분석은 각 테스트가 실행될 때 접근하는 소스 파일 목록을 동적으로 맵핑하여 저장하는 기술입니다. - Git 커밋 시 변경된 파일과 맵핑된 파일 목록에 교집합이 있는 테스트만 실행함으로써, 불필요한 리소스 낭비를 줄이고 파이프라인의 안정성을 높일 수 있습니다. - Datadog의 'Intelligent Test Runner'는 이러한 원리를 바탕으로 정확성, 성능, 사용자 투명성을 핵심 가치로 설계되었습니다. ## 기존 Ruby 솔루션의 성능 한계 - **내장 Coverage 모듈:** Ruby 3.1에서 추가된 resume/suspend 메서드를 통해 테스트별 커버리지를 측정할 수 있으나, `simplecov`와 같은 기존 도구와 충돌하며 약 300% 수준의 매우 높은 성능 오버헤드가 발생합니다. - **TracePoint API:** 코드 실행 시 이벤트를 구독하는 표준 API로 구현이 용이하고 호환성도 뛰어나지만, 순수 코드 실행 위주의 벤치마크(RuboCop 등)에서 200~400%의 오버헤드를 기록하여 실무 적용이 어렵습니다. - 이러한 기존 방식들은 대규모 테스트 수트를 빠르게 실행하려는 원래의 목적에 부합하지 않는 성능 결과(기존보다 3~4배 느려짐)를 보였습니다. ## C 확장을 이용한 저수준 인터프리터 이벤트 활용 - 성능 문제를 해결하기 위해 Ruby VM의 내부 동작을 분석하고, C 언어로 직접 커버리지 수집 도구를 개발했습니다. - Ruby 인터프리터 내부에서 사용하는 `rb_thread_add_event_hook` 함수를 활용해 `RUBY_EVENT_LINE` 이벤트를 직접 훅(hook)하는 방식을 취했습니다. - 테스트 시작(start)과 종료(stop) 시점에만 이벤트 훅을 등록 및 해제하며, 실행되는 파일의 경로가 프로젝트 루트 내에 있는지 C 수준에서 빠르게 필터링하여 해시 구조에 저장합니다. - 이 방식은 Ruby 레벨의 추상화 단계를 건너뛰고 VM 이벤트에 직접 접근함으로써, 데이터 수집의 정확성을 유지하면서도 실행 오버헤드를 획기적으로 낮추는 기반이 되었습니다. Ruby 기반의 대규모 프로젝트를 운영 중이라면 매번 전체 테스트를 실행하기보다, 변경 사항에 기반한 지능형 테스트 실행 방식을 도입하여 CI 비용과 시간을 최적화할 것을 권장합니다. 특히 성능에 민감한 환경에서는 표준 API에 의존하기보다 저수준 최적화가 포함된 전문적인 모니터링 도구를 활용하는 것이 효과적입니다.

datadog원문

테스트 시간을 50% 단축하는 Ruby 라이브러리를 만든 방법 (새 탭에서 열림)

소프트웨어 프로젝트의 규모가 커짐에 따라 발생하는 길고 불안정한 CI 파이프라인은 개발 생산성을 저해하는 주요 원인입니다. 데이터독(Datadog)은 코드 변경 사항과 관련된 테스트만 선택적으로 실행하는 '테스트 영향 분석(Test Impact Analysis)' 기술을 통해 이 문제를 해결하고자 했으며, 성능 오버헤드를 최소화한 Ruby용 Intelligent Test Runner를 구축했습니다. 이를 위해 기존 도구들의 한계를 넘어 Ruby VM 인터프리터 이벤트를 직접 활용하는 C 익스텐션을 개발함으로써 테스트 시간을 절반으로 단축하는 성과를 거두었습니다. **테스트 영향 분석의 개념과 필요성** * CI 파이프라인의 병렬 실행은 속도를 높일 수 있지만, 클라우드 컴퓨팅 비용이 증가하고 관련 없는 코드의 결함으로 인한 테스트 실패(Flaky tests) 문제를 해결하지 못합니다. * 테스트 영향 분석은 각 테스트와 해당 테스트가 실행하는 소스 파일 간의 매핑 정보를 동적으로 생성하여 관리합니다. * Git 커밋에서 변경된 파일과 특정 테스트가 의존하는 파일 목록이 겹칠 때만 해당 테스트를 실행하고, 관련이 없는 경우 건너뜁니다. * 이 시스템은 정확성(필요한 테스트를 거르지 않음), 성능(매 커밋마다 실행 가능할 정도로 낮은 오버헤드), 투명성(사용자 코드 수정 없음)이라는 세 가지 핵심 요구사항을 충족해야 합니다. **기존 Ruby 솔루션의 한계** * **내장 Coverage 모듈:** Ruby 3.1에서 추가된 테스트별 커버리지 수집 기능은 `SimpleCov`와 같은 기존 커버리지 도구와 호환되지 않으며, 성능 오버헤드가 약 300%에 달해 테스트 속도가 4배나 느려지는 단점이 있습니다. * **TracePoint API:** VM 이벤트를 구독하는 `TracePoint` 방식은 사용이 간편하고 기존 도구와 충돌하지 않지만, 여전히 200~400% 수준의 높은 성능 저하를 유발하여 실제 개발 환경에 적용하기 어렵습니다. **Ruby VM 이벤트를 활용한 맞춤형 C 익스텐션** * 성능 최적화를 위해 Ruby 소스 코드의 `coverage.c`와 `thread.c`를 분석하여, C 언어 수준에서 직접 인터프리터 이벤트를 가로채는 방식을 채택했습니다. * Ruby의 C API인 `rb_add_event_hook2`를 사용하여 `RUBY_EVENT_LINE` 이벤트를 등록함으로써, 코드가 실행되는 시점에 즉각적으로 파일 정보를 수집하도록 설계했습니다. * `dd_cov_update_line_coverage`와 같은 콜백 함수 내에서 실행 중인 파일이 프로젝트 루트 내에 있는지 확인하는 필터링 로직을 구현하여 데이터 수집의 효율성을 높였습니다. * 이 접근 방식은 Ruby 인터프리터 내부 메커니즘을 직접 활용함으로써 성능 오버헤드를 획기적으로 낮추고, 대규모 테스트 수트에서도 무리 없이 작동합니다. 규모가 큰 Ruby 프로젝트에서 테스트 속도 정체와 CI 비용 증가 문제를 겪고 있다면, 전체 테스트를 매번 실행하는 대신 테스트 영향 분석 도구를 도입하여 파이프라인의 효율성을 극대화할 것을 권장합니다. 특히 성능이 중요한 환경이라면 Ruby 내장 도구에만 의존하기보다 VM 이벤트를 직접 제어하는 방식이 유효한 해결책이 될 수 있습니다.

figma3분 읽기큐레이션 요약

Figma에서 AI 기반 검색을

디자이너들은 새로 작업하기보다 기존 디자인을 찾아 재활용하는 경우가 많지만, 스크린샷만 가지고 원본 파일을 찾기는 어려웠습니다. Figma는 이 문제를 해결하기 위해 시각 검색과 의미 검색을 결합한 AI 검색을 출시했고, 검색 결과를 디자인 작업에 바로 활용할 수 있도록 했습니다. 초기에는 다음 컴포넌트를 추천하는 ‘디자인 자동완성’을 개발했지만, 사용자 연구를 통해 기존 작업을 찾고 변형하는 일이 더 근본적인 문제라는 결론에 도달했습니다. ## 기존 디자인을 찾기 어려운 문제 - 디자이너들은 원하는 디자인의 원본 파일을 찾기 위해 Slack에 동료에게 질문하거나 여러 파일을 직접 확인해야 했습니다. - 특히 파일명이나 컴포넌트 이름을 모른 채 스크린샷만 가지고 검색해야 하는 상황이 큰 문제였습니다. - Figma 내부에서도 디자인 요소를 찾는 데 상당한 시간이 소요되고 있다는 사실을 수백 건의 Slack 메시지를 통해 확인했습니다. - 이러한 문제를 해결하기 위해 Figma는 Config 2024에서 AI 기반 검색 기능을 공개했습니다. ## 시각 검색과 의미 검색 - **시각 검색(Visual search)** - 스크린샷, 선택한 프레임, 간단한 스케치 등을 입력해 유사한 디자인과 컴포넌트를 찾습니다. - 정확한 파일명이나 텍스트를 몰라도 이미지의 시각적 특징을 기반으로 검색할 수 있습니다. - **의미 검색(Semantic search)** - 사용자의 텍스트 질의를 AI가 이해하고 관련 디자인을 검색합니다. - 컴포넌트의 정확한 이름이나 설명을 몰라도 의도와 문맥에 맞는 결과를 찾을 수 있습니다. - 검색 결과는 단순히 파일을 여는 데 그치지 않고, 디자인을 미리 보거나 현재 프로젝트에 삽입하는 방식으로 활용할 수 있습니다. ## 디자인 자동완성에서 AI 검색으로 전환 - Figma는 2023년 6월 3일간의 AI 해커톤을 열었고, 20개의 프로젝트가 완성됐습니다. - 그중 하나가 작업 중인 화면을 분석해 다음에 필요할 컴포넌트를 추천하는 **디자인 자동완성** 프로토타입이었습니다. - 예를 들어 온보딩 화면을 만들 때 “Get started” 버튼을 추천하는 방식입니다. - 이 기능은 디자이너가 반복적인 작업에서 벗어나 사용자 문제와 같은 고차원적인 사고에 집중하도록 돕는 것을 목표로 했습니다. - 프로토타입의 가능성이 확인되면서 제품 로드맵에 포함됐고, 실제 제품화를 위한 개발이 시작됐습니다. ## RAG를 활용한 검색 기반 AI - Figma는 디자인 자동완성의 품질을 높이기 위해 검색 인프라를 함께 구축했습니다. - **Retrieval-Augmented Generation(RAG)**은 LLM이 답변을 생성하기 전에 관련 사례를 검색해 참고하도록 하는 방식입니다. - 자동완성 기능이 사용자가 작업 중인 화면과 유사한 기존 디자인을 찾으면, 그 사례를 바탕으로 더 적절한 다음 컴포넌트를 추천할 수 있다고 판단했습니다. - 즉, AI가 무작정 새로운 디자인을 생성하는 것이 아니라 Figma에 축적된 실제 디자인 사례를 검색하고 이를 추천의 근거로 활용하는 구조입니다. ## 사용자 연구가 바꾼 제품 방향 - Figma는 내부 팀에 프로토타입을 공유하고 디자이너들을 대상으로 사용성 연구를 진행했습니다. - 반복적인 테스트 과정에서 디자이너들이 작업을 완전히 새로 시작하지 않는다는 패턴을 발견했습니다. - 디자이너들은 과거의 탐색 결과와 기존 작업을 다시 찾아보고, 이를 변형하거나 조합해 새로운 결과물을 만듭니다. - 이 때문에 “다음에 무엇을 추천할까?”보다 “이미 존재하는 작업 중 무엇이 유용한가?”를 찾는 일이 더 근본적인 요구로 드러났습니다. - 이러한 관찰이 디자인 자동완성 중심의 방향을 AI 검색 중심으로 전환하는 계기가 됐습니다. Figma의 사례는 AI 기능을 먼저 만들고 사용자를 설득하기보다, 실제 업무에서 반복되는 불편을 관찰한 뒤 제품 방향을 조정해야 한다는 점을 보여줍니다. 특히 검색과 생성 AI를 결합하면 기존 자산을 재활용하면서도 더 정확한 추천을 제공할 수 있으므로, 조직 내 디자인 자산이 많을수록 시각·의미 검색과 RAG 기반 활용을 함께 고려할 만합니다.

원문 읽기(새 탭에서 열림)
figma4분 읽기큐레이션 요약

Made in Figma: 국립공

미국 국립공원관리청(NPS)은 431개 국립공원과 기념지를 하나의 앱에서 다루기 위해, 과거의 인쇄 브로슈어 디자인 시스템인 매시모 비넬리의 ‘유니그리드(Unigrid)’를 디지털 인터페이스에 적용했다. GuideOne과 Twohy Design Works는 각 공원의 다양한 데이터와 서사를 수용하면서도 일관된 사용자 경험을 제공하는 앱을 만들었다. 이 사례는 오래 지속될 공공 서비스일수록 확장 가능한 디자인 시스템, 접근성, 협업 가능한 제작 환경이 중요하다는 점을 보여준다. ## 431개 공원을 하나의 앱으로 통합하기 - NPS는 요세미티 같은 대형 국립공원부터 펜실베이니아의 한 칸짜리 기념관까지 규모와 성격이 매우 다른 431개 시설을 관리한다. - 과거에는 방문객 안내를 위해 각 공원별 인쇄 브로슈어를 제작했다. - 2016년 GuideOne이 공원별 개별 앱을 개발하기 시작했지만, 이후 하나의 통합 NPS 앱으로 방향을 전환했다. - 통합 과정에서는 다음과 같은 문제가 발생했다. - 각 공원이 자체적으로 데이터를 관리하고 콘텐츠를 작성함 - 공원마다 역사, 시설, 방문 정보, 내러티브가 다름 - 서로 다른 데이터를 하나의 구조와 시스템으로 통합해야 함 - 장기간 유지될 정부 서비스이므로 내구성과 유지보수성이 필요함 - 다양한 장애와 접근성 요구를 가진 사용자를 지원해야 함 ## 인쇄 브로슈어에서 찾은 디자인의 출발점 - NPS 브로슈어는 오랫동안 공원마다 형식과 스타일이 제각각이었다. - 1977년 NPS는 디자이너 매시모 비넬리에게 모든 인쇄물의 그래픽 요소와 제작 방식을 표준화하는 시스템을 의뢰했다. - 이때 만들어진 유니그리드는 다음을 체계화했다. - 페이지 구성과 그리드 - 이미지와 텍스트의 배치 - 타이포그래피와 시각적 위계 - 브로슈어 제작 규격과 일관된 브랜드 표현 - GuideOne과 Twohy Design Works는 이 역사적 시스템을 그대로 복제하지 않고, 디지털 제품에 적합한 원칙으로 재해석했다. ## 유니그리드를 디지털 인터페이스로 확장 - 앱은 공원별 개성을 유지하면서도 전체 서비스가 하나의 제품처럼 보이도록 설계됐다. - 브로슈어에서 사용하던 구조적 일관성을 앱의 화면과 콘텐츠 구성에 적용했다. - 공식 NPS 앱은 다음 기능을 제공한다. - 공원과 시설을 탐색하는 인터랙티브 지도 - 방문객을 위한 핵심 정보 - 셀프 가이드 투어 - 공원별 장소, 활동, 안내 콘텐츠 - 디자인 시스템은 각 공원이 독자적인 콘텐츠를 제공하더라도 공통된 사용자 경험을 유지하도록 돕는다. - 즉, 유니그리드는 특정 화면의 시각적 스타일이 아니라 다양한 콘텐츠를 하나의 체계 안에 담는 운영 방식으로 활용됐다. ## 데이터와 엔지니어링을 함께 고려한 협업 - NPS 앱은 단순한 시각 디자인 프로젝트가 아니라 콘텐츠와 데이터 통합 프로젝트이기도 했다. - NPS, GuideOne의 개발팀, 디자인팀이 Figma를 통해 작업물을 공유하고 피드백을 주고받았다. - 디자인 단계에서 다음 사항을 함께 검토할 수 있었다. - 실제 NPS 데이터로 구현 가능한 화면인지 - 공원별 콘텐츠 차이를 시스템이 수용할 수 있는지 - 개발팀이 재사용 가능한 컴포넌트로 구현할 수 있는지 - 사용자의 탐색 흐름이 복잡한 공원 구조를 잘 반영하는지 - Figma는 디자인 시안을 전달하는 도구를 넘어, 기관 담당자와 디자이너, 개발자가 제약 조건을 조율하는 공동 작업 공간으로 사용됐다. ## 공공 서비스에 필요한 접근성과 지속성 - 정부용 소프트웨어는 일반적인 단기 제품보다 훨씬 긴 수명을 전제로 한다. - 따라서 유행하는 시각 효과보다 안정적인 구조와 유지 가능한 시스템이 중요하다. - 서로 다른 접근성 요구를 가진 많은 사용자가 이용하므로 정보의 명확한 위계와 예측 가능한 인터페이스가 필요하다. - 공원별 콘텐츠가 계속 추가·변경되더라도 전체 앱의 품질이 흔들리지 않도록 공통 디자인 규칙과 컴포넌트 체계가 기반이 됐다. ## 이 사례가 보여주는 디자인 시스템의 역할 - 디자인 시스템은 브랜드를 일관되게 보이게 하는 규칙에 그치지 않고, 대규모 조직의 다양한 콘텐츠를 운영하는 기반이 될 수 있다. - 역사적 디자인 자산을 디지털 환경에 적용할 때는 외형보다 그 안의 원칙을 계승하는 것이 중요하다. - 통합 서비스에서는 모든 콘텐츠를 똑같이 만드는 것보다, 차이를 수용할 수 있는 공통 구조를 만드는 것이 효과적이다. - NPS 앱은 종이 브로슈어의 시각 언어를 지도, 검색, 투어, 방문 정보가 결합된 디지털 경험으로 전환한 사례다. 장기적으로 운영될 공공 앱을 만든다면, 먼저 조직의 기존 콘텐츠와 디자인 자산에서 검증된 원칙을 찾고, 이를 재사용 가능한 컴포넌트와 명확한 데이터 구조로 변환하는 것이 좋다. 여기에 초기 단계부터 접근성과 개발 가능성을 함께 검토해야 일관되면서도 실제 운영에 강한 제품을 만들 수 있다.

원문 읽기(새 탭에서 열림)