본문 바로가기

전체 글1104

[객체지향 시스템 디자인 원칙] 내 생각 Q&A - 1장. 모든 게 복잡도 관리다 목차 이 글은 ['객체지향 시스템 디자인 원칙'을 읽으며 정리한 내 생각 - LLM과의 Q&A 기반 사고 확장] 글을 챕터별로 나눈 시리즈 중 하나 입니다. 전체 흐름을 보고 싶거나, 다른 챕터를 확인하고 싶으시다면 위 통합글을 참고해주세요. 이 글은 책 내용을 요약하거나 정리한 글이 아닙니다. 책을 읽고 난 뒤 제 생각을 중심으로 정리한 글 입니다. '객체지향 시스템 디자인 원칙'을 읽으며, 느낀점이나 좋았던 점 및 책에 제시된 연습문제를 LLM에게 알려줬습니다. 이를 바탕으로 제 생각을 기반으로 책의 연습문제를 변형하거나, 새로운 질문을 생성하게 했습니다. 그 후 제가 그 질문에 답하고, LLM과 토론하는 방식을 사용해 사고를 확장해봤습니다. 이 글은 그 질문과 답변을 모아둔 글 입니다. 자세.. 2025. 7. 16.
[Study 020] 가상 면접 사례로 배우는 대규모 시스템 설계 기초 스터디 주제 가상 면접 사례로 배우는 대규모 시스템 설계 기초 (알렉스 쉬 저)오랜만의 스터디라 기대된다. '개발자 기술블로그 성장 공유방' 단톡방에서 두 분의 대화로 시작된 스터디이다. 일정 (진행중)~2025-07-211장 사용자 수에 따른 규모 확장성2장 개략적인규모추정3장 시스템 설계 면접 공략법4장 처리율제한장치의설계 ~2025-07-285장 안정해시설계6장 키-값저장소설계7장 분산시스템을위한유일 ID 생성기설계8장 URL 단축기설계 ~2025-08-049장 웹크롤러설계10장알림시스템설계11장뉴스피드시스템설계12장채팅시스템설계 ~2025-08-1113장검색어자동완성시스템14장유튜브설계15장구글드라이브설계16장배움은계속된다 2025. 7. 14.
읽은 책 소감 - 객체지향 시스템 디자인 원칙 (마우리시오 아니체 저) ‘이펙티브 소프트웨어 테스팅’의 저자 ‘마우리시오 아니체’의 신간 ‘객체지향 시스템 디자인 원칙’ (2025-06-25 출판)을 읽어봤다. 책을 한 문장으로 정리해보자면 다음과 같다.“결합도를 낮추고 추상화하는 법 알려줄께!” 영어 원제는 ‘Simple Object Oriented Design’ 인데, 한국어로 번역하면서 ‘객체지향 시스템 디자인 원칙’이라는 다소 거창한 제목이 붙었다. 개인적으로 원제가 더 이 책의 성격을 잘 드러낸다고 느꼈다. 기본적으로 클린 아키텍처, DDD에 대한 지식이 있어야 수월하게 읽을 수 있는 책이다. 애그리거트 루트 등의 관련 용어가 별다른 설명 없이 자주 나온다. 또한 좀 더 공통화해서 설명하느라 배경지식이 없으면 뭘 말하는지 알기 힘들 수 있어 보인다. 즉,.. 2025. 7. 13.
선택도가 높은게 좋을까? DB 인덱스 설계 시 '선택도'가 헷갈리는 이유 목차 서론 최근 작성했던 '주니어 백엔드 개발자가 반드시 알아야 할 실무 지식'을 읽고 떠오른 내 생각들 글을 다시 읽어보고 있었다. 내가 작성한 내용 중 다음과 같은 내용이 있다.보통 DB에서 인덱스 걸 때, 선택도가 높은 칼럼을 선택하라고 한다. 예를들어서 ‘성별’ 칼럼에 인덱스를 거는건 딱히 의미 없다. 책에서는 실무적으론 도움이 되는 경우도 있다고 얘기해줘서 좋았다. 예를들어 status 같은게 있고, ‘대기중’, ‘처리중’, ‘완료’ 이런 상태값을 가지는 경우 ‘완료’가 대부분이니 이론적으론 선택도가 낮아도 완료가 아닌 상태를 뽑는데는 인덱스 걸기 좋다는 얘기였다. 근데 이 ‘선택도 (selectivity)’ 라는 단어가 뭔가 어색하고 생소하다고 느껴졌다. 그래서 따로 정리도 해둘겸 나만.. 2025. 7. 7.
[잡글] 만년필 친한 친구가 석사를 졸업하고 취준끝에 AI researcher가 됐다.일반 개발기업 갔어도 물론 축하했겠지만, 연구원으로 들어갔고 심지어 내 대학교때 꿈과 같은 곳에 들어갔다.당시 나도 연구보고서 제출하러 가봤었는데, 그 때 담당자분과 밥먹으면서 "학사는 물론이고 석사 조차도 인턴으로 잘 안쓴다"고 말했던게 기억난다. 친구 대단해.. 그래서 뭔가 선물해주고 싶었는데 만년필이 생각났다. 물론 펜과 가장 안어울리는 AI 연구원이지만 그래도 만년필은 뭔가 시대를 거슬러 '지식'에 대한 상징성을 나타내므로 적절하다고 생각했다. 연구원이니 서명같은건 할테니 서명할 때 멋있으라는 의미도 있었다. 아무튼 이 글은 선물줬다고 쓴 글은 아니고, 문제는 나도 선물준거랑 같은걸로 질렀다는 부분이다 ㅋㅋ선물줄 때 써봤.. 2025. 7. 5.
LLM과 개발 책을 읽으며 든 내 생각 - 개발자식 하브루타 독서 목차 서론 하브루타란 친구와 함께 질문과 토론을 통해 사고를 확장하는 방식의 독서법이다. 이번엔 개발 관련 서적을 읽으며 질문과 토론을 통해 사고를 확장하는 친구로 LLM(ChatGPT 4o)을 선택해봤다. 방식은 다음과 같았다. 1. 한 챕터를 읽기전에 LLM에게 해당 챕터의 목차를 주고, 개발 관련 질문을 해달라고 했다.2. 한 챕터를 읽은 후 해당 챕터에 대한 내 생각을 말하고, 처음 받은 질문에 대해 답변을 LLM에게 한다.3. 마지막으로 내 답변에 대한 평가를 부탁하고, 더 깊게 얘기해볼만한 주제는 별도로 토론했다. “’주니어 백엔드 개발자가 반드시 알아야 할 실무 지식'을 읽고 떠오른 내 생각들” 글에서는 책을 읽고 내 생각을 그대로 적어봤었다. 이번에 읽은 ‘육각형 개발자’는 사실 목.. 2025. 7. 4.
내가 사내 기술 공유를 어렵게 만든게 아닐까? 최근 올라온 향로님의 '개발자 되기 좋은 성향' 글을 봤다. 전반적인 내용도 좋았지만, 내가 가장 꽂힌 문장은 아래와 같다.…. '이 정도 내용을 가지고 전사 발표를 해?' 와 같은 분위기에 그 누구도 기술 공유를 하고 싶어하지 않았다. …. 글의 해당 문단을 정리하면 “모두가 지식이 많아지고 기준치가 너무 높아지면 오히려 ‘이미 다 아는 내용을 굳이?’ 느낌으로 기술 공유가 역설적으로 사라질 수 있다”는 내용이다. 물론 내가 지식이 많다는 얘긴 아니다. 다만 모두가 공부를 열심히 하면 무조건 이득이라 생각했는데, 저런 식으로 생각할 수 있다는 점이 신선했다. 그리고 나도 어렴풋이 느끼고 있던 점이었는데, 블로그에 글을 쓸 때나 세미나를 할 때 ‘이건 어차피 다 아는거 같은데 굳이?’, ‘이 정도 내.. 2025. 7. 2.
[잡글] 결국 가게된 스프링캠프 2025 최초 참가 신청했을 땐 탈락했었다. (500명가량 중 450명 뽑은거니 10% 확률로 탈락했다 ㅠ) 그러다가 6월 26일에 취소표가 생겼는지 몇자리가 나와서 결국 갈 수 있었다. 사정상 중간에 나와서 강의에 대한 리뷰는 나중에 영상 올라오면 생각해봐야겠다. 굿즈 얘기라도 해보면 다음과 같다. aws 2종류는, aws 관련 이벤트 참여하면 받을 수 있다. 파우치랑 양말, 키링중에 선택이다. 나머지는 스프링캠프 2025 굿즈다. 제일 맘에 드는건 역시 키캡인데, 무려 누르면 불빛이 나온다! 2025. 6. 28.
[잡글] 스프링캠프 2025 - 탈락(X), 10%합격(O) 스프링캠프 2025 450명 추첨에서, 종료전에 마지막으로 본게 500명 좀 넘겼던 것 같다.당첨 확률 90%라서 이건 당첨하겠네 생각하고 있었더니 ㅠㅠ 행복회로 ON해서 탈락이 아니라 10% 합격! 특히 딴거보다 최애 저자인 조영호님을 못뵙게되어 아쉽다.작년에 뵜을땐 오브젝트책에 사인 받아서, 이번엔 기회 있으면 객사오책에 받고싶었는데!! 2025. 6. 17.
읽은 책 소감 - 육각형 개발자 얼마전 최범균님의 '주니어 백엔드 개발자가 반드시 알아야 할 실무 지식' 책을 재밌게 읽었다. 그래서 저자님의 이전책인 '육각형 개발자'도 읽어보게되었다. 육각형 개발자 표지를 보고 바로 생각난건 알고리즘 그래프였다. 사람마다 좋아하는 알고리즘 특색이 드러나는편인데, 내 경우 '기하학'쪽이 확실히 무너져있다 ㅋㅋ. 수학 좋아하는 사람들은 math쪽만 엄청 높아서 화살표모양이기도 하다. 그리고 고티어로 갈수록 확실히 모든 태그에 대해 평탄화되어서 이쁜 8각형을 그리게 된다. 저자분도 이 책에서 너무 구현 기술만 생각하지 말고, 다른 역량도 키워보라고 얘기해주신다. 각 챕터의 제목만 보면 다음과 같다.- 구현 기술과 학습- 소프트웨어 가치와 비용- 코드 이해- 응집도와 결합도- 리펙터링- 테스트- 아.. 2025. 6. 13.