F-Lab
🚀
취업/이직이 고민이신가요? 합격에 필요한 모든 것을 도와드립니다.
🚀
취업/이직이 고민이신가요? 합격에 필요한 모든 것을 도와드립니다.

멘토 Pick! 25년 8월 넷째 주 아티클 모음

writer_thumbnail

F-Lab : 상위 1% 개발자들의 멘토링

안녕하세요 여러분!
이번 주도 카카오 출신 멘토님께서 이번 주에 직접 선정한 아티클을 공유드립니다!

 

멘토's Pick에서 트렌디한 인사이트를 놓치지 마세요! 🚀

 

🤔 들어가기 전에 알아두면 좋습니다!

  • 대부분 아티클은 영문으로 제공됩니다. 영문 글을 읽을 때 크롬 번역 플러그인을 쓰면 읽기가 불편하나, 크롬 플러그인 하나를 설치하면 한국어를 읽듯이 좀 더 쉽게 영어 아티클을 읽을 수 있습니다. Trancy Chrome 플러그인을 설치 후 더 쉽게 읽을 수 있습니다.
  • 아티클을 읽고 어떤 점을 더 고민해 보고, 생각해 보면 좋을지 제시해 주시는 멘토님의 Comment도 잘 활용해 보시면 좋습니다!

 

💡 Why the heck Single-Threaded Redis is Lightning fast? Beyond In-Memory Database Label

  • Redis가 싱글 스레드 기반인데도 왜 그렇게 빠른지 설명합니다.

👉 아티클 전문 보러가기 

💌 멘토님의 Comment
: Redis의 성능은 구조적인 단순함에서 나옵니다. 메모리에 올려 두고 이벤트 루프로 요청을 처리하기 때문에 락 경합도 없고, 스레드 전환 비용도 없습니다. 그래서 캐시, 세션, 카운터처럼 짧게 끝나는 작업을 아주 빠르게수행합니다. 하지만 정렬, 집계, 대량 스캔처럼 CPU를 오래 쓰는 명령이 섞이면 전체 처리 흐름이 느려질 수밖에 없습니다.

 

지금 팀에서 Redis는 어떤 역할을 맡고 있나요? 단순 캐시와 세션 저장소 수준에서 머무는지, 아니면 다른 연산까지 얹고 있는지. Redis의 구조적 특성을 알고 쓰는 것과 모르고 쓰는 것은 운영 안정성에서 큰 차이를 만듭니다

 

💡 Everything I know about good system design

  • 좋은 시스템 설계를 만들기위한 다양한 방법을 소개합니다.

👉 아티클 전문 보러가기

💌 멘토님의 Comment
: 시스템 디자인을 처음 접하면 분산 합의, CQRS, 이벤트 소싱 같은 화려한 패턴들에 눈이 가기 쉽습니다. 하지만 실제로 잘 동작하는 시스템은 대부분 단순하게 설계되어있으며, 필요할 때 하나씩 컴포넌트를 추가하며 복잡도가 올라가며 진화한 시스템들이 많습니다.

 

시스템설계를 할 때 많은 기술을 적용하면 어떤 부분이 좋을까요? 개발자는 멋진 기술스택으로 시스템을 만드는 사람이 아닌 비즈니스에 맞는, 요구사항에 맞는 시스템을 개발하는 사람이기 때문에 오버엔지니어링을 경계해야 합니다. 이런 관점에서 어떤 부분에서 주의하며 복잡도를 올리지 않을지, 경계할지 소개하는 글을 읽고 인사이트를 얻어가셨으면 좋겠습니다.

 

💡Optional은 정말로 필요한가? (feat. JSpecify)

  • Java의 Optional이 원래 스트림 API의 메서드 체이닝을 위해 제한적으로 도입되었지만, 실제로는 Maybe 타입처럼 널 체크 용도로 남용되고 있다는 문제를 지적합니다.

👉 아티클 전문 보러가기

💌 멘토님의 Comment
:  Optional에 대한 논란은 Java 커뮤니티에서 오래된 주제입니다. Optional은 스트림 API에서 findFirst()나 findAny() 같은 메서드의 반환값을 표현하기 위한 제한적 용도로 만들어졌는데, 많은 개발자들이 이를 일반적인 null 처리 도구로 확대 사용하면서 문제가 생겼습니다. 특히 isPresent()로 체크하는 코드는 Optional의 취지를 완전히 무시하는 안티패턴입니다. 이럴 거면 그냥 null 체크하는 게 더 명확하죠. 필드나 메서드 파라미터에 Optional을 쓰는 것도 마찬가지입니다. Optional 자체가 null일 수 있다는 모순적인 상황을 만들어냅니다.

 

지금 팀에서 Optional을 어떤 용도로 사용하고 있나요? 메서드 체이닝을 위한 제한적 용도인지, 아니면 일반적인 null 처리 도구로 쓰고 있는지 점검해보고, JSpecify 도입을 검토해보는 것도 좋겠습니다.

 

 

ⓒ F-Lab & Company

이 컨텐츠는 F-Lab의 고유 자산으로 상업적인 목적의 복사 및 배포를 금합니다.

조회수

지금 진행중인 멘토링 코스

궁금한 포지션을 알아보세요

  • 코스 이미지자바 백엔드 + AI

    아키텍처 설계와 대용량 트래픽 처리 능력을 깊이있게 기르는 개발자 성장 과정

    • 1:1 멘토링
    • 3~4개월
    • 연장 가능
  • 코스 이미지노드 백엔드 + AI

    아키텍처 설계와 대용량 트래픽 처리 능력을 깊이있게 기르는 개발자 성장 과정

    • 1:1 멘토링
    • 3~4개월
    • 연장 가능
  • 코스 이미지파이썬 백엔드 + AI

    파이썬과 백엔드 분야를 깊게 파면서 대규모 서비스를 튜닝하는 개발자로 성장

    • 1:1 멘토링
    • 3~4개월
    • 연장 가능
  • 코스 이미지MSA 백엔드 + AI

    MSA를 겉핥기로 사용만 해보는 것이 아니라 깊게 이해하고 활용할 수 있는 개발자로 성장

    • 1:1 멘토링
    • 3~4개월
    • 연장 가능
  • 코스 이미지프론트엔드 + AI

    언어와 프레임워크, 브라우저에 대해 탄탄한 이해도를 깊이있게 기르는 성장 과정

    • 1:1 멘토링
    • 3~4개월
    • 연장 가능
  • 코스 이미지안드로이드 + AI

    아키텍처 설계 능력과 성능에 대한 경험을 갖추기 위해 깊이있게 학습하는 성장 과정

    • 1:1 멘토링
    • 3~4개월
    • 연장 가능
  • 코스 이미지iOS + AI

    언어와 프레임워크, 모바일 환경 자체에 대한 탄탄한 이해도를 갖춘 개발자로 성장

    • 1:1 멘토링
    • 3~4개월
    • 연장 가능
  • 코스 이미지플러터 + AI

    의존성 관리와 네이티브 레벨까지의 깊이 있는 지식을 학습하는 과정

    • 1:1 멘토링
    • 3~4개월
    • 연장 가능
  • 코스 이미지리액트 네이티브 + AI

    의존성 관리와 네이티브 레벨까지의 깊이 있는 지식을 학습하는 과정

    • 1:1 멘토링
    • 3~4개월
    • 연장 가능
  • 코스 이미지데브옵스

    단순 시스템 관리자가 아닌, 대규모 환경에서 인프라를 운영할 수 있는 엔지니어로 성장

    • 1:1 멘토링
    • 3~4개월
    • 연장 가능
  • 코스 이미지데이터 엔지니어 + AI

    대규모 데이터를 다룰 수 있는 고급 데이터 엔지니어로 성장하는 과정

    • 1:1 멘토링
    • 3~4개월
    • 연장 가능
  • 코스 이미지머신러닝 엔지니어

    ML 모델을 개발하고, 대규모 환경에서 서빙할 수 있는 고급 ML엔지니어로 성장

    • 1:1 멘토링
    • 3~4개월
    • 연장 가능
  • 코스 이미지게임서버

    고성능 게임 서버를 구축할 수 있는 개발자로 성장할 수 있는 코스

    • 1:1 멘토링
    • 3~4개월
    • 연장 가능
  • 코스 이미지게임 클라이언트

    대규모 고성능 게임을 만들어낼 수 있는 고급 C++ 게임 엔지니어로 성장하는 과정

    • 1:1 멘토링
    • 3~4개월
    • 연장 가능
  • 코스 이미지해외취업

    막연한 해외 취업의 꿈을 해외 재직 중인 빅테크 출신 개발자와 현실로 만드는 과정

    • 1:1 멘토링
    • 3~4개월
    • 연장 가능
F-Lab
소개채용멘토 지원
facebook
linkedIn
youtube
instagram
logo
(주)에프랩앤컴퍼니 | 사업자등록번호 : 534-85-01979 | 대표자명 : 박중수 | 전화번호 : 1600-8776 | 제휴 문의 : info@f-lab.kr | 주소 : 서울특별시 종로구 돈화문로88-1, 3층 301호 | copyright © F-Lab & Company 2025