brunch

You can make anything
by writing

C.S.Lewis

by 일일일 Jun 03. 2024

[5월 5주차]개발자들이 많이 읽은 10개 아티클

일일일에서 한 주간 개발자들이 많이 읽은 상위 10개의 아티클들을 소개합니다.


✅ 일일일, IT 제품 팀을 위한 감도 높은 정보 큐레이션

>> 오늘의 브리핑 서비스 더보기 (30일 무료 체험 이벤트 진행중)
>> 개발 추천 콘텐츠 공유방 (대화X, 참여코드:oneone1)


 일일일, 제품 팀을 위한 프리미엄 채용 서비스

>> 인재풀 등록하기 (PC에서만 가능)
>> 인재풀 열람하기 (채용 담당자라면)


01. 적정 엔지니어링으로 검색 속도 10x 빠르게 만들기

✔ 데이터가 쌓이며 검색 성능이 저하되자 SQL 쿼리 문제를 해결해야 했습니다.
✔ 검색용 테이블을 생성하여 인덱스를 구성하였습니다.
✔ MySQL Trigger를 이용하여 데이터 적재 방법을 개선하였습니다.
✔ 이로 인해 쿼리 결과 소요 시간이 3분에서 2초로 개선되었고, 슬로우 쿼리 알람도 울리지 않게 되었습니다.
https://oneoneone.kr/content/aa054c97


02. 이제부터 이 컴포넌트는 제 겁니다

✔ 리액트 컴포넌트를 IoC 패턴으로 확장하여 컨트롤하는 방법에 대해 알아봅니다.
✔ Render Props 패턴은 컴포넌트의 렌더링 함수를 프로퍼티로 전달하여 유연한 사용을 가능하게 합니다.
✔ 합성 컴포넌트 패턴은 Context/Provider를 사용하여 여러 종류의 컴포넌트가 하나의 로직을 공유할 수 있게 합니다.
✔ 제어 컴포넌트 패턴은 외부에서 상태 값을 컨트롤하는 방법으로, Props Getter 패턴과 State Reducer 패턴을 사용하여 컴포넌트를 유연하게 컨트롤할 수 있습니다.
✔ 다양한 IoC 패턴을 이해하고 적용하는 것이 중요하며, 어떤 패턴이 무조건 좋다고 단언하기는 어렵습니다.
https://oneoneone.kr/content/e58026dd


03. AWS Node Auto Scaler Karpenter 도입기

✔ EKS Blue-Green 업데이트 이후 Karpenter 도입 계기를 설명합니다.
✔ Karpenter는 노드 스케일링을 자동으로 처리하며, 노드 프로비저닝 속도가 빠릅니다.
✔ 다양한 인스턴스 타입을 활용하여 비용 최적화를 이루고, Bin-Packing 전략을 통해 리소스를 효율적으로 활용합니다.
✔ 도입한 결과, 노드 사용 수량이 줄어들고 EC2 비용을 절감하며, 빠른 프로비저닝과 비용 절감효과를 얻었습니다.
✔ 도입한 경험을 통해 안정성이 보장되었으며, 최신 버전을 구축하는 것을 권장합니다.
https://oneoneone.kr/content/24c38a67


04. AWS Lambda를 활용한 짧은 주기 배치 구현

✔ AWS Lambda를 활용한 짧은 주기 배치 구현 방법을 다룹니다.
✔ Lambda SnapStart 기능을 사용하여 Java의 초기 오버헤드를 해결합니다.
✔ Lambda는 비용 절감, 동시성 스케일링, 관리 부담 절감의 장점이 있습니다.
✔ 짧은 주기 배치에 적합한 아키텍처를 구성하여 빠른 응답을 제공합니다.
✔ 배치의 DB Connection Pool 사용에 대한 고민과 해결 방안을 제시합니다.
https://oneoneone.kr/content/cbc6ff42


05. Brandi DA 의 데이터 분석 비망록

✔ 브랜디 데이터 분석가는 RFM 모델을 통해 고객 분석을 진행하였습니다.
✔ RFM 모델은 최근성, 빈도, 금액을 기준으로 고객을 분석합니다.
✔ 고객의 구매 행동과 앱 내 활동 데이터를 함께 분석하여 효율성을 높입니다.
✔ 고객군을 정의하고 VIP 고객 이탈 방지 전략을 수립합니다.
✔ 클러스터링을 통해 셀러와 고객의 관계를 분석하여 고객 유지 방안을 마련합니다.
https://oneoneone.kr/content/7892db49


06. (해외) 정상적인 종료: 중요한 이유 및 구현 방법

✔ 우아한 종료는 시스템, 응용 프로그램 또는 서비스를 완료하고 리소스를 제대로 해제하여 데이터 손실을 최소화하는 방식으로 종료하는 과정입니다.
✔ 서버를 소중히 여기는 전통적인 방식에서 벗어나 '소'로 취급하여 효율적인 오토스케일링과 동적 리소스 관리를 가능케 하는 현대적 인프라 접근 방식과도 일치합니다.
✔ 종료 신호를 처리하고 진행 중인 작업을 추적하며 완료까지 시간을 허용함으로써 서비스 품질을 유지할 수 있습니다.
✔ 우아한 종료는 데이터 손실과 서비스 중단을 방지할 뿐 아니라 지속적인 전달을 보장하여 시스템 신뢰성을 향상시키는 강력한 기술입니다.
https://oneoneone.kr/content/f244e5f2


07. (해외) Pinterest에서 Text-to-SQL을 구축한 방법

✔ Pinterest의 데이터 사용자들을 돕기 위해 Text-to-SQL 기능을 개발하였습니다.
✔ Querybook을 통해 대부분의 데이터 분석이 이루어지며, Text-to-SQL도 이곳에서 구현되었습니다.
✔ 첫 번째 버전은 LLM을 활용한 간단한 Text-to-SQL 솔루션을 포함하고 있었으며, 두 번째 버전에서는 RAG를 통해 테이블 선택을 개선하였습니다.
✔ Text-to-SQL의 향후 발전 방향으로는 NLP 테이블 검색, 메타데이터 향상, 유사성 검색 및 점수 매기기 전략 개선, 쿼리 유효성 검사, 사용자 피드백 수집 등이 있습니다.
https://oneoneone.kr/content/f1a3339d


08. Transpiler, “사용”말고 “활용”하기

✔ 프론트엔드 개발자가 transpiler를 활용하여 로깅 과정을 개선한 사례를 소개합니다.
✔ Transpiler는 코드를 변환하는 도구로, Babel과 SWC가 대표적입니다.
✔ 토스뱅크는 transpiler를 사용하여 클릭 로깅을 자동화하고, 플러그인을 만들어 활용했습니다.
✔ 이를 통해 개발자는 비즈니스 로직에 집중하고, 일관된 로깅 결과를 얻을 수 있게 되었습니다.
✔ 다양한 도구를 창의적으로 활용하여 문제를 예상보다 쉽게 해결할 수 있습니다.
https://oneoneone.kr/content/35a538b8


09. 야, 너두 웹 테스트 자동화 할 수 있어!

✔ 넥슨코리아 인텔리전스랩스에서 웹 테스트 자동화를 소개합니다.
✔ 웹 테스트 자동화 프로젝트의 배경, 목표, 협업 과정, 성과, 과제를 소개합니다.
✔ 프로젝트는 목표를 달성하며 QA와 개발자 간의 협업을 강화했습니다.
✔ 테스트 자동화로 테스트 시간을 단축하고, 불안정한 테스트 문제를 해결했습니다.
https://oneoneone.kr/content/80c0442f


10. 리액트 전역 상태 관리 라이브러리 개발해보기

✔ Context API는 전역 상태 관리에 사용되는데, 사용하기에는 까다로운 점이 많다.
✔ 값이 바뀔 때마다 불필요한 리렌더링이 발생하고, 일부 프로퍼티의 값이 바뀌지 않아도 리렌더링이 일어난다.
✔ 따라서, Context API를 사용할 때는 값이 바뀔 수 있는 object를 사용할 경우 컨텍스트를 쪼개서 사용해야 한다.
✔ 이러한 이유로, 대부분의 프로젝트는 외부 라이브러리인 Recoil이나 Redux, zustand 등을 사용한다.
✔ 전역 상태 관리 라이브러리를 직접 구현하면서 전역 상태를 어디에 어떻게 담고 관리하고, 상태가 바뀔 때 어떻게 리렌더링할지에 대해 고찰하고 구현했다.
https://oneoneone.kr/content/56d33a32


 IT 제품 팀을 위한 오늘의 브리핑

✔ 매일 아침 1,600개 이상의 출처에서 중요한 정보만 정리해서 전달드려요.
✔ 업무를 시작하기 전에 커리어 성장을 위한 새로운 영감과 인사이트를 얻어가세요.

>> 오늘의 브리핑 더 알아보기 (30일 무료 체험 이벤트 진행중)


 인재풀 등록 시 커리어 치트시트 제공

✔ 커리어 치트시트는 이직을 준비하는 인재 분들을 돕기 위해 제작되었습니다.
✔ 다른 곳에서는 쉽게 찾기 힘든 양질의 정보들이 지속적으로 업데이트될 예정입니다.
✔ 인재풀 등록 완료 시 7일 이내에 권한을 추가해 드립니다.

>> 지금 바로 인재풀 등록하기 (PC에서만 가능)


작가의 이전글 [5월 4주차]마케터들이 많이 읽은 10개 아티클
작품 선택
키워드 선택 0 / 3 0
댓글여부
afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari