GS리테일 DX 블로그

Digital Transformation으로 고객 생활 가치의 이노베이션을 꿈꾸는 IT 사람들의 이야기

APP 8

엔터프라이즈 MSA 이야기 4탄 – GS SHOP 주문서비스팀의 현대화 여정

마틴파울러가 이런 얘기를 했습니다. 만약에 여러분이 기존시스템을 빅뱅방식으로 개발하고 오픈한다면, 여러분을 기다리고 있는 것은 빅뱅과 같은 혼란과 어려움만이 기다리고 있다라고 했습니다. AWS Industry Week 발표 중 한동훈 솔루션즈 아키텍트의 이야기 ... 안녕하세요. GS SHOP 주문서비스를 담당하고 있는 김헌기입니다. 회사에서는 Darion으로 불리웁니다. 애플리케이션 현대화에 대한, 주문서비스팀의 실무 경험담에 대해 이야기해보겠습니다. 현대화로 해결해야만 했던 기술부채, 현대화 도전에 대한 고민과 경험, 현대화 이후 일하는 방식의 변화에 대해 이야기를 하려고 하는데요. 엄청난 것을 한 것은 아니고요. 비슷한 고민이 있는 사람이면, 클라우드 환경에서, 누구나 한번 시도해 볼 수 있는 이야..

APP 2023.10.25

Flutter Code Push의 고찰

안녕하십니까. 모바일 FO 이승욱 매니저입니다. 약 2년 동안 React, Vue, SSR 등 많은 환경에서 여러 서비스를 개발해왔습니다. 현재는 Flutter를 통해서 앱개발을 하고 있는데, Flutter는 웹 기반의 프레임워크와 유사하면서도 다른 점도 많은 프레임워크인 것 같습니다. 웹과 달리 Flutter는 앱 화면을 위젯 기반으로 생성하며, 스타일링부터 적용되는 디자인 패턴도 다르기 때문입니다. Flutter는 독자분들이 잘 아시다시피 유명한 프레임워크고 많은 패턴과 좋은 라이브러리들이 나왔기에 저는 아직까지 많이 연구되지 않은 Code Push에 대해 저의 리서치 내용을 공유하고자 합니다. 고민을 하게 된 이유 웹과 API를 개발하다가 앱 개발팀에 왔을 때, 가장 어려운 점은 배포 프로세스였습니..

APP 2023.10.11

엔터프라이즈 MSA 이야기 3탄 – SR 도메인 편

당사에서는 홈쇼핑 백오피스 시스템에 대해 2018년부터 Application Modernization 마스터플랜을 수립하여 업무 도메인 별 구조개선 작업을 진행 하고 있습니다. 고객, 자산 영역을 시작으로 방송, 주문 ,결제 도메인 영역에서 각각 마이크로 서비스로의 전환 작업이 진행되고 있습니다. 그 과정 중의 하나로 23년 1월부터 SR 도메인에 대한 구조개선 프로젝트를 진행 한 과정을 공유하고자 합니다. 홈쇼핑 프로세스 와 Service Request(SR) 쇼핑몰/홈쇼핑비즈니스에서 "Service Request"는 일반적으로 고객이 상품 또는 서비스에 관련된 사항을 문의하거나 요청하는 것을 의미합니다. 홈쇼핑 고객은 문의, 불만사항, 상품 교환 또는 환불관련 사항을 고객센터에 직접 전화를 하거나, ..

APP 2023.08.01

우리동네GS BFF 구현기 Step 1 - 도입 배경과 설계

안녕하세요, GS리테일의 모바일 FO 팀에서 근무하고 있는 Alan 입니다. 저는 모바일 FO 팀에서 우리동네GS 의 Front-end 와 BFF 개발을 담당하고 있습니다. 우리동네GS 에서는 API 요청/응답 처리를 편리하게 할 수 있도록 BFF 를 사용하고 있습니다. BFF 개발 과정에서 발생했던 이슈들과 이를 해결하기위한 과정들을 이야기 해보려 합니다. BFF 도입 배경 우리동네GS 통합 이전 우리동네GS 출시 전, GS 리테일에서는 총 5개의 서비스를 운영중이었습니다. 나만의 냉장고 GS 수퍼마켓 THE POP 우리동네 딜리버리 와인25플러스 먼저 오픈한 3개의 앱(나만의 냉장고, GS 수퍼마켓, THE POP) 은 각자의 API 서버 를 두고, 필요한 정보를 요청하는 형태로 개발 되었습니다. 후..

APP 2023.07.28

Flutter App 실시간 CDN 이미지 변경 상태 적용 방안

일반적으로 이미지를 로컬 캐시에 저장하는 이유는 보통 아래와 같습니다. 같은 이미지를 자주 재 사용하는데, 매번 CDN으로부터 다운로드하기 부담스럽다. 같은 이미지를 재 다운로드하기 위한 네트워크 비용을 아끼고 싶다. 같은 이미지를 로컬에서 빠르게 로딩해서 보여주고 싶다. 위에서 언급한 항목을 보면 모두 ‘같은’이라는 접두사가 붙어 있습니다. 이유는 같은 이미지가 아니면 로컬 캐시를 이용할 수 없다는 간단한 상황 때문입니다. 이러한 장점을 가진 이미지 로컬 캐시는 항상 장점만 있는 것은 아닙니다. 라이브 서비스되고 있는 상황에서 방송용 이미지나 이벤트 이미지를 오타나 법적인 문제 등 여러 이유에서 긴급하게 교체해야 할 필요가 있을 경우에는 어떻게 할 것인가? 고객에게 이미지를 다시 다운 받을 수 있게 앱..

APP 2023.06.20

엔터프라이즈 MSA 이야기 2탄-RateLimit 적용으로 시스템장애 예방하기

안녕하세요. GS리테일 홈쇼핑부문의 주문서비스팀 이민주 매니저(닉네임 Julee)입니다. 저는 GSShop에서 고객과 서비스, 서비스와 서비스를 연결하는 다양한 연계 업무를 담당하고 있으며, 주문서비스의 MSA 전환을 위한 주문구조개선에서는 시스템아키텍트 역할을 하고 있습니다. IT종사자분들에게 흔히 겪을 수 있는 장애가 무엇인지 물어본다면, 과도한 요청으로 인하여 이를 처리하는 과정에서 발생하는 응답지연, 시스템 중단 등의 장애를 떠올리시는 분들이 많으실 겁니다. e-Commerce 환경에서도 동일합니다. 홈쇼핑 방송, 모바일앱, 카카오톡 등 수많은 채널을 통하여 발생하는 고객의 주문은 수많은 행위의 서비스 요청(트래픽)을 발생시키게 됩니다. 트래픽이 늘어난다는 것은 고객의 관심과 매출이 증가하는 것이..

APP 2023.06.20

GS SHOP App의 메모리 확보

GS SHOP 서비스에서 모바일 앱 개발 및 메시지 시스템 운영을 맡고 있습니다. 현재 단말의 성능은 대부분의 앱들이 소비하는 자원을 충분히 감당할 수 있는 성능을 가지고 있지만, 앞으로 VR, AR 등 많은 자원을 소모하는 앱 서비스들이 많아지면, 예전 단말처럼 자원이 부족하게 될 가능성이 높습니다. 이로 인해 GSRetail App들의 서비스 안정성이 떨어질 수 있기 때문에, 예전에 적용했던 GSSHOP App에서의 메모리 확보 방법에 대해 이야기하려고 합니다. iOS (iPhone OS) 기준으로 이야기를 할 것이니 이점 참고 바랍니다. GS SHOP App 분석 제가 이 회사에 처음 입사하여 가장 먼저 개발해서 추가했던 것이 바로 App crash 정보 수집 기능입니다. 운영 중인 App을 개선하..

APP 2023.05.12

안드로이드 포그라운드 서비스를 활용한 메모리부족으로 앱 종료되는 현상 개선

배경 우리동네GS 앱은 기존 ‘나만의 냉장고’ ‘GS THE FRESH’ ‘우리동네딜리버리’ 3개의 앱(GS25, GS The Fresh, 퀵커머스, 와인25플러스 4개의 비즈니스)을 하나로 통합하였다. 웹뷰기반의 하이브리드앱인 기존 서비스들을 Flutter를 사용하여 완전히 새롭게 개발하였고, 기존의 비즈니스와 기능을 단순 통합하지 않고, 새로운 비즈니스(픽업등)와 기존 앱의 가장 불안정한 랜더링 및 서비스 성능을 높이는 것이 주요 프로젝트의 목표였다. 새로운 기획&디자인을 만족하고 더 나은 성능의 새로운 앱을 만들기 위해, Front- end / Back-end에 다양한 솔루션을 도입했고, Front-end 는 메뉴 진입 속도 개선등을 위한 솔루션 사용으로 메모리 사용량 이슈(특히 구형 Android..

APP 2023.04.17