728x90

분류 전체보기 443

Domain 이벤트 (도메인 이벤트)

※ 이 포스트는 일본의 한 블로그 글을 번역한 포스트입니다. 오역 및 직역, 의역이 있을 수 있으며 틀린 내용은 지적해주시면 감사하겠습니다. 시작하기에 앞서 도메인 이벤트는 도메인 중심 설계에서 사용되는 설계 패턴 중 하나로, 도메인 이벤트 자체는 단순한 개념이지만, 여러 문맥에 사용되기 때문에, 좀처럼 이해가 어려운 부분이 있다. 따라서 이번 기회를 통해 관련 내용을 정리하고자 한다. Domain 이벤트란? 이벤트는 "과거에 발생한 사건"이며 도메인 이벤트는 "비즈니스 도메인에서 발생한 중요한 사건을 나타내는 메시지"이다(예: 주문이 할당되었으나 주문이 취소됨). 도메인 이벤트는 시스템의 상태 변경(=집약 상태의 변화)을 나타내며, 일반적으로 집약이 도메인 이벤트의 출처가 된다. 용도 도메인 이..

IT/기초 지식 2026.03.31

Node.js 버전 관리 툴 Volta

※ 일본의 한 블로그 글을 번역한 포스트입니다. 오역 및 의역, 직역이 있을 수 있으며 틀린 내용은 지적해주시면 감사하겠습니다. Volta란? Volta 는 JavaScript 도구 관리툴이다. 타이틀에서는 Node.js 의 버전 관리툴로 소개하고 있지만, npm·yarn 의 버전 관리도 할 수 있다. 공식 사이트 에서는 "The Hassle-Free JavaScript Tool Manager(수고 없는 JavaScript 도구 관리자)"라고 소개되어 있다. 팀의 Node.js 버전 관리를 Volta에 통합한 결과 DX가 높아져 Volta 장점을 느끼게 됐다.이 포스트에서는 개발자의 Volta 인구를 늘리기 위해 Volta를 소개하고 사용하는 방법에 대해 설명하고자한다. Volta 개요 공식 사이트에..

IT/기초 지식 2026.03.11

의지를 구현하는 아키텍처 모더나이제이션

※ 일본의 한 블로그 글을 번역한 포스트로 오역 및 의역, 직역이 있을 수 있습니다. 틀린 내용은 지적해주시면 감사하겠습니다. 1. AI 시대에 엔지니어의 역할은 무엇인가최근에는 AI가 코드를 작성하는 시대가 되었다.과거 → 개발자가 코드를 직접 작성현재 → AI가 코드를 생성그래서 개발자의 역할은 점점 다음으로 이동하고 있다.어떤 기술을 선택할 것인가시스템을 어떤 구조로 설계할 것인가이 시스템이 어떤 가치를 만들 것인가즉“코드를 작성하는 것”보다“어떤 시스템을 만들 것인가를 결정하는 것”이 중요해진다 2. 레거시 시스템 문제 (Legacy System)레거시 시스템(legacy system) 은 오래되어 구조가 복잡해진 시스템을 의미한다. 이러한 시스템들은 보통 다음 특징을 가진다.특징 변경이 ..

IT/기초 지식 2026.03.10

의존성 주입 (DI: Dependency Injection)

※ 일본의 한 블로그 글을 번역한 포스트입니다. 오역 및 의역, 직역이 있을 수 있으며 틀린 내용은 지적해주시면 감사하겠습니다. DI의 탄생 경위 참고로 코드는 Kotlin으로 작성하도록 하겠다. 제일 먼저 DI를 하지 않고 어느 오브젝트 내에서 외부 오브젝트를 인스턴스화하는 경우를 살펴보도록 하겠다.class Apple(val hasPoison: Boolean = false)// 식품 클래스. 추상적인 개념이어야하지만 사과(Apple)에 의존해버리고 만다.class Food { fun eat() { val apple = Apple(hasPoison = false) if (apple.hasPoison) { println("게임 오버") } ..

IT/기초 지식 2026.03.09

VSCode(Visual Studio Code)의 GitHub Copilot SKILL.md

※ 일본의 한 블로그 글은 번역한 포스트입니다. 오역 및 의역, 직역이 있을 수 있으며 틀린 내용은 지적해주시면 감사하겠습니다. 시작하기 전에 copilot-instructions.md 하나에 많은 정보를 제공할 수 있지만. 그 때문에 추론에 사용하는 모델의 성능이 낮거나, 한 번의 세션에서 대화가 오래 지속되면 처음에 말했던 내용이나, 애초에 copilot-instructions.md에 정의하고 있던 것을 잊어버리는 경우 생긴다.또한, 제공한 많은 맥락이 잡음이 되어 추론에 시간이 오래 걸리거나 엉뚱한 답을 내는 경우도 있었습니다. 그런 문제를 보완하기 위해 SKILL.md를 활용할 수 있다. Agent Skills란? 에이전트 스킬은 Copilot이 관련된 경우에 불러올 수 있는 명령, 스크립트 ..

IT/코딩툴 2026.02.25

MyNavi 전직 페어 (MyNavi転職フェア) 참가 후기

작년 말에 최근 일본 엔지니어 이직 동향이나 분위기 파악을 위해 MyNavi 전직 페어를 참가했었기에 관련 후기를 짧막하게 공유하고자한다. MyNavi 전직 페어는 다양한 지역에서 동시에 개최되고 있고 경우에 따라 엔지니어 메인이라던가 테마가 정해지는 경우가 있다. 전직 페어 개최 장소랑 참가 기업은 아래의 MyNavi 전직 페어 사이트에서 확인할 수 있다. 転職フェア・イベントならマイナビ転職~日本最大級の転職セミナー | 転職サイトは【マイナマイナビ転職の転職フェア・イベント(合同企業説明会)は全国各地で開催! 企業との出合いはもちろん、キャリアアドバイザーとの面談など転職支援サービスが充実、あなたの転職活動をtenshoku.mynavi.jp 내가 참가했던 전직 페어는 작년인 25년 11월 29일 토요일 신주쿠에서 엔지니어..

일본 재류 자격 갱신하기

얼마전 재류 자격 갱신을 했으므로 관련 기록을 남기고자 한다. 원래는 기록으로 남길 생각이 없었지만 조금 특이 케이스인것 같아 비슷한 상황에 놓인 분들을 위해 경험담을 공유하고 싶어 작성한다. 재류 자격 갱신에 필요한 서류는 재류 자격과 회사 규모("카테고리"라는 용어로 구분)에 따라 다르다. 각각의 필요 서류는 출입국재류 관리청 사이트에서 확인할 수 있다. 현재 기술, 인문지식, 국제 업무 재류 자격으로 일본에 있으며 근무중인 회사는 카테고리2에 속하는 회사이다. 이 경우 기본적으로 필요한 서류는 다음과 같다.재류자격갱신허가신청서 1통 → 본인준비+회사준비사진 1장(3x4 사이즈) → 본인준비 여권 혹은 재류카드 제시 → 본인준비 전년도 직원의 급여소득원청징수표 등의 법정조서 합계표(사본) → 회..

2025년을 되돌아보며 세운 2026년 목표

2025년의 테마는 '유저와 관련된 다른 분야를 공부하자'였지만, 그렇게 보내지 못했다. 변명아닌 변명을하자면 ..... 소속되어 있던 서비스 팀은 규모가 작아 엔지니어 팀은 나를 포함한 두 명인 작은 팀이었는데, 유일한 팀 멤버가 육아휴가로 반년정도 쉬게 되면서 혼자 CS팀과의 소통, 개발, 유지/보수 모두를 담당하게 되면서 정신없는 반년을 보내게 됐다. 그리고 그 사이에 부서가 다른 그룹 회사로 이동이 결정되면서 관련된 대응도 했다. 반년 후 팀 멤버가 육아휴가로 부터 복직했지만 다른 팀의 개발 지원 + 육아와의 병행으로 실질적으로 함께 일을 할 수 있는 시간이 짧은 관계로 계속해서 혼자서 모든 일을 담당했다. 또한 연말엔 갑자기 내가 다른 서비스로의 이동 발령이 나면서 계속해서 정신이 없었다. 그래..

git rebase의 두 가지 사용법

※ 일본어 블로그 글을 번역한 포스트입니다. 오역 및 의역, 직역이 있을 수 있으며 틀린 내용은 지적해주시면 감사하겠습니다. rebase란? 우선 rebase 명령어를 한마디로 표현하면 '지정한 커밋을 브랜치를 바꿔서 다시 만들거나 한 묶음으로 만들어서 로그를 깨끗하게 하는 명령어'이다.더 심플하게 말하면 '지정 커밋을 다시 만들어 로그를 청소하기 위한 명령어'라고도 할 수 있을 것이다. 하지만 이렇게 말하면 이해하기 어려울 것이므로. 그 사용법과 함께 설명하고자 한다. rebase의 두 가지 중요한 쓰임새제목에서 알 수 있는 rebase에는 두 가지 사용법이 존재한다. 한쪽은 「각각의 브랜치로 늘어나 있던 개발 커밋을 다시 연결한다」라고 하는 사용법. 다른 하나는 「여러 개의 커밋을 1 커밋으로 ..

IT/기초 지식 2026.01.06

git revert

※ 일본의 한 블로그 글을 번역한 포스트입니다. 오역 및 의역, 직역이 있을 수 있으며 틀린 내용은 지적해주시면 감사하겠습니다. revert란? 기존 커밋을 취소하기 위한 명령어로,「취소하고 싶은 커밋을 취소하는 커밋을 새롭게 작성한다」라고 하는 처리로 기존의 커밋을 취소한다.새로 커밋을 추가하고 있을 뿐이지 기존 커밋의 이력이 사라지는 것은 아니다(커밋 로그를 보시면 남아있다).어떤 변경이 있었는가 하는 것이 (revert한 것을 포함하여) 남기 때문에 원격으로 push되어 공개되어 있는 커밋에 대해서도 안전하게 사용할 수 있다.'기존 커밋을 원래대로 되돌린다'는 점에 대해서 비슷한 기능을 가진 명령어에 reset이 존재한다.다만, reset 명령어의 경우 커밋을 취소했다는 커밋이 남지 않는다는 차이..

IT/기초 지식 2026.01.06
728x90