2025/05 21

개발자로 살아남기 Chapter 1.4. "야근 지옥"과 "워라밸" 사이

📘 Chapter 1.4: "야근 지옥"과 "워라밸" 사이🔍 Intro처음엔 열정이었다.새로운 회사, 멋진 팀, 하고 싶은 개발… 야근? 그까이꺼 한두 번쯤은 괜찮다고 생각했다.근데 말이다. 그 야근이 매일 반복되고, 집에 가면 샤워만 하고 쓰러지는 삶이 계속되면?이게 개발자의 '성장통'인지, '소모'인지 헷갈리기 시작한다.이번 챕터에서는 내가 직접 겪은 야근 루틴과 거기서 탈출하기까지의 경험을 통해,개발자로서 지속 가능한 워라밸이 무엇인지 현실적인 관점에서 풀어보겠다.🧨 문제 상황: 주말마다 탈진한 나입사 6개월 차, 한창 '열정과 실력'을 모두 인정받고 싶었던 시절이었다. 출근은 오전 9시, 퇴근은 밤 11시 남들 퇴근하면 나만 노트북 붙잡고 코드 정리 일요일 밤엔 슬슬 업무 생각이 밀려오..

개발자 2025.05.24

개발자로 살아남기 Chapter 1.3. 실무에서 코드보다 중요한 것들

📘 Chapter 1.3: 실무에서 코드보다 중요한 것들🔍 Intro개발자는 코드를 짠다. 그건 당연한 이야기다.그런데 실무에선 이상하게도, 코드만 잘 짠다고 인정받지 못하는 경우가 많다."코드는 완벽한데… 뭔가 불편해."이 말, 들어본 적 있는가?이번 챕터에선 실제로 있었던 상황을 통해, 코드보다 중요한 요소들이 실무에서 어떻게 작동하는지를 보여주겠다.이건 멘탈이 단단하지 않으면 좌절하기 딱 좋은 부분이기도 하다.🧨 문제 상황: 아무도 내 코드를 안 쓴다?당시 나는 사내 라이브러리를 만드는 업무를 맡았다.공통적으로 반복되는 유틸 함수들과 API 호출 코드들을 정리해, 공유 가능한 내부 NuGet 패키지를 만들자는 취지였다.나는 기능별로 정리된 구조, 테스트 코드, 예외 처리까지 완벽하게 구성해서 ..

개발자 2025.05.24

개발자로 살아남기 Chapter 1.2. 코딩만 잘하면 될 줄 알았다 – 현실 벽

📘 Chapter 1.2: 코딩만 잘하면 될 줄 알았다 – 현실 벽🔍 Intro개발자로 취업하기 전엔 이렇게 생각했다. "나는 알고리즘도 잘하고, 기술 스택도 열심히 익혔어. 실무에서도 잘할 수 있을 거야."하지만 실무 첫 주차, 회의실에서 진짜 현실의 벽을 경험했다.그 벽은 코드가 아니라 사람, 업무의 흐름, 팀이라는 생명체 전체였다.이번 챕터에서는 많은 초보 개발자들이 겪는 대표적인 실무 충돌 사례를 소개하고,왜 이런 일이 벌어지는지, 그리고 어떻게 대처하면 되는지를 풀어보자.🧨 문제 상황: "코드는 완벽했는데, 왜 문제가 됐죠?"당시 나는 새로 입사한 회사에서 로그인 + 알림 기능을 맡았다. 요구사항은 간단했다: 로그인 성공 시 알림을 DB에 저장하고, 프론트엔드에서 이를 받아 모달을 띄운..

개발자 2025.05.18

개발자로 살아남기 Chapter 1.1. 개발자에게 진짜 필요한 역량은 뭘까?

📘 Chapter 1.1: 개발자에게 진짜 필요한 역량은 뭘까?🔍 Intro대학생 때까지만 해도 이렇게 생각했다. “개발자는 코딩만 잘하면 되는 직업 아니야?”하지만 실무에 들어와서 첫 프로젝트에서 머리부터 발끝까지 깨졌다.그 이후 난 진짜 개발자에게 필요한 역량이 뭔지 다시 보기 시작했다.이 글에서는 단순히 “이게 중요해요~” 수준이 아니라, 실제 겪은 예시를 바탕으로문제 발견 → 원인 분석 → 해결 전략까지 스토리처럼 풀어보려고 한다.💥 실무 예시: 말 잘 못하던 개발자 시절 이야기🧨 문제 상황: 혼자 개발 다 하고 욕먹은 사건첫 회사 입사 3개월 차, 사용자 인증 관련 기능을 맡았다.기능 요구사항은 “기본 로그인 구현 + 차단된 사용자 예외 처리”.난 ‘개발’만 잘하면 된다는 생각에: 클라..

개발자 2025.05.17

개발자로 살아남기

📚 블로그 시리즈 정리: 개발자로 살아남기항목내용시리즈 제목개발자로 살아남기핵심 컨셉단순 기술 말고, 실무에서 진짜 중요한 생존 전략, 커리어 통찰, 인간적인 성장 이야기대상 독자실무를 시작한 주니어, 경력 3~5년차 고민 많은 개발자, 협업과 성장에 대한 갈증 있는 사람핵심 특징기술 중심이 아닌 문제 해결 중심 스토리, 공감 가능한 실무 사례 위주, '어떻게 살아남을 것인가'에 대한 구체적인 조언📘 시리즈 구조 (챕터 목록)챕터주제요약 키워드1.1개발자에게 진짜 필요한 역량은 뭘까?커뮤니케이션, 문제 해결력, 책임감1.2코딩만 잘하면 될 줄 알았다 – 현실 벽협업 오해, 요구사항 해석, 일정 충돌1.3실무에서 코드보다 중요한 것들회의, 문서화, 커뮤니케이션, 팀 내 신뢰1.4"야근 지옥"과 "워라밸..

개발자 2025.05.17

C# 기초부터 고급까지 Chapter 3.10. .NET Core로 REST API 설계 – 보안, 인증 포함

📘 Chapter 3.10: .NET Core로 REST API 설계 – 보안, 인증 포함✅ 이 챕터에서 배울 것 REST API 기본 설계 원칙 API 계층 구성 (Controller → Service → Domain) 인증(Authentication)과 인가(Authorization) JWT 기반 인증 실전 예제 미들웨어 구성 및 정책 적용 실무에서 쓰는 보안 팁1️⃣ REST API란?"HTTP를 활용해 리소스를 표현하고, 행동을 명확히 구분하는 방식"✅ 핵심 원칙 원칙예시 리소스 중심/users, /products HTTP 메서드 사용GET, POST, PUT, DELETE 상태 없는 통신요청마다 인증 포함 표준 응답 구조200, 400, 401,..

C# 2025.05.14

C# 기초부터 고급까지 Chapter 3.9. CQRS + MediatR 패턴 실전 예제

📘 Chapter 3.9: CQRS + MediatR 패턴 실전 예제✅ 이 챕터에서 배울 것 CQRS란 무엇인가? 왜 필요한가? Command vs Query 구조 분리 MediatR이란? 왜 쓰는가? 실무 예제: 사용자 등록 + 사용자 조회 구조 설계 (핸들러, 요청 객체, 응답 객체) 테스트와 확장에 유리한 구조1️⃣ CQRS란?Command Query Responsibility Segregation→ 명령과 조회를 책임에 따라 분리하자! 구분설명 Command데이터를 변경하는 요청 (등록, 수정, 삭제) Query데이터를 읽기 위한 요청 (검색, 조회) ✅ 서로 다른 목적이므로 모델, 핸들러, 구조 분리하는 게 유리함2️⃣ MediatR이란?요청(Reques..

C# 2025.05.13

C# 기초부터 고급까지 Chapter 3.8. Domain-Driven Design(DDD) 도입과 구조 설계

📘 Chapter 3.8: Domain-Driven Design(DDD) 도입과 구조 설계✅ 이 챕터에서 배울 것 DDD란 무엇인가? 왜 쓰는가? 도메인, 유비쿼터스 언어, 애그리거트, 엔티티, 밸류오브젝트 계층별 구성 (Domain, Application, Infra, API) 실무 프로젝트 예제 구조 레이어 간 의존 방향 실무에서 마주치는 DDD 오해와 해결 전략1️⃣ DDD란?"복잡한 비즈니스 도메인을 객체 모델로 설계하는 방법론"마틴 파울러의 말:💬 "도메인 전문가와 개발자가 공통 언어(Ubiquitous Language)를 기반으로 소프트웨어를 만든다."✅ 왜 쓰는가? 문제 상황DDD 도입 효과 요구사항 변경 잦음유연한 구조로 적응 가능 기술 중심 설계비..

C# 2025.05.12

C# 기초부터 고급까지 Chapter 3.7. 커스텀 Attributes, AOP 기법 적용

📘 Chapter 3.7: 커스텀 Attributes, AOP 기법 적용✅ 이 챕터에서 배울 것 Attribute가 뭔가? 커스텀 Attribute 만들기 리플렉션으로 Attribute 읽기 AOP 개념 및 대표 예제 실무 적용 사례: 로깅, 검증, 권한 체크 PostSharp, Castle DynamicProxy, Source Generator 간단 소개1️⃣ Attribute란?"코드에 부착할 수 있는 주석 + 실행 메타 정보"C#에선 [AttributeName] 형태로 클래스, 메서드, 속성 등에 붙일 수 있다.✅ 예시[Obsolete("이 메서드는 쓰지 마세요!")]public void OldMethod() { }✅ 컴파일러가 "이거 쓰지 마라~" 라고 경고 줌💡 어디에 쓰이냐고? ..

C# 2025.05.11

C# 기초부터 고급까지 Chapter 3.6. .NET 메모리 관리 이해 – GC 동작 원리

📘 Chapter 3.6: .NET 메모리 관리 이해 – GC 동작 원리✅ 이 챕터에서 배울 것 .NET의 메모리 구조 (스택 vs 힙) GC가 왜 필요한가? GC의 세대별 구조 (Gen 0, 1, 2) 객체 수명과 Promotion Large Object Heap(LOH) 개념 Finalizer, IDisposable 차이 성능 최적화 팁1️⃣ .NET의 메모리 구조 영역역할 스택(Stack)지역 변수, 메서드 호출, 빠름 힙(Heap)new로 만든 객체, GC가 관리 int x = 10; // 스택에 저장var list = new List(); // 힙에 저장2️⃣ GC란?“사용 안 하는 객체는 내가 알아서 치워줄게”GC는 메모..

C# 2025.05.10