목록IT Paradigm (28)
잡동사니
메시지 큐 기반 분산 시스템에서 설계하기 (feat. 멱등성Idempotency)안녕하세요. yeTi입니다.현대의 클라우드 네이티브 환경에서는 시스템 간의 통신이 더욱 복잡해지고 있습니다. 특히 마이크로서비스 아키텍처의 도입으로 인해 서비스 간 메시지 교환이 폭발적으로 증가하고 있으며, 이에 따라 메시지 큐를 활용한 비동기 통신의 중요성이 커지고 있습니다.하지만 분산 환경에서의 비동기 통신은 여러 가지 도전 과제를 안고 있습니다. 네트워크 지연, 시스템 장애, 메시지 중복 전송 등 다양한 문제가 발생할 수 있으며, 이러한 상황에서도 시스템의 일관성과 신뢰성을 보장해야 합니다.이러한 문제를 해결하기 위한 핵심 개념 중 하나가 바로 멱등성(Idempotency)입니다. 오늘은 메시지 큐를 활용한 비동기 통신..
안녕하세요. yeTi입니다.오늘은 안영회 대표님께서 포스팅한 내가 아닌 다른 사람은 모델링을 왜 하게 되는가?를 읽고 느낀 점들을 빠르게 기록하고자 합니다.나에게 모델링이란?모델링이라는 것에 잣대가 생긴 때는 조영호님의 객체지향의 사실과 오해 를 읽은 시점이었습니다. 후기 : 객체지향의 사실과 오해 독서 후기 (feat. OOP)책을 읽고 감명깊게 다가왔던 부분은 모델링을 하는 이유는 추상화를 하기 위함이고, 추상화를 하는 이유는 인지 과부하를 줄이기 위해서입니다.인지 과부하는 왜 줄여야 할까요?인간의 인지 능력에는 한계가 있기 때문에 현실의 모든 정보를 생각으로써 한 번에 담을 수 없습니다. 그렇기 때문에 우리는 말이라는 개념에 의미를 담아 추상적으로 정보를 주고 받고 있고, 이러한 활동을 모델링이라는..
안녕하세요. yeTi입니다.오늘은 X(트위터)에서 우연하게 본 트윗에서 깍두기 문화라는 것이 인상깊게 다가와 성장 마인드셋과 연관지어서 생각해봤습니다.저도 어렸을 때 동네 애들과 놀다보면 놀이에 끼기에 부족한 아이들은 깍두기로 역할을 주고 같이 어울렸는데요. 이것이 별거 아닌 것 같지만 요즘에 중요하게 인식하는 협업에 중요한 가치를 전해줄 수 있다는 느낌이 들었습니다.살리고 어울고 얽히는 것들이 깍두기였다는 생각이 듭니다.서론현대 조직에서 성장 마인드셋과 깍두기 문화의 융합은 혁신과 창의성을 촉진하는 중요한 요소라고 생각합니다. 이 글에서는 두 개념의 정의와 중요성, 그리고 이를 조직 내에서 실질적으로 적용하는 방법을 나름의 시각으로 풀어보고자 합니다. 특히 사티아 나델라가 마이크로소프트에서 보여준 변화..
안녕하세요. yeTi입니다.오늘은 유영모 님이 공유해주신 “팁 줄게”라고 하면, 챗GPT 성능이 달라진다고? 를 읽고 마지막으로 제시한 두 가지의 생각한 것이 인상깊게 다가왔습니다.‘스스로 전문가인 걸 모르는 사람(AI)’으로부터 어떻게 전문성을 잘 이끌어 낼까.‘전문가(AI)’에게 내가 가진 문제를 어떻게 잘 설명해서 더 도움을 받을까.두 문장(포기말)을 듣고 질문의 중요성으로 관점이 옮기게 되고, 이어서 얽힘, 시너지라는 개념으로 이어져 팀워크 시너지를 극대화하는 방법에 대해 생각해보았습니다. 결국 팀워크 시너지의 시작은 상대의 잠재적 강점을 이해하고 나의 부족한 부분을 인지하는 것에서 출발한다고 느낀 점에 대해 말해보고자 합니다.잠재적 강점 이해하기팀원들의 강점을 파악하기 위해 정기적인 피드백 세션..
안녕하세요. yeTi입니다.오늘은 객체 지향 분석 및 설계(OOAD)와 객체 지향 프로그래밍(OOP) 의 개념을 다뤄보고자 합니다.계기2023년 5월 11일 안영회 대표님과의 대화에서 처음 접한 개념이 있습니다.객체 지향 분석 및 설계(OOAD) 인데요.당시에는 소프트웨어의 근현대사를 듣는 느낌에 재미있게 들었지만 어떻게 생각을 이어나가야 할지는 느껴지지 않았습니다.그러나 최근에서야 OO 라는 개념이 커뮤니케이션을 함에 있어 인간이 가진 인지 능력을 활용하여 소프트웨어의 복잡도를 다루는 시도였다는 느낌이 들어 이를 글로 옮겨보고자 합니다.OOAD란 무엇인가?객체 지향 분석 및 설계(OOAD)는 시스템을 상호 작용하는 객체들의 집합으로 시각화하여 분석하고 설계하는 방법론입니다. OOAD는 분석 단계와 설계..
안녕하세요. yeTi입니다.오늘은 소프트웨어의 생성성 향상이라는 활동을 지난 1년동안 시험해보면서 깨달은 시행착오를 기록합니다.생산성을 바라보는 바탕지식 근로자의 생산성을 어떻게 끌어올릴 것인가(上)지식 근로자의 생산성을 어떻게 끌어올릴 것인가(下)지식 서비스 직무에서 성과는 품질을 의미한다. - 지식 근로자의 생산성을 어떻게 끌어올릴 것인가(下) 中생산성을 높이는 데 무엇이 효과가 있는가? - 지식 근로자의 생산성을 어떻게 끌어올릴 것인가(下) 中훈련은 학습의 시작일 뿐이며 훈련의 가장 큰 이점은 무언가 새로운 것을 배우는 것이 아니라 우리가 이미하고 있는 것을 더 잘하게 되는 것이다. - 박문호 박사님지식 노동 산업에서 생산성은 지식 노동자들에 기반하고 지식 노동자들에게 생산성이란 품질 을 의미한다고..
안녕하세요. yeTi입니다. 오늘은 드러내는 용기로 서로간에 경계를 인식하는 불편한 상황을 만들고 이를 기회로 전환할 수 있겠다는 생각이 들어 이를 기록하고자 합니다. 문제 인식 작년 12월부터 4명 규모의 백엔드 파트 리더를 맡게 되었습니다. 그런데 안타깝게도 판매할 수 있는 제품을 줘야하지 않느냐는 피드백과 개발 속도가 너무 느리다는 피드백을 CBT 상황부터 꾸준하게 들어왔습니다. 그래서 품질 이슈와 개발 속도 이슈를 XP의 단순성의 가치를 따르지 못했기 때문이라고 생각하여 기획의 범위를 줄여 개발 범위를 줄임으로써 해결해보고자 시도했습니다. 대실패 XP의 단순성에 기반한 개발 범위를 줄이려는 시도는 대실패하여 제품의 릴리즈 연기에 이르게 되었습니다. 이유는 기능적으로 부족함에 따라 판매할 수 있는 ..
안녕하세요. yeTi 입니다. 오늘은 경계라는 것의 특성이 느껴진 것을 기록해보고자 합니다. 서킷의 경험 레이싱을 게임으로도 즐기고 서킷에서 직접 운전해보면서 깨달은 것이 하나 있습니다. 가장 빠르게 달릴 수 있는 순간은 내가 사고가 발생하기 직전이라는 것입니다. 그래서 제가 서킷을 달릴때 조언을 해주신 분께서 이런 말씀을 해주셨습니다. 몇 번 날아가봐야 내가 안날아갈 수 있는 방법을 알게 된다. 여기서 경계가 떠올랐습니다. 레이싱에서 가장 빠르게 달릴 수 있는 순간은 내가 안전한 영역과 위험한 영역 사이의 경계에 설 때라는 것입니다. (그때) 레이싱에서 말하는 레코드 라인이라고 칭하는 것은 안전한 영역과 위험한 영역 사이의 경계입니다. 인간 관계의 경험 이는 인간관계에서도 적용되는 것 같습니다. 상대와..
안녕하세요. yeTi입니다. 오늘은 도메인 주도 설계 4부를 읽고 난 느낌을 기록하려고 합니다. 지난 편에 이어 오늘은 4부(전략적 설계)의 2편입니다. 15장 디스틸레이션 - CORE DOMAIN (핵심 도메인) 지금까지 맥락을 살펴보면 지식을 얻고 쌓아나가며 언어의 맥락을 일치해 같은 개념을 가지는 것을 중심에 두고 에릭 에반스는 이야기를 풀어나가고 있습니다. 이를 달성하기 위한 중심 패러다임은 MODEL-DRIVEN DESIGN 을 채용하고 있고 경험의 누적에 따른 통찰력이 모델로 표현되어야 한다고 말합니다. 모델이 설계를 더 잘 지원하기 위해 정제되는 것처럼 설계 또한 새로운 통찰력을 도메인에 반영하기 위해 정제돼야 한다. - p.172, 7장 언어의 사용 - 도메인 격리 해당 장에서는 지식을 어..
안녕하세요. yeTi입니다. 오늘은 도메인 주도 설계 4부를 읽고 난 느낌을 기록하려고 합니다. 4부도 내용이 많아서 작은 부분으로 나눠서 기록합니다. 오늘은 4부의 1편입니다. 14장 모델의 무결성 유지 - BOUNDED CONTEXT 2018년부터 MSA를 흉내 내면서 각 서비스 간 경계를 나누는 방법으로 BOUNDED CONTEXT를 알게 됐습니다. 그러나 BOUNDED CONTEXT를 단순하게 서비스 단위를 나누는 경계로 인식하니 어떻게 사용해야 좋은지 알 수 없어 어렵게 다가왔습니다. 에릭 에반스가 말하는 BOUNDED CONTEXT는 명료합니다. 모델 컨텍스트란 모델에서 사용된 용어를 특정한 의미로 의사소통하기 위한 조건의 집합이다. - p.362 동일한 모델이라도 맥락에 따라 내포하는 의미와..