들어가며 LINE 앱은 전 세계 많은 사용자들이 이용하는 다양한 실시간 커뮤니케이션 서비스를 제공하고 있습니다. 저희 팀은 그중에서 1:1 통화와 그룹 통화, LINE 미팅과 같은 통화 서비스를 맡고 있으며, 각 기능들이 안정적으로 작동해 사용자에게 좋은 품질 경험을 제공할 수 있도록…
안녕하세요. LINE Plus의 LINE AI LAB에서 LLM 에이전트 관련 서비스를 개발하고 있는 신수민입니다. 저는 지난 7월 도쿄에서 열린 Tech-Verse 2025에 Tech-Verse의 현장을 취재하고 담아오는 'LINE DEV 리포터즈'에 참여하면서 현장에서 LY Corp…
안녕하세요, LINE Plus에서 근무하고 있는 최연두입니다. 이 글에서는 시행착오 끝에 정착한 저만의 ‘일하는 방식’을 공유하려고 합니다. 다른 팀의 아무개가 일하는 방식이 궁금하신 분, 효율적인 협업과 코드 리뷰에 관심 있는 분들께 도움이 되길 바랍니다. 참고로 이 글은 작업 관리에…
들어가며 안녕하세요. LINE NEXT DevOps 팀에서 일하고 있는 이동원이라고 합니다. 현재 쿠버네티스 기반의 인프라 운영과 유지 보수, CI/CD 구축, 로그 수집 및 모니터링 시스템 구성, 장애 대응 등 인프라의 전반적인 업�무를 담당하고 있습니다. 이번 글에서는 LINE NE…
안녕하세요. LINE Plus 소속 Redis 팀의 김정훈입니다. 저는 지난 7월 2일부터 4일까지 사흘간 진행된 사내 해커톤 'Hack Day 2025'에 참가했습니다. Hack Day 2025는 작년과 마찬가지로 도쿄 기오이초에 위치한 LY Corporation 오피스에서 개최됐습니…
들어가며 안녕하세요. LINE Billing Platform 개발 팀의 김영재, 이정재입니다. LINE Billing Platform 개발 팀에서는 LINE 앱 내 여러 서비스에서 사용하는 결제, 포인트 플랫폼을 이용한 결제 기능을 제공하고 있습니다. 저희 팀은 최근 가장 핵심 시스템이…
이제는 꽤나 대중적인 방법론으로 자리 잡은 DDD(domain driven design)는 도메인을 중심으로 소프트웨어를 모델링하는 데 중점을 둔 설계 접근 방식입니다. 저는 DDD가 이전의 방법론들과 크게 다르지 않다고 생각합니다. 그간의 설계 방식은 개발하고자 하는 서비스의 역할과…
안녕하세요. LINE VOOM 서비스의 추천 시스템을 개발하는 ML 엔지니어 이창현, 백진우입니다. 저희는 LINE VOOM의 실시간 추천 시스템을 위한 대규모 벡터 데이터베이스 도입 프로젝트를 진행했습니다. 이번 글에서는 그 도입 과정을 자세히 소개하고자 합니다. LINE VOOM이란…
Flutter에는 다양한 상태 관리 라이브러리가 존재합니다. 대표적으로 Provider와 GetX, BLoC 등이 있는데요. 이전에 Flutter 인기 아키텍처 라이브러리 3종 비교 분석 - GetX vs BLoC vs Provider라는 글에서 이들 라이브러리의 고유한 특징과 장단점을…
이 글은 2024년 3월 14일에 일본어로 먼저 발행된 기사를 번역한 글입니다. 안녕하세요. 커뮤니케이션 앱 LINE의 모바일 클라이언트를 개발하고 있는 Ishikawa입니다. 저희 회사는 높은 개발 생산성을 유지하기 위해 코드 품질 및 개발 문화 개선에 힘쓰고 있습니다. 이를 위해 다…
이 글은 2024년 3월 7일에 일본어로 먼저 발행된 기사를 번역한 글입니다. 안녕하세요. 커뮤니케이션 앱 LINE의 모바일 클라이언트를 개발하고 있는 Ishikawa입니다. 저희 회사는 높은 개발 생산성을 유지하기 위해 코드 품질 및 개발 문화 개선에 힘쓰고 있습니다. 이를 위해 다양…
들어가며 안녕하세요. LINE Billing Platform 개발 팀의 김영재, 이정재입니다. LINE Billing Platform 개발 팀에서는 LINE 앱 내 여러 서비스에서 사용하는 결제 및 포인트 플랫폼을 이용한 결제 기능을 제공하고 있습니다. 저희 팀에서는 최근 가장 핵심 시…
기술 문서는 늘 부족합니다. 특히 좋은 기술 문서가 부족하죠. 테크니컬 라이터는 좋은 기술 문서를 쓸 수 있지만, 사내 프로젝트를 모두 담당하기에는 수가 턱없이 모자랍니다. '개발자 글쓰기 교육'으로 그 간극을 메워보려는 시도도 있지만, 과연 교육만 들으면 모든 개발자가 기술 문서를 잘…
이 글은 2024년 2월 29일에 일본어로 먼저 발행된 기사를 번역한 글입니다. 안녕하세요. 커뮤니케이션 앱 LINE의 모바일 클라이언트를 개발하고 있는 Ishikawa입니다. 저희 회사는 높은 개발 생산성을 유지하기 위해 코드 품질 및 개발 문화 개선에 힘쓰고 있습니다. 이를 위해 다…
들어가며 안녕하세요. LINE 메신저 앱의 통화 모듈을 개발하고 있는 곽정남입니다. 제가 속한 Platform Product Engineering 2 팀은 지난 2024년 11월 태국 현지에서 LINE 메신저 앱의 통화 품질을 점검했습니다. 현지 통화 품질 점검은 현지에서 실제 네트워크…
이 글은 2024년 2월 22일에 ��일본어로 먼저 발행된 기사를 번역한 글입니다. 안녕하세요. 커뮤니케이션 앱 LINE의 모바일 클라이언트를 개발하고 있는 Ishikawa입니다. 저희 회사는 높은 개발 생산성을 유지하기 위해 코드 품질 및 개발 문화 개선에 힘쓰고 있습니다. 이를 위해…
팀장님: "회원 인증 체계를 리뉴얼해 봅시다" 기획자: "인... 인증이요?" ('인증 시스템 레거시도 많아 보이고 복잡해 보이는데... 좀 무섭네...') '인증'이란 단어는 듣기만 해도 복잡해 보이고, 완벽해야만 할 것 같아 무섭게 느껴지곤 하죠. 네. 실제로도 그렇습니다. 인증 시…
이 글은 2024년 2월 15일에 일본어로 먼저 발행된 기사를 번역한 글입니다. 안녕하세요. 커뮤니케이션 앱 LINE의 모바일 클라이언트를 개발하고 있는 Ishikawa입니다. 저희 회사는 높은 개발 생산성을 유지하기 위해 코드 품질 및 개발 문화 개선에 힘쓰고 있습니다. 이를 위해 다…
시작하며 안녕하세요. SR(Service Reliability) 팀에서 SRE(site reliability engineer, 사이트 안정성 엔지니어링) 업무를 맡고 있는 이채승(argon)입니다. SR 팀은 Service Engineering 실에 속해서 LINE 앱에서 제공하는 서비…
이 글은 2024년 2월 8일에 일본어로 먼저 발행된 기사를 번역한 글입니다. 안녕하세요. 커뮤니케이션 앱 LINE의 모바일 클라이언트를 개발하고 있는 Ishikawa입니다. 저희 회사는 높은 개발 생산성을 유지하기 위해 코드 품질 및 개발 문화 개선에 힘쓰고 있습니다. 이를 위해 다양…
들어가며 안녕하세요. 저희 AMD(Applied ML Dev) 팀에서는 생성형 AI를 포함한 다양한 AI/ML 모델을 개발하고 서비스에 적용하고 있습니다. 앞서 발행한 AI로 생성한 이미지는 어떻게 평가할까요? (기본편)에서는 생성형 AI 모델의 성능을 평가하는 다양한 방법론을 살펴봤는…
이 글은 2024년 2월 1일에 일본어��로 먼저 발행된 기사를 번역한 글입니다. 안녕하세요. 커뮤니케이션 앱 LINE의 모바일 클라이언트를 개발하고 있는 Ishikawa입니다. 저희 회사는 높은 개발 생산성을 유지하기 위해 코드 품질 및 개발 문화 개선에 힘쓰고 있습니다. 이를 위해…
생성형 AI 모델로 이미지 생성은 쉽죠, 그런데 '좋은 이미지' 생성도 쉬웠으면 좋겠어요! 저희 회사에는 고유한 비율로 최소한의 디테일만 유지한 채 인체와 개체를 정의하는 특유의 이미지 스타일이 존재합니다(참고). 저희 팀에서는 생성형 AI를 이용해 이 스타일이 적용된 이미지를 프롬프트…
이 글은 2024년 1월 25일에 일본어로 �먼저 발행된 기사를 번역한 글입니다. 안녕하세요. 커뮤니케이션 앱 LINE의 모바일 클라이언트를 개발하고 있는 Ishikawa입니다. 저희 회사는 높은 개발 생산성을 유지하기 위해 코드 품질 및 개발 문화 개선에 힘쓰고 있습니다. 이를 위해…
들어가며 최근 Anthropic에서 Claude LLM을 통해 모델 컨텍스트 프로토콜(Model Context Protocol, 이하 MCP)을 발표했습니다. MCP는 대형 언어 모델(large language model, 이하 LLM)이 외부 데이터 소스나 기능을 사용할 수 있도록 돕…
안녕하세요. 커뮤니케이션 앱 LINE의 모바일 클라이언트를 �개발하고 있는 Ishikawa입니다. 저희 회사는 높은 개발 생산성을 유지하기 위해 코드 품질 및 개발 문화 개선에 힘쓰고 있습니다. 이를 위해 다양한 노력을 하고 있는데요. 그중 하나가 Review Committee 활동입니…
LY Corporation에서는 2024년 10월에 사내 웹 프런트엔드 개발에 관여하는 사내 구성원을 대상으로 본인이 생각하는 2024년의 웹 프런트엔드 관련 근황 및 관련 툴 이용 현황을 알아보는 설문 조사, 'State of LY Frontend 2024'를 실시했습니다. 이와 유사…
안녕하세요. 커뮤니케이션 앱 LINE의 모바일 클라이언트를 개발하고 있는 Ishikawa입니�다. 저희 회사는 높은 개발 생산성을 유지하기 위해 코드 품질 및 개발 문화 개선에 힘쓰고 있습니다. 이를 위해 다양한 노력을 하고 있는데요. 그중 하나가 Review Committee 활동입니…
들어가며 안녕하세요. LINE+ Contents Service Engineering 조직에서 백엔드 개발 및 프런트엔드 개발을 담당하고 있는 문범우, 안현모입니다. 저희 조직에서는 그룹 구성원의 기술 성장을 돕고 향상된 능력을 적재적소에 활용할 수 있도록 'Tech Group'이라는 조…
안녕하세요. 커뮤니케이션 앱 LINE의 ��모바일 클라이언트를 개발하고 있는 Ishikawa입니다. 저희 회사는 높은 개발 생산성을 유지하기 위해 코드 품질 및 개발 문화 개선에 힘쓰고 있습니다. 이를 위해 다양한 노력을 하고 있는데요. 그중 하나가 Review Committee 활동입…
들어가며 최근 몇 년간 생성 모델은 인공 지능 분야에서 혁신적인 도구로 부상하며 연구자와 산업 리더들의 큰 관심을 받고 있습니다. 생성 모델은 딥러닝 기술의 발전을 바탕으로 고품질의 이미지와 비디오와 같은 복잡한 데이터 형식을 생성하는 데 있어 전례 없는 능력을 보여주고 있습니다. 특히…
안녕하세요. LINE Plus Tech Content Strategy 팀 하성창입니다. 저희 팀은 테크니컬 라이터로 구성돼 있으며, LINE Plus에서 개발한 다양한 플랫폼의 기술 문서를 작성하는 한편 사내 용어집 ��사이트인 Words의 콘텐츠와 LY Corporation Tech…
안녕하세요. 커뮤니케이션 앱 LINE의 모바일 클라이언트를 개발하고 있는 Ishikawa입니다. 저희 회사는 높은 개발 생산성을 유지하기 위해 코드 품질 및 개발 문화 개선에 힘쓰고 있습니다. 이를 위해 다양한 노력을 하고 있는데요. 그중 하나가 Review Committee 활동입니다…
요즘 우리나라는 어느 회사든 글로벌 진출을 염두에 두고 있습니다. 대부분의 분야에서 우리나라 시장은 가파른 속도로 축소될 전망이므로 해외 진출은 하고 싶은 것이 아닌 할 수밖에 없는 필수 비즈니스 전략이 되고 있습니다. 해외에 진출하면 현지화, 마케팅, 법률 등의 이유로 현지 팀을 만들…
시작하며 안녕하세요. Enablement Engineering 팀에서 SRE(site reliability engineer)로 일하고 있는 어다희입니다. 저희 팀은 LINE 서비스를 보다 높은 성능으로 효율적이고 안전하게 사용자에게 제공할 수 있도록 다방면에서 'Enablement'를…
시작하며 안녕하세요. SRE(site reliability engineering, 사이트 안정성 엔지니어링) 업무를 맡고 있는 Enablement Engineering 팀 어다희, Service Reliability 팀 천기철입니다. 저희 두 팀은 Service Engineering 실…
LLMOps란 무엇인가요? 최근 GPT-4와 같은 대규모 언어 모델(large language model, 이하 LLM)의 사용이 보편화되면서 이를 활용한 애플리케이션이 활발히 개발되고 있습니다. 예를 들어 24시간 영어 선생님 역할을 하는 애플리케이션이나 고객 서비스 문의에 사람처럼…
들어가며 안녕하세요. Game Platform Dev의 류동훈, Zhang Youlu(Michael), Takenaka, 이형중입니다. 저희 조직은 게임 퍼블리�싱에 필요한 다양한 기능을 개발하고 운영하는 역할을 맡고 있습니다. 저희는 최근 조직 내 업무 효율을 높이기 위해 다양한 LL…
안녕하세요. 커뮤니케이션 앱 LINE의 모바��일 클라이언트를 개발하고 있는 Ishikawa입니다. 저희 회사는 높은 개발 생산성을 유지하기 위해 코드 품질 및 개발 문화 개선에 힘쓰고 있습니다. 이를 위해 다양한 노력을 하고 있는데요. 그중 하나가 Review Committee 활동입…
안녕하세요. LINE Plus ABC Studio 기획자 한영주입니다. 저는 일본 최대 규모의 배달 서비스인 데마에칸(Demaecan, 出前館) 앱을 기획하고 있습니다. 한국의 배달 서비스와 마찬가지로 현재 데마에칸의 주요 수입원도 주문 수수료와 배달 수수료입니다. 저희는 신규 수익원을…
안녕하세요. 커뮤니케이션 앱 LINE의 모바일 클라이언트를 개발�하고 있는 Ishikawa입니다. 저희 회사는 높은 개발 생산성을 유지하기 위해 코드 품질 및 개발 문화 개선에 힘쓰고 있습니다. 이를 위해 다양한 노력을 하고 있는데요. 그중 하나가 Review Committee 활동입니…
안녕하세요. LINE Plus ABC Studio에서 일본 음식 배달 서비스 Demaecan(出前館, 이하 데마에칸)의 디자인을 담당하고 있고, 사용자의 다양한 목소리를 담을 수 있는 ABC User Feedback도 함께 만들고 있는 오관식입니다. 이번 글에서는 디자이너와 웹 프런트엔…
안녕하세요. 커뮤니케이션 앱 LINE의 모바일 클라이언트를 개발하고 있는 Ishikawa입니다. 저희 회사는 높은 개발 생산성을 유지하기 위해 코드 품질 및 개발 문화 개선에 힘쓰고 있습니다. 이를 위해 다양한 노력을 하고 있는데요. 그중 하나가 Review Committee 활동입니다…
안녕하세요. 커뮤니케이션 앱 LINE의 모바일 클라이언트를 개��발하고 있는 Ishikawa입니다. 저희 회사는 높은 개발 생산성을 유지하기 위해 코드 품질 및 개발 문화 개선에 힘쓰고 있습니다. 이를 위해 다양한 노력을 하고 있는데요. 그중 하나가 Review Committee 활동입…
들어가며 LINE Plus의 MPR(Mobile Productive & Research) 팀은 LINE 클라이언트 앱의 빌드 개선과 CI 파이프라인 관리, 자동화 지원 등의 업무를 담당하고 있습니다. 이번 글에서는 저희 팀에서 운영하는 CI/CD에 발생했던 흔하지 않은 이슈와 그 해결…
지난 2편에서는 가상 스레드(virtual thread)의 컨텍스트 스위칭(context switching)이 구체적으로 어떤 과정으로 진행되는지 알아봤습니다. 마지막 3편에서는 가상 스레드의 중요한 이슈인 고정(pinned) 이슈와 함께 가상 스레드의 한계에 대해서 알아보겠습니다. 3…
들어가며 지난 1편에서는 가상 스레드(virtual thread)의 장점을 살펴보고 가상 스레드를 어떻게 생성하고 시작하는지 알아봤습니다. 이어서 이번 글에서는 컨텍스트 스위칭(context switching)의 작동 방식을 살펴보려고 합니다. 1편에서 살펴본 VirtualThread…
들어가며 Java의 가상 스레드(virtual thread)는 효율적인 동시성 애플리케이션을 개발하기 위해 설계된 경량 스레드입니다. 기존의 Java 스레드 모델과 비교해 더 적은 자원으로 더 많은 수의 스레드를 효율적으로 관리할 수 있으며, 이를 통해 높은 동시성 처리 성능을 제공합니…
안녕하세요. HBase 팀 이욱입니다. 저는 16년간 데이터베이스 엔지니어로 일해 왔습니다. DBA(database administrator)의 업무에는 다양한 작업이 있으며, 그중에서 특히 데이터 마이그레이션은 일상다반사처럼 자주 수행하는 작업인데요. 그럼에도 DBA에게는 언제나 힘들…
안녕하�세요. 커뮤니케이션 앱 LINE의 모바일 클라이언트를 개발하고 있는 Ishikawa입니다. 저희 회사는 높은 개발 생산성을 유지하기 위해 코드 품질 및 개발 문화 개선에 힘쓰고 있습니다. 이를 위해 다양한 노력을 하고 있는데요. 그중 하나가 Review Committee 활동입니…
안녕하세요. LINE Plus ABC Studio에서 앱 개발을 하고 있는 김종식, 최정연, 박유진입니다. 저희 팀은 Flutter를 활용해 일본에서 운영하는 배달 서비스인 '데마에칸(Demaecan, 出前館)'의 다양한 제품 개발에 참여하고 있는데요. 작년에 YouTube 채널 라인개…
들어가며 안녕하세요. LINE GAME PLATFORM Dev2 팀의 이현섭, 이형중입니다. LINE GAME PLATFORM에서는 게임 개발에 필요한 다양한 플랫폼 서비스를 개발합니다. 저희 팀은 그중에서도 게임 데이터를 수집하고 분석하기 위한 프로덕트와 MLOps, LLMOps를 개…
LLM 애플리케이션 테스트의 어려움 GPT-4와 같은 대규모 언어 모델(large language model, 이하 LLM)이 대중화되고 이를 활용한 LLM 애플리케이��션 역시 다양한 분야에서 본격적으로 사용되고 있습니다. 다양한 비즈니스 로직이 포함된 LLM 애플리케이션은 서비스의…
안녕하세요. LINE 앨범과 공유 서비스를 개발하고 있는 Android 엔지니어 정우진, Product UX 조직에서 공통 UX를 담당하는 디자이너 정승희입니다. 저희는 지난 9월 2일부터 6일까지 사내에서 개최된 Tech Week 2024 행사에 참여했습니다. Tech Week 202…
안녕하세요. 저는 LINE+ ABC Studio에서 앱을 개발하고 있는 윤기영입니다. 최근 운영 중이던 앱의 규모가 점점 커지면서 기존 구조로는 앱을 유지 보수하거나 확장하기 어려워졌습니다. 이를 극복하기 위해 여러 아키텍처 중 클린 아키텍처를 도입했는데요. 그 과정을 여러분께 소개하고…
이 글은 LINE Engineering Blog에 발행했던 글을 LY Tech Blog로 재발행하였습니다. 서비스 소개 '데마에칸(出前館)'은 2000년부터 서비스를 시작한 일본 최대 규모 음식 배달 서비스로 2020년 당시, 아직 LINE이었던 LY Corporation에서 인수했습니…
안녕하세요. 일본 최대 규모의 음식 배달 서비스 Demaecan(出前館, 이하 데마에칸) 프로덕트를 담당하는 김영재라고 합니다. 어느덧 프로덕트를 쇄신한 지 2년 반이 되어가고 있습니다. 이번 글은 레거시를 해소하면서 서비스를 혁신해 나가는 데마에칸의 여정 중 기록을 남기는 의미로 작성…
안녕하세요. LINE VOOM의 추천 시스템을 개발하는 ML 엔지니어 이창현, 미디어 플랫폼 서버 개발자 조희성입니다. 저희는 지난 9월 2일부터 6일까지 개최된 사내 행사인 Tech Week 2024에 참여하기 위해 일본 도쿄에 다녀왔습니다. Tech Conference 프로그램에서는…
들어가며 안녕하세요. Security R&D 팀의 한주홍입니다. 저희 팀은 LY 그룹 서비스의 전반적인 보안을 강화하기 위해 다양한 보안 기술을 연구하고 개발 및 컨설팅하는 업무를 담당하고 있습니다. 현재 우리가 사용하고 있는 많은 IT 서비스에서는 안전한 서비스를 제공하기 위해 다양한…
들어가며 안녕하세요. Security R&D 팀에서 FIDO2 클라이언트 개발을 담당하고 있는 김도연, 김영현입니다. 공개 키 암호화를 기반으로 한 FIDO는 패스워드나 SMS OTP 인증과 비교했을 때 사용자 관점에서는 사용하기 쉽고 안전하며 서비스 관점에서는 배포 및 유지 보수하기…
안녕하세요. ABC Studio에서 Demaecan(出前館, 이하 데마에칸) 앱을 개발하고 있는 김종식입니다. 데마에칸은 2000년부터 서비스를 시작한 일본 최대 규모의 음식 배달 서비스로 ABC Studio는 2021년 봄부터 프로덕트 개선에 참여하고 있습니다. Flutter 전환의…
들어가며 안녕하세요. Auth & Account Dev 팀의 김은찬, 김종민, 권기범, 정의엽, 허원영입니다. Auth & Account Dev 팀은 LY Corporation 그룹 서비스의 계정 및 인증과 관련된 백엔드 개발을 담��당하고 있습니다. 이번 포스팅에서는 앞서 Securi…
안녕하세요. Cloud DBS 팀에서 사내 클라우드인 Verda의 데이터베이스와 OpenSearch 서비스 개발을 맡고 있는 강인배, 문현균입니다. 이번 글에서는 저희 팀에서 쿠버네티스 컨트롤러(이하 컨트롤러)를 활용해 커스텀 리소스를 사용하고 있는 방법을 사례와 함께 살펴보며 컨트롤러…
들어가며 안녕하세요. LINE Plus에서 Global E-Commerce Platform 개발을 맡고 있는 장효택입니다. LINE Brand Catalog와 통합 커머스 검색 서비스(이하 통합 커머스 검색으로 통칭)에는 다양한 위치에 수많은 이미지가 사용되고 있습니다. 가장 흔하게 접…
안녕하세요. 쿠버네티스에서 파드를 분산 처리할 때 사용할 수 있는 토폴로지 분배 제약 조건(topology spread constraints) 활용 사례를 공유할 ContentsService2 팀 문범우입니다. 서비스의 가용성과 안전성을 높이기 위해 최근 많은 분들이 쿠버네티스를 다양하…
들어가며 최근 업계에 생성형 AI가 도입되면서 소프트웨어 개발 과정에서 개발 품질을 유지하면서 생산성을 향상시킬 수 있는 새로운 방법을 제공하고 있는데요. 그에 반해 QA의 품질 활동의 생산성을 높이는 방법은 자주 언급되지 않는 것 같습니다. 일반적으로 QA의 품질 활동을 테스트로만 한…
안녕하세요. Data Platform Dev에서 쿠버네티스 클러스터를 운영하며 컴포넌트를 개발하는 이현규입니다. 제가 운영하는 쿠버네티스 클러스터는 약 800대 규모로 주로 사내 데이터 플랫폼과 사내 MLOps 플랫폼의 ML 잡들이 실행되고 있는데요. 이번 글에서는 Informer를 사…
들어가며 안녕하세요. UIT 팀 윤혜린입니다. LY Corporation Group에서는 헤드리스 CMS인 LandPress Content를 사내 임직원 대상으로 운영하고 있습니다. 이 글에서는 LandPress Content에서 CDC(change data capture, 변경 데이터…
들어가며 안녕하�세요. Security R&D 팀의 김도연, 김영현, 박경준, 후바인 찰스, 안상환입니다. Security R&D 팀은 LY 그룹 서비스의 전반적인 보안을 강화하기 위해 보안 기술 연구 및 모듈 개발, 컨설팅 업무를 담당하고 있습니다. 이번 글에서는 사용자의 서비스 요청…
안녕하세요. LINE VOOM AI 조직의 서버 개발자 박찬우, 양유성입니다. 이번 글의 제목은 'Massive AI Real-time Embedding을 효율적으로 다루기'입니��다. 제목을 간결하게 만들다 보니 추상적인 제목이 되었는데요. 조금 더 자세히 말씀드리자면 AI에 사용되는…
LINE 개발 조직에서는 성숙한 개발 문화를 만들기 위해 다양한 시도를 하고 있습니다. 클라이언트 앱 품질을 향상시키기 위해 개발 프로세스를 개선하고 있는 LY Mobile Developer Experience Dev 팀에�서도 여러 시도를 해오고 있는데요. 이번 글에서는 이시카와 무네…
들어가며 안녕하세요. AI Services Lab 팀의 ML 엔지니어 박희웅입니다. 저희 팀에서는 오픈챗과 관련된 다양한 AI/ML 모델을 개발해 서빙하고 있는데요. 앞서 오프라인과 온라인 A/B 테스트를 통해 오픈챗 추천 모델 개선하기 포스트에서 사용자 개인의 취향에 맞는 오픈챗들을…
안녕하세요, ABC Studio에서 Demaecan(出前館, 이하 데마에칸) 앱을 개발하고 있는 김종식입니다. 데마에칸은 2000년부터 서비스를 시작한 일본 최대 규모의 음식 배달 서비스로 ABC Studio는 2021년 봄부터 프로덕트 개선에 참여하고 있습니다. 한 팀에서 문법 작성…
LINE에서는 3년 전 기존 헤드리스 CMS의 구조와 성능을 개선한 새로운 헤드리스 CMS, LandPress Content를 사내 임직원 대상으로 출시했습니다. 그 후 전통적인 CMS를 사용하던 여러 LINE 서비스가 LandPress Content로 재개발되기 시작했는데요. 이번 글…
이전에 LINE 앱에서 음성 품질을 측정하는 방법이라는 글에서 LINE 앱에서 어쿠스틱 환경과 네트워크 환경 변화, 글로벌 환경에 대응하는 방법을 소개한 바 있습니다. 특히, 어쿠스틱 환경에 대응하는 방법과 관련해서 AEC(acoustic echo cancellation, 에코 제거)…
안녕하세요. ABC Studio 기획자 권다이, 디자이너 김보람입니다. 저희는 일본의 최대 규모 배달 서비스인 데마에칸(Demaecan, 出前館)에서 사장님들을 위한 MerchantApp을 제작하고 있습니다. 2023년 저희는 현지 사용자들의 사용성을 극대화하는 MerchantApp U…
들어가며 안녕하세요. LINE+ Contents Service Engineering 조직에서 백엔드 개발을 맡고 있는 양강현, 이병찬입니다. 저희가 속해 있는 Contents Server Engineering에서는 Tech Group이라는 조직을 운영하고 있습니다. Tech Group은…
여러분은 주로 어디서 기술 정보를 얻으시나요? 블로그, YouTube 등 다양한 방법이 있지만, 동료에게서 얻는 지식도 많습니다. 잠깐의 티타임, 회식 자리 등 일상적인 교류에서 예상치 못한 WOW 포인트를 마주하기도 하지요. LINE Plus Developer Relations 팀에서…
안녕하세요. ABC Studio 김영재입니다. 저는 LINE이 2020년에 인수한 일본 최대 규모 배달 서비스 데마에칸(出前館, Demaecan) 프로덕트를 담당하고 있습니다. HeadVer는 제가 2019년에 고안하고 30여 개 프로덕트에 적용한 후 2021년에 LINE GitHub…
문제 상황 저는 ABC Studio에서 MessagingHub라는 플랫폼 프로젝트를 담당하고 있습니다. MessagingHub는 다양한 비즈니스 요구에 맞춰 엔드 유저를 대상으로 메시징 기능을 제공하는 맞춤형 메시징 플랫폼입니다. 아래 그림은 MessagingHub가 Demaecan 서…
안녕하세요. 저는 LINE+ ABC Studio의 프런트엔드 개발자 정치영입니다. 현재 오픈소스 프로젝트인 ABC User Feedback를 개발하고 있습니다. 이번 글에서는 풀 스택 웹 애플리케이션인 ABC User Feedback을 모노리포(monorepo) 구조로 개발한 경험을 공…
들어가며 안녕하세요. VOOM Server Unit에서 LINE VOOM 서비스를 개발하고 있는 서용준입니다. LINE VOOM 서비스는 메인 콘텐츠인 포스트를 저장하기 위해 MySQL과 Cassandra를 사용하고 있습니다. 앞서 신홍중 님께서 개발자가 손수 대규모 Cassandra를…
들어가며 안녕하세요. Technical Content Strategy 팀 손근입니다. 저희 팀은 지난 2월 22일 일본 Dev Content 팀과 함께 사내 임직원을 대상으로 'Technical Documentation Day'라는 온라인 행사를 개최했습니다. 이 행사는 재택 근무를 기…
LitmusChaos를 이용해 카오스 테스트 시스템 구축하기 이번 글은 쿠버네티스 네이티브 워크플로를 이용한 대용량 스트리밍 파이프라인 검증 자동화 시리즈의 마지막 글입니다. 지난 1편과 2편은 아래 링크에서 확인하실 ��수 있습니다. 지난 2편에서는 Tekton 기반으로 성능 테스트…
들어가며 안녕하세요. LINE Plus에서 LINE Monary와 MyDashboard 서비스의 백엔드를 맡고 있는 조성빈입니다. 이번 글에서는 백엔드 서비스 개발 및 운영 업무를 담당하면서 REST API 기반의 인터페이스 문서를 가지고 다양한 파트와 커뮤니케이션을 진행하면서 겪었던…
들어가며 안녕하세요. VOOM Server Unit에서 LINE VOOM의 서버 개발을 맡고 있는 신홍중입니다. LINE VOOM 서비스는 포스트와 코멘트, 좋아요(like)와 같은 메인 콘텐츠 저장소로 Cassandra를 사용하고 있습니다. Cassandra는 멀티 데이터 센터를 구축…
Tekton을 이용한 성능 테스트 지난 1편에서 LINE 광고 플랫폼에서 사용하는 대용량 스트리밍 파이프라인의 특징을 살펴보면서, 이와 같은 데이터 스트리밍 애플리케이션의 성능을 측정할 때에는 통합 테스트(integration test) 환경을 구축한 뒤 직접 애플리케이션을 통해 데이터…
소개 안녕하세요. ABC Studio의 송재욱입니다. 저는 이곳에서 ABC Platform 팀을 맡고 있습니다. 이 글은 지난 1년간 ABC Platform 팀이 데마에칸(出前館, Demaecan) 서비스를 만들어 오며 저희만의 방식으로 일해 온 여정을 돌아보는 회고입니다. - 데마에칸…
FY23 회고를 시작하며 - 지난 1년간의 시행착오와 성장을 되돌아보는 시간 안녕하세요. LINE Global E-Commerce TPM(Technical Program Manager)을 맡고 있는 김나리입니다. LINE에서 제공하는 여러 서비스 중 일본 쇼핑 서비스(LINE SHOPP…
들어가며 현재 일본과 대만, 태국에서는 LINE 앱에서 LINE VOOM이라는 서비스를 제공하고 있습니다. LINE VOOM은 LINE 앱 사용자를 위한 SNS로 사진과 텍스트, 비디오 등의 포스트를 업로드할 수 있는 공간입니다. VOOM RecSys Platform 팀에서는 수많은 포…
"리소스가 부족해서요." "우선순위가 낮아서요." 어느 회사 어느 부서에서나 협업할 때 가장 많이 나오는 말 아닐까요? 지금 있는 인원으로 주어진 일정을 소화하기에도 바쁘므로 당신의 요청은 당장 들어주기 어렵다는 의미이지요. 한정된 인원이 규칙적인 릴리스 사이클을 지켜가면서 기술 부채도…
LINE 광고의 대용량 스트리밍 파이프라인 스트리밍 처리의 기술 포인트 LINE 광고 플랫폼은 하루에도 수십억 건 이상의 광고를 송출합니다. 그 속에서 데이터 파이프라인은 실시간으로 광고 결과 데이터를 수집하고, 재가공하며, 저장하고, 재전송하는 등의 역할을 수행합니다. 대표적으로 실시…
안녕하세요. ABC Studio에서 Delivery 기획을 담당하고 있는 이하림입니다. ABC Delivery 팀은 현재 일본의 최대 규모 배달 서비스 '데마에칸(Demaecan, 出前館)'에서 배달원에게 배달 업무를 제공하고 고객에게 따뜻한 음식을 전달하는 배달 과정 전반을 담당하고…
들어가며 안녕하세요. HBase 팀 김영주, 김동의입니다. HBase 팀에서는 LY의 많은 서비스를 지원하기 위해 수천 대 규모의 HBase를 운영하고 있습니다. HBase는 Hadoop 기반 칼럼형 분산 데이터베이스로 확장이 용이해 대용량 데이터를 다룰 때 많이 사용하는데요. 회사가…
들어가며 안녕하세요. Messaging Client Dev 2 팀에서 LINE iOS 앱을 개발하고 있는 박신홍입니다. 작년에 신입으로 입사해서 LINE 앱 대화방에서 사용자 경험을 개선하기 위해 크고 작은 수정 작업을 진행하고 있습니다. 이번 글에서는 그중 가장 재미있게 진행했던 작업…
들어가며 안녕하세요. LINE Plus에서 Global E-Commerce Platform 개발을 맡고 있는 서종현입니다. 저희 팀은 작년에 주문 DB를 Oracle에서 MySQL로 이관하라는 미션을 받아서 성공적으로 완료했습니다. DB를 이관하면서 DB 모델도 변경해 읽기와 쓰기 양쪽…
안녕하세요. LINE+ Redis 팀에서 DBA 업무를 담당하고 있는 김정훈입니다. 저희 팀은 이름 그대로 대표적인 키-값 저장소(key-value store)인 Redis를 연구하고 사내에 도입하고 있습니다. 또한 국가 및 법인을 불문하고 자체적으로 운영하고 있는 서비스를 제외한 LI…
린트 - 보다 아름다운 코드를 위하여 안녕하세요. LINE+의 Mobile Productive & Research 팀에서 Android 관련 라이브러리 및 개발 환경 개선 맡아서 진행하고 있는 윤종민입니다. 지난 연말, ktlint 업데이트 작업(0.5.0 → 1.0.1)을 진행했습니다…
서비스 인프라 확장 비용을 줄이기 위한 선택 - 가상 머신 서비스 인프라를 확장하는 방법은 두 가지가 있습니다. 하나는 서버를 더 도입하는 스케일아웃이고, 또 하나는 서버에 하드웨어 자원을 추가하는 스케일업입니다. 요즘은 쿠버네티스의 유행과 관리의 편의성 때문에 스케일아웃에 더 무게를…
안녕하세요. ABC Studio 김영재입니다. 저는 LINE이 2020년에 인수한 일본 No.1 배달 서비스 데마에칸(出前館, Demaecan) 프로덕트를 담당하고 있습니다. 전 세계 모든 IT 회사나 서비스가 사용자의 목소리를 잘 듣자고 말합니다. 하지만 이것을 의사결정까지 숨 쉬듯…