들어가며 안녕하세요. Game Platform Dev의 류동훈, Zhang Youlu(Michael), Takenaka, 이형중입니다. 저희 조직은 게임 퍼블리�싱에 필요한 다양한 기능을 개발하고 운영하는 역할을 맡고 있습니다. 저희는 최근 조직 내 업무 효율을 높이기 위해 다양한 LL…
안녕하세요. 카카오뱅크의 서비스 레지스트리 운영 및 연관 시스템을 개발하는 Donggeuri입니다. 저희 서비스아키팀은 카카오뱅크 서비스의 안정적 운영을 최우선 목표로 삼고, 인프라 운영의 신뢰성과 효율성을 극대화하기 위해 노력하고 있습니다. 카카오뱅크 역시 초기에는 온프레미스 VM(V…
안녕하세요. 인프랩의 랠릿 셀 프론트엔드 개발자 고슈, 도니, 루시입니다. 2024년 초, 연간 플래닝에서 CTO인 향로에게서 예상치 못한 발표를 듣게 됩니다. 올해 인프런 글로벌 서비스를 출시할 예정이에요. 랠릿 셀도 함께 투입됩니다. 네? 저희도요? 이렇게 랠릿을 포함한 인프랩 개발…
코파일럿 “열일”하게 만드는 방법 깃허브 코파일럿(Github Copilot)은 IDE에서 사용할 수 있는 AI 페어 프로그래밍 도구입니다. 2021년에 최초로 공개된 비교적 젊은 툴이지만, 이제는 단 한 번이라도 사용해 본 적 없는 개발자를 찾기가 어려울 정도로 프로그래밍 필수 준비물…
혹시 활동하고 있는 커뮤니티가 있으신가요? 커뮤니티는 고향을 떠나 먼 곳으로 대학을 진학한 제게 절대 없어서는 안 될 정보의 창구였어요. 대학 새내기 시절을 돌아보면, 낯선 학교 근처의 맛집이나 듣기 좋은 꿀강의들을 찾기 위해 교내 커뮤니티 게시판을 열심히 뒤지던 기억이 새록새록 떠올라…
요약: 이 글은 Spring 기반 멀티모듈 프로젝트에서 환경변수를 설정하는 다양한 방법을 비교하고, 가장 적합한 방식을 선택하는 과정을 설명합니다. Spring 환경에서 spring.config.import, spring.profiles.include, @PropertySource, @…
물류의 물짜도 모르던 OMS PM의 OMS 구축기 - 1. 현재를 모르면 미래도 없다: As-Is 먼저 명확히 파악하기 - 2. 데이터를 파악하며 도메인 지식을 넓히다: 거미줄처럼 얽혀있는 데이터들 - 3. 사용자(고객) 인터뷰 중 깨달음을 얻다: SOMS는 생산할 수 있는 주문의 “양…
안녕하세요. 컬리의 OMS (Order Management System)의 Product Manager로 일하고 있는 염태환입니다. 2022년 1월 OMS라는 팀이 컬리에서 처음으로 생기고, 제가 해당 도메인의 첫 PM 역할을 하면서 해당 시스템이 과거 어떤 모습으로 존재했고 현재까지…
기업은 내부 구성원의 업무 생산성을 높이고 고도화하기 위해 다양한 정보화 시스템과 업무 지원 소프트웨어를 운영합니다. 또한, 외부 고객들과의 커뮤니케이션이나 서비스 제공을 위해 웹이나 앱을 운용합니다. 이러한 디지털 솔루션들은 현대 기업 운영의 핵심 요소로, 비즈니스 성과와 직결됩니다.…
요약: 카카오페이 클라이언트팀 스위리가 MapKit 프레임워크를 활용해 위치 기반 서비스 ‘포춘레이더’와 ‘내 주변 혜택’을 개발한 경험을 공유합니다. 본 글은 MapKit 활용 시 자주 마주할 문제와 해결 방안을 제시하며, 비슷한 고충을 가진 개발자들에게 유용한 인사이트를 제공합니다.…
안녕하세요, 올리브영의 상품 데이터를 다루고 있는 국밥빌런🍲입니다. 현재 올리브영의 상품 데이터를 생성하기 위해서는 오프라인 매장과 온라인몰로 관리하는 상품 데이터를 각기 다른 시스템을 통해 등록하고 연동하게 되어있어요. 저는 이렇게 관리 영역별로 분산되어 있는 상품 시스템을 하나로 통…
안녕하세요. 커뮤니케이션 앱 LINE의 모바��일 클라이언트를 개발하고 있는 Ishikawa입니다. 저희 회사는 높은 개발 생산성을 유지하기 위해 코드 품질 및 개발 문화 개선에 힘쓰고 있습니다. 이를 위해 다양한 노력을 하고 있는데요. 그중 하나가 Review Committee 활동입…
안녕하세요! 올리브영에서 매장 도메인을 담당하고 있는 알렉스입니다 :) 이전 글에서 저희는 이벤트 스토밍, 바운디드 컨텍스트 식별, 컨텍스트 매핑 등 DDD의 전략적 설계 과정을 통해 매장 도메인을 추출하는 과정을 알아보았습니다. 이번 글에서는 저희가 지난 1년간 걸어온 아래의 여정 중…
안녕하세요! 올리브영에서 매장 도메인을 담당하고 있는 알렉스입니다 :) 2023년도 11월에 주니어 개발자의 우당탕탕 입사기로 첫 포스팅을 하고 벌써 1년이라는 시간이 흘렀는데요. 이전 글에서 마무리 멘트로 "다음 글에서는 O2O 서비스를 모듈화·모던화 하면서 직면하는 기술 문제들을 해…
사업개발, 영업으로 커리어를 시작해서 풀스택, 프론트엔드, 서버 개발까지 다 해보신 지민님의 이야기를 들려드립니다. 끝 없는 도전과 변화, 지민님은 매 순간 어떤 태도로 커리어를 대했을까요? 토스 피플 글을 통해 알아보세요. 토스에서 하고 계신 일을 간략히 소개해주세요. 토스증권 마진…
안녕하세요. 카카오페이증권 DevOps 팀의 테라입니다. 본 글은 사내 지식저장소를 구축하기 위해 Amazon Bedrock과 슬랙봇을 통합하고 고도화한 경험을 공유하기 위해 작성되었습니다. 본 프로젝트는 ‘siri’ 라는 이름으로 (Apple의 siri가 모티브인 것 맞습니다.), 카…
Hi, I'm Gyubong Lee, a software engineer at Lablup. I've been working on maintaining Backend.AI core and working on the necessary tasks to bring Raft to our pro…
[DAN 24] 데이터 기반으로 지속 성장이 가능한 네이버 검색 FE 시스템 구축하기 - 등록일 - 2025.01.24 - | - 코멘트 - 7636 네이버 검색 FE 시스템 구축 과정에서 저희는 다음과 같은 문제에 직면했습니다. 첫째, 유사하지만 영역이 다른 경우 비슷한 작업을 반복하…
안녕하세요, 카카오 FE 플랫폼 조직의 톡메시지 FE에서 챗봇 관리자센터를 개발하고 있는 글링입니다. 이번 글에서는 챗봇 관리자센터의 성능 최적화 경험을 공유해 보려고 합니다. 챗봇 관리자센터는 앵귤러(Angular), RxJS, 타입스크립트(TypeScript)를 이용해 개발하고 있습…
안녕하세요, 모두싸인에서 백엔드를 개발하고 있는 러리입니다. 모두싸인은 NestJS 프레임워크를 기반으로 백엔드 시스템을 개발하고 있습니다. 하지만 제품 우선순위로 인해 업데이트가 계속 미뤄져, 여전히 오래된 6 버전대 NestJS를 사용하고 있었습니다. 구버전을 사용하면서 다른 최신…
요약: 이 글은 JPA의 @Transactional 사용과 데이터베이스 쿼리 성능 간의 관계를 다루며, 기본 설정의 문제점과 개선 가능성을 탐구합니다. JPA의 편리함이 성능에 영향을 미칠 수 있음을 지적하며, 기본 설정을 되돌아보고 성능 이슈 발생 전에 최적화 방안을 모색할 필요가 있…
안녕하세요. 모두싸인 백엔드 엔지니어 루디(Rudy)입니다. 모두싸인 제품그룹에서는 엔지니어링 컬처 길드 활동을 통해 개발 과정에서 겪는 어려움을 기술적, 문화적으로 해결하고 있는데요. 제가 속한 ‘비동기 메시지 가시화 파티’가 지난 1년동안 여러 문제를 해결하면서 주도적으로 문화를 바…
요약: Hexagonal Architecture를 도입했다가 제거한 경험을 통해 해당 아키텍처의 장단점과 실질적인 문제점을 다뤘습니다. 완벽해 보이는 Hexagonal Architecture도 상황에 따라 약점이 될 수 있음을 강조하며, 이를 적절히 활용하는 방법의 중요성을 전달합니다.…
안녕하세요, 저는 데브시스터즈 기술본부 백엔드셀에서 소프트웨어 엔지니어로 일하고 있는 안정현입니다. 이 글에서는 DevPlay 계정에 대해 알아보고 이를 통해 얻을 수 있는 다양한 혜택을 알아봅니다. #DevPlay 소개 DevPlay는 데브시스터즈의 글로벌 게임 서비스 플랫폼으로, 새…
주소정제 서비스 내재화 - 5화 ( 어질어질한 변화구들 ) 복합건물 (아파트, 다세대 주택) 주소정제 정복 - 복합건물이 단일건물보다 어려운 이유 - 복합건물의 경우 반드시 정확한 상세'동' 을 찾아야할까? - 복합건물 정제 결과에 '정확도 레벨'의 개념을 도입 - 복합건물 주소정제의…
주소정제 서비스 내재화 - 2화 ( 그럴싸한 계획 ) 손 안대고 코풀기 전략의 한계 앞서 1화에서는 도로명 주소의 특징과 컬리에서 주소정제가 어떤 의미를 갖는지에 대한 설명이었습니다. 그리고 건물은 단독건물과 복합건물로 나누어 생각해볼 수 있었습니다. 상세주소를 참고해야 정확한 건물정보…
주소정제 서비스 내재화 - 3화 ( 노가다의 달달한 열매 ) 전국 약 1080만개의 건물DB 완성 - 건물 DB 만들기 (전국의 모든 건물의 데이터 적재) - 세종특별자치시 건물 데이터는 완벽했나? - 하루에도 수십개의 건물이 생기고 철거되기도 할 텐데, 건물 DB 최신화 방법은? -…
주소정제 서비스 내재화 - 마지막 화 ( 엔드 게임 ) 유종의 미 그리고 회고 최초 문제정의 후 약 10개월 간의 여정끝에 단독건물, 복합건물 모두 안전하게 정제 가능했고 외부업체 호출량은 1%도 되지않는 수준으로 개선이 되었습니다. 거의 다 왔지만 외부업체 api를 호출해야만 하는 명…
주소정제 서비스 내재화 - 1화 ( 줄줄 새는 돈 ) 문제인식과 컬리에서의 주소 정제의 목적 - 컬리에서의 주소정제는 왜 필요해? - 최초 문제인식 - 현재의 대한민국의 주소 체계 - 그럼 주소정제의 목적을 주소지의 정확한 위치정보를 얻는 과정이라고 정의할 수 있을까? - 도로명 주소에…
주소정제 서비스 내재화 - 4화 ( 슬픈예감 ) 단독건물 주소정제 정복 (feat.전라북도와 부천시의 습격) - 흥미로운 통계 - 주소정제 2.0 설계 - AddressSeachParam 생성 과정 - 휴먼 에러를 보상하기 위한 로직이 몇개 보이는데, 그럼에도 모든 케이스를 커버하긴 힘…
[원문보기] IT 전문가와 비즈니스 의사결정권자들은 10년이 넘도록 ‘디지털 트랜스포메이션(DX)’이라는 용어를 일상에서 사용해 왔습니다. 이는 전략적 비즈니스 역량을 마법처럼 구현하는 기업 이니셔티브를 설명하기 위한 용어였습니다. 하지만 이런 의도는 측정 가능한 유의미한 성과와 일치하…
최초 문제정의 후 약 10개월 간의 여정끝에 단독건물, 복합건물 모두 안전하게 정제 가능했고 외부업체 호출량은 1%도 되지않는 수준으로 개선이 되었습니다. 거의 다 왔지만 외부업체 api를 호출해야만 하는 명확한 상황이 아직 2가지가 남아있었습니다. - 지번 주소 요청 처리 - LOW…
안녕하세요. OMS 팀 이준환입니다. OMS 팀은 서비스의 고도화를 위해 23년 1월부터 딜리버리 팀이 관리하던 TAM (Transportation Area Management) 서비스를 인계받게 되었습니다. TAM 서비스에는 컬리의 배송사 정책과 함께 주문 이행을 위한 필수 데이터가…
앞서 4화에서 단독건물을 어떻게 처리했는지에 대한 내용을 설명했습니다. 중간에 전라북도특별자치도, 부천시의 대규모 변경이 있었지만 미리 잘 대응을 한 결과 무탈하게 지나갔던 사건도 소개했습니다. 단독건물을 대부분 커버했음에도 여전히 40% 정도의 트래픽은 외부업체 api를 호출할 수 밖…
3화에서는 주소정제 1.0의 실패를 인정 후 전국의 건물 약 1080만개를 DB화 과정에 대한 설명이었습니다. 노가다의 결과로 전국의 건물 DB가 완성이 되었습니다. 👏👏 자 이제 재료는 준비되었고 남은건 잘 설계하고 안전한 랜딩 방법을 계획한 후 개발만 잘하면 되겠지요. 다시 1화의…
2화에서는 손안대고 코풀기 설계였던 주소정제 1.0 개발 과정과 발생한 장애상황에 대한 내용이었습니다. 일단 주소정제 1.0 에서 추가적인 장애가 발생하지 않았기에 롤백없이 운영하면서 새로운 방법을 찾는 것으로 팀 내 결정이 되었습니다. 3화는 23년 8월 ~ 9월 중순까지 약 1.5개…
앞서 1화에서는 도로명 주소의 특징과 컬리에서 주소정제가 어떤 의미를 갖는지에 대한 설명이었습니다. 그리고 건물은 단독건물과 복합건물로 나누어 생각해볼 수 있었습니다. 상세주소를 참고해야 정확한 건물정보, 위경도를 알수 있는 복합건물은 일단은 제외하고, 기본주소의 건물번호까지의 정보만으…
- blog Ingress Nginx Controller의 Prometheus Metric 병목 현상: 원인 분석과 해결 (2부) 개요 안녕하세요. 카카오 광고추천팀에서 광고 추천 개발 업무를 담당하고 있는 aiden.song입니다. 이번 글은 ingress nginx controlle…
- blog Ingress Nginx Controller의 Prometheus Metric 병목 현상: 원인 분석과 해결 (1부) 개요 안녕하세요. 카카오 광고 추천팀에서 광고 추천 개발 업무를 담당하는 pooh.duck입니다. 이 글에서는 Ingress Nginx Controller에…
안녕하세요! 24년 9월에 쏘카 데이터엔지니어링팀에 입사한 베넷입니다. 이번 글에서는 제가 쏘카 데이터 엔지니어링팀에 합류하게 된 계기부터, 입사 후 적응 과정, 그리고 프로젝트를 통해 느낀 점들을 공유하려고 합니다. 제가 몸담은 팀의 매력과 기술적 강점을 소개해 드리겠습니다. 다음과…
요약: 이 글에서는 분산 시스템에서 로컬 캐시를 설계하고 구현한 경험을 공유합니다. 캐시의 기본 개념부터 로컬 캐시와 글로벌 캐시의 차이점, 데이터 정합성을 유지하기 위한 메시징 시스템 활용 방법을 세부적으로 다루며, 각 환경에 적합한 캐시 전략 선택의 중요성을 강조합니다. 💡 리뷰어…
Lablup’s 10th Anniversary: An Unstoppable Voyage Hello, I’m Juyoung Lim, a Content Creator at Lablup. In 2025, Lablup celebrates its 10th anniversary. Long befo…
안녕하세요! 24년 9월에 쏘카 데이터엔지니어링팀에 입사한 베넷입니다. 이번 글에서는 제가 쏘카 데이터 엔지니어링팀에 합류하게 된 계기부터, 입사 후 적응 과정, 그리고 프로젝트를 통해 느낀 점들을 공유하려고 합니다. 제가 몸담은 팀의 매력과 기술적 강점을 소개해 드리겠습니다. 다음과…
- AI Agent 시장 동향을 다룬 해당 아티클은 1, 2편으로 나누어 게재됩니다. - 기업은 업무 환경이 급속히 변화함에 따라, 인공지능 기술에 막대한 투자를 할 것으로 예상됩니다. 2024년 11월, 가트너는 IT 심포지엄/엑스포 2024(Gartner IT Symposium/Xp…
[DAN 24] DEVIEW 세션 영상이 공개되었습니다. - 등록일 - 2025.01.15 - | - 코멘트 - 4270 기술 공유를 넘어 네이버의 미래 비즈니스와 서비스 변화 방향을 제시한 'DAN 24'가 많은 분들의 관심과 참여로 성황리에 종료되었습니다. 개발자뿐만 아니라 다양한…
안녕하세요. 토스증권 Realtime Data Team 송지수입니다. Kafka 데이터센터 이중화 1편에서 소개된 것처럼, 토스증권은 현재 Active-Active 구성으로 Kafka를 운영하고 있습니다. 오늘은 Active-Active를 유지하기 위해 필요한 양방향 데이터 미러링에 대…
얼마 전 저희 리멤버 의 DB서버 이전이 있었습니다. 기존엔 AWS RDS에서 MySQL을 사용하고 있었으나 AuroraDB로 서버 이전을 하였고, 손쉽게(?) 작업을 마무리 할 수 있었습니다. 이전을 할 때 데이터 소실없이 이전 하는 것이 첫 번째로 중요했고, 두 번째로 중요했던 건…
요약: 카카오페이 정보플랫폼팀이 다양한 데이터를 조합하고 처리하기 위해 Spring Cloud Stream을 활용한 경험을 공유합니다. Spring Cloud Stream의 구조적 이점과 실제 구현 사례를 통해 활용 방안을 구체적으로 전달하고자 합니다. 💡 리뷰어 한줄평 bri.ghte…
실시간 반응형 추천 개발 일지 2부: 벡터 검색, 그리고 숨겨진 요구사항과 기술 도입 의사 결정을 다루는 방법 "실시간 반응형 추천 개발 일지 1부: 프로젝트 소개" 편을 읽고 2편을 기다려주신 여러분, 반갑습니다. (아직 안 읽으셨다면 읽고 오셔도 됩니다. 여기서 기다리고 있을 테니까…
[원문보기] Executive Summary - 2025년 DX(디지털 전환)는 기술 도입 중심 → 비즈니스 성과 중심으로 전환 - CIO는 AI 도입 확대보다 인재 육성, 데이터 거버넌스, 교육 강화에 더 집중 필요 - 핵심 변화 3가지 - AI 에이전트 기반 업무 혁신 가속 - 글로…
이번 토스 피플에서는 UX Engineering Team Leader 조유성님의 이야기를 들어봤어요. 유성님은 토스에 Full Stack Engineer로 입사했지만, Frontend Engineer로 직무 전환을 한 다음, 지금은 토스의 디자인 시스템을 개발하는 UX Engineeri…
Kubernetes Job과 커스텀 컨트롤러를 활용한 배치 처리 경험기 - 등록일 - 2025.01.10 - | - 코멘트 - 8137 배치 작업을 VM 서버에서 실행해 동시 실행에 어려움을 겪은 적이 있나요? 이 글에서는 Kubernetes Job을 활용해, 기존에는 VM 서버에서 실…
카프카 컨슈머에 동적 쓰로틀링 적용하기 이 글은 카프카(Kafka)를 사용하는 스프링 환경에서 메시지 처리 속도를 동적으로 조절해야하는 상황과 여러 쓰로틀링 기법들을 소개합니다. 카프카를 사용하는 스프링 프레임워크 환경에 익숙하고, 카프카의 기본 개념 및 컨슈머와 컨슈머 그룹, 파티션…
안녕하세요! 당근 알림 경험팀에서 백엔드 엔지니어로 일하고 있는 데이(Daey)라고 해요. 알림 경험팀은 일반적인 플랫폼 조직이 아닌, 모든 유저의 알림 경험을 고민하는 서비스 조직이기도 해요. 알림 기능을 개발하다 보면 아래와 같은 말을 자주 듣곤 하는데요. “알림은 그냥 보내달라는…
요약: 이 글은 Java와 Kotlin 환경에서 SLF4J를 활용한 로깅 방식을 비교하며, 불필요한 문자열 연산 문제를 다룹니다. Parameterized Logging과 kotlin-logging을 활용한 대안을 제시하며, 성능과 가독성을 모두 고려한 최적의 로깅 방법을 탐구합니다.…
안녕하세요. 토스증권 Realtime Data Team 강병수 입니다. 토스증권은 데이터센터 장애 상황에도 유저에게 정상적으로 서비스를 제공하기 위해 대부분의 시스템을 이중화했습니다. Kafka 이중화에 대해서는 2023년 6월 토스 개발자 컨퍼런스 SLASH23에서 한 차례 발표한 바…
이젠 보내줄 때가 되었다. 대규모 트래픽의 C++ 시스템 Java로 전환하기 사용자의 배달 주소를 기반으로 어느 행정동/법정동에 속해 있는지를 판단하기 위해 기존에는 C++로 작성된 웹 서버를 사용하였습니다. 서버 한 대당 피크 시간 기준 2000TPS를 상회하는 많은 요청을 10ms…
요약: 코틀린 코루틴을 사용할 때, 특정 코루틴에서 발생한 예외가 전체 코루틴 계층에 전파되어 시스템이 불안정해질 수 있습니다. 이 글에서는 구조화된 동시성 원칙을 바탕으로 코루틴 예외 전파와 취소의 동작 원리를 설명하고, 안전하게 예외를 처리할 수 있는 다양한 방법을 소개합니다. 💡…
들어가며 LINE Plus의 MPR(Mobile Productive & Research) 팀은 LINE 클라이언트 앱의 빌드 개선과 CI 파이프라인 관리, 자동화 지원 등의 업무를 담당하고 있습니다. 이번 글에서는 저희 팀에서 운영하는 CI/CD에 발생했던 흔하지 않은 이슈와 그 해결…
요즘 QA 직무에서 자동화 테스트에 관한 관심이 뜨겁습니다. 그래서 그런지 많이 듣는 질문 중 하나가 "올리브영은 자동화 테스트를 어떻게 하고 있나요?" 였습니다. 그래서 드디어 가져왔습니다!! 올리브영에서 진행되고 있는 자동화 테스트 그중의 일부를 소개하고자 합니다. 테스트하다 보면…
23년 7월부터 자비스앤빌런즈 인프라팀은 Terraform을 이용한 IaC(Infrastructure as Code) 전환을 시작했습니다. Terraform은 Hashicorp Configuration Language(HCL)로 인프라를 효율적으로 빌드, 변경 및 버전 관리할 수 있는…
안녕하세요, 결제서비스개발팀에서 서버 개발을 담당하고 있는 Jayden, Lani입니다. 저희는 2024년 연초부터 하나의 큰 덩어리였던 카카오뱅크 오픈뱅킹 시스템에서 ‘카드 청구금액 알림 서비스’와 관련된 API 및 배치 작업들을 별도의 시스템으로 분리하는 작업을 계획했고, 2024년…
딜리버리 프로덕트 개발팀의 개발문화 - 로그 & 알람편 딜리버리 프로덕트 개발팀에서 안정적인 서비스 제공을 위한 고군분투기 인사! 안녕하세요 컬리 새벽배송의 핵심!! 딜리버리 프로덕트에서 열쒸미 프로덕트를 만들고 있는 김태훈입니다. 새벽배송, 컬리나우, 택배 등 라스트마일의 모든 것을…
안녕하세요. 저는 로컬 비즈니스실에서 서버 개발자로 일하고 있는 에렌(Eren)이라고 해요. 당근을 사용해 본 적 있으신가요? 당근의 동네지도 탭에 들어가면 ‘음식점’, ‘카페/간식’ 등 카테고리별로 동네 업체를 모아볼 수 있는데요. 여기서 각 업체의 정보를 담고 있는 ‘비즈 프로필’을…
온라인 커머스의 가장 중요한 요소 중 하나는 단연 주문결제 시스템이라고 생각합니다. 고객이 원하는 상품을 선택하고 결제까지의 과정이 원활하고 빠르게 이루어질 때, 고객들이 느끼는 만족도가 높아지기 때문입니다. 올리브영에서는 이 주문결제 프로세스를 최적화하고, 편리하고 안전하게 쇼핑을 즐…
들어가며 안녕하세요. 컬리 핀테크개발팀 이경훈입니다. 2024년 컬리에 합류하여 지류 상품권 프로젝트, AML 프로젝트를 거치며 여러 종류의 배치 애플리케이션을 개발했습니다. spring-batch를 이용해 배치 애플리케이션을 개발한 경험은 처음이라 시행착오를 겪으며 재미있게 만들었습니…
MySqlPagingQueryProvider 살펴보기 JdbcPagingItemReader와 MySqlPagingQueryProvider를 사용할 때 주의사항 - 들어가며 - spring-batch 의 기본 구조와 Chunk 단위 처리 - 첫 번째 이슈 : MySqlPagingQuery…
지난 2편에서는 가상 스레드(virtual thread)의 컨텍스트 스위칭(context switching)이 구체적으로 어떤 과정으로 진행되는지 알아봤습니다. 마지막 3편에서는 가상 스레드의 중요한 이슈인 고정(pinned) 이슈와 함께 가상 스레드의 한계에 대해서 알아보겠습니다. 3…
요약: 카카오페이는 FDS(Fraud Detection System)에 지속 성장하는 ML 모델을 도입하여 빠르게 변화하는 사고 패턴에 효과적으로 대응하고 있습니다. 끊임없이 발생하는 새로운 유형의 사고에 신속하게 대응하기 위해, ML 모델을 지속적으로 학습하고, 데이터 변화에 스스로…
안녕하세요! 뱅크샐러드의 Server Engineer 조성민입니다. 이번 글에서는 제 팀인 금융쇼핑 PA가 100여개 에 이르는 금융 기관들을 연동하면서 겪은 문제들과 해결책을 공유해보려고 해요. 중심적으로 다뤄볼 기능은 대출비교 라는 서비스예요. 사용자가 대출비교를 요청하면, 저희는…
Dec 26, 2024 Engineering Developing KIMCHI: An AI Image Generation Model Reflecting Korean Culture - Yonggeun Kwon Research Intern Dec 26, 2024 Engineering Deve…
Dec 26, 2024 Engineering Developing KIMCHI: An AI Image Generation Model Reflecting Korean Culture - Yonggeun Kwon Research Intern Dec 26, 2024 Engineering Deve…
2024 선물카드 제목 짓기 대회가 탄생하기까지: 운영, PM, 개발 이야기 배민선물하기에서는 생일과 같은 일반적인 상황뿐만 아니라 집들이나 이직 같은 다양한 축하 상황, 출산이나 입원 등 몸보신에 어울리는 상황까지 모두 아우를 수 있도록 1천 개 이상의 카드를 제공하고 있습니다. 이…
안녕하세요, 카카오페이손해보험 백엔드 엔지니어 루카스예요! 지금 읽고 계신 글은 if(kakaoAI)2024에서 공유한 내용입니다. 그러면서도 우리가 이 비즈니스를 시작하면서 추구했던 방향에 대한 이야기이기도 해요. if kakao 세션 주제에 대한 고민이 있었어요. ‘기술적으로 깊게…
안녕하세요. 회원 스쿼드 백엔드 개발자 뮤즈입니다!🙌🏻 서비스에서 고객과 브랜드의 관계를 가장 잘 보여주는 것이 무엇일까요? 저는 멤버쉽 서비스라고 생각합니다. 멤버쉽 서비스는 단순히 포인트 적립이나 할인 혜택을 제공하는 것을 넘어, 고객과 브랜드 사이의 신뢰를 구축하고, 고객 충성도를…
들어가며 지난 1편에서는 가상 스레드(virtual thread)의 장점을 살펴보고 가상 스레드를 어떻게 생성하고 시작하는지 알아봤습니다. 이어서 이번 글에서는 컨텍스트 스위칭(context switching)의 작동 방식을 살펴보려고 합니다. 1편에서 살펴본 VirtualThread…
안녕하세요. 저는 당근페이 머니서비스팀 백엔드 엔지니어 클로버(Clover)에요! 당근페이에서는 동네에서 쉽고 편하게 쓸 수 있는 금융 서비스를 만들고 있어요. 당근에서 일어나는 거래에는 당근머니가 사용되는데요. 머니서비스팀에서는 당근머니와 관련된 일들에 더해, 동네에서 쓰면 다양한 혜…
CloudFront에 대해 흔히 가지고 있는 두 가지 오해가 있습니다: 2. 캐싱이 CloudFront의 주요 목적? 원티드 서비스 전반에 Cloudfront 적용하고 있습니다. 동적웹페이지, API 같은 동적 콘텐츠에도 사용하고 있습니다. 캐싱을 사용하지 않지만, 유의미한 성능/비용…
안녕하세요. 카카오페이손해보험 플랫폼기술팀의 달리오입니다. 이번 주제는 제가 if(kakaoAI)2024에서도 공유했던 내용인데요. 발표 시간 제약 때문에 미처 전달하지 못했던 기술적인 내용을 좀 더 깊게 공유해 보고자 이번 글을 작성합니다. 🔗 발표 영상 보러 가기: 문서 검토는 이제…
안녕하세요, 카카오뱅크 투자개발팀에서 펀드시스템 개발과 운영을 담당하는 Sean입니다. 이번 글에서는 2024년 1월 오픈한 펀드 시스템에서 중요한 역할을 담당하고 있는 ‘펀드 배치 시스템’에 대해서 설명드리고자 합니다. 카카오뱅크 펀드 배치 시스템은 Airflow라는 오픈소스로 만들어…
우아한히트텍: 직군을 넘어, 개발자를 하나로 잇다 들어가며 우아한형제들 TX(Tech eXperience)팀은 개발자 경험을 중심으로 교육과 성장을 지원하는 팀입니다. ‘개발조직의 전문성 강화를 통해 조직 생산성 및 국내외 시장 경쟁력을 확보한다.’는 미션을 기반으로 개발 리더십/기술…
들어가며 링크 복사 안녕하세요. 렌터카개발파트에서 서버 개발을 담당하고 있는 해리입니다. 저희 파트는 '일단기렌터카'(최단 하루부터 최장 30일까지 대여 가능)와 '카셰어링'(분 단위로 이용 가능) 두 가지 서비스의 서버 개발을 맡고 있습니다. 이번 포스팅에서는 '카셰어링' 서비스를 설…
하나의 레포에서 여러 컴포넌트 배포, 어떻게 더 잘할 수 있을까? Changkyu Kim — 김창규 @glenn-kim 안녕하세요. 데이터 파이프라인 팀에서 광고 데이터 처리를 담당하는 김창규입니다. 우리 팀에서는 목적에 따라 여러 컴포넌트를 유지보수하고 있는데, 가능한 언어별로 하나의…
요약: 이 글은 카카오페이에서 코드 가독성과 효율성을 높이기 위해 MVVM 아키텍처를 적용한 사례를 소개합니다. 기존의 RIBs 및 TCA 아키텍처에서 커스텀 MVVM 방식으로 전환한 과정을 설명하며, 비즈니스 로직 구현 방법을 자세히 다룹니다. 유연한 설계와 높은 생산성을 목표로 유지…
안녕하세요. 스튜디오 킹덤에서 쿠키런: 킹덤의 서버 개발자로 재직하고 있는 전윤재입니다. 이번 글에서는 스칼라로 개발된 쿠키런: 킹덤 서버의 빌드 속도를 개선하기 위해 수행했던 과정과 결과를 소개해 드리려 합니다. #도입부 스칼라는 정교한 타입 시스템, 매크로, implicit과 같은…
안녕하세요, 생소하시겠지만 올리브영 내 디플롯 서비스 개발팀 에서 프론트엔드 개발을 담당하고 있는 노땅 문지훈🦊 입니다 디플롯 서비스 개발팀 프론트엔드 개발자로서 디자인 담당자와 함께 고객에게 더 나은 서비스를 위해 유기적인 협업을 진행하면서 해결책 또는 방향성을 찾기 위해 노력하고 있…
WOOWACON 2024 발표 영상, 지금 바로 만나 보세요! 지난 10월 30일 많은 분들이 함께한 우아한형제들의 기술 콘퍼런스, WOOWACON 2024 발표 영상이 공개되었습니다.✨ 오프닝노트를 비롯해 백엔드, AI/ML, 프런트엔드, 로봇, PM, 디자인, 문화/성장, 이그나이트…
2024 프론트엔드 뉴스 한 방에 몰아 보기 안녕하세요. NHN Cloud NCUI개발팀 이진우입니다. 저는 올해 2월부터 매주 프론트엔드 관련 다양한 뉴스레터를 읽고, FE 개발 직무 동료들에게 흥미로운 뉴스, 읽을거리, 유용한 도구 등을 공유해 왔습니다. 어느덧 연말이 가까워지며 쌓…
안녕하세요, 카카오스타일 지그재그 서비스 FE팀의 제이슨입니다. 2023년 초, 저희 팀은 비즈니스와 더불어 기술적인 개선이 필요하다는 것을 느꼈습니다. 그중에서도 특히 여러 지면에서 독립적으로 관리되고 있던 상품 카드 컴포넌트의 일원화 작업이 중요하게 여겨졌고. 이 문제를 해결하기 위…
postgres_fdw로 마이그레이션 생산성 높이기 배달의민족 커머스 서비스들의 ‘상품’ 도메인 시스템 통합 프로젝트를 하며 postgres_fdw를 이용해 PostgreSQL DB 간의 별도 배치 애플리케이션 없이 마이그레이션을 경험했던 실제 사례 및 결과와 주의사항, 느낀 점들을 공…
실시간 메시징 시스템 개발 시리즈 - Part 1. 실시간 메시징 시스템 개발 - “삽질 과정” - 실시간 메시징 시스템 구축 과정에서 직면한 기술적 과제들과 해결 과정을 공유합니다. - Part 2. 실시간 메시징 시스템 개발 - “성능 테스트 설계와 분석” - 대규모 트래픽 처리를…
실시간 메시징 시스템 개발 시리즈 - Part 1. 실시간 메시징 시스템 개발 - “삽질 과정” - 실시간 메시징 시스템 구축 과정에서 직면한 기술적 과제들과 해결 과정을 공유합니다. - 👉 Part 2. 실시간 메시징 시스템 개발 - “성능 테스트 설계와 분석” - 대규모 트래픽 처리…
실시간 메시징 시스템 개발 시리즈 - 👉 Part 1. 실시간 메시징 시스템 개발 - “삽질 과정” - 실시간 메시징 시스템 구축 과정에서 직면한 기술적 과제들과 해결 과정을 공유합니다. - Part 2. 실시간 메시징 시스템 개발 - “성능 테스트 설계와 분석” - 대규모 트래픽 처리…
요약: 이 글은 성능 테스트 존 도입 사례와 주요 기능을 다룹니다. 홈화면, 관리콘솔, 모니터링 대시보드 등을 이용하여 테스트 상태를 실시간으로 확인하고, 성능 병목을 효율적으로 파악할 수 있습니다. 이 과정에서 개발 및 운영 환경에서의 성능 최적화 가능성을 탐구하며, 성능 테스트의 중…
안녕하세요.️ 쿠폰증정스쿼드에서 백엔드 개발 담당하는 어푸입니다! 지난 글에서는 Redis Pub/Sub을 활용한 쿠폰 발급 비동기 처리로 개선된 쿠폰 발급 프로세스를 소개해 드렸는데요. 이번에는 올리브영에서 증정 행사를 어떻게 운영하고 있는지 소개해 보려고 합니다. 아래 목차대로 잘…
PM, 디자이너, 개발자가 함께한 배달의민족 입점 과정 개선기 01. 들어가며 안녕하세요! 세일즈서비스팀은 ‘사장님이 고민하지 않고 신속하게 배달의민족에서 장사할 수 있는 서비스를 제공한다.’는 비전을 바탕으로 배달의민족의 입점할 수 있는 두 가지 방법인 전자계약서와 온라인 입점신청을…
요약: 카카오페이 서버 개발자 엘모는 if(kakaoAI)2024에서 지연이체 서비스를 Kafka 기반으로 재설계한 경험을 발표하고, 이를 기술 블로그에 정리했습니다. RabbitMQ에서 Kafka로의 전환 과정에서 아키텍처 설계, 중복 방지, 성능 최적화 등의 문제를 해결하며 처리 속…