본문 바로가기
반응형

분류 전체보기98

[독서정산] 함께 자라기 - 애자일로 가는 길 다른 분의 블로그를 보다가 우연히 "함께 자라기 - 애자일로 가는 길" 이라는 책에 대해 알게 되었고, 그 분께서 작성하신 책 리뷰를 읽게 되었습니다. 개발자로 성장함에 있어 어떤 방식으로 생각해 나가야 하는지에 대해 알 수 있을 것 같아 책을 구매하여 읽기 시작했습니다. 아래는 요약본과 저의 개인적인 느낀점, 생각이 포함되어 있습니다. 짧은 요약 무엇보다도 개발자의 실력이 중요하다. (경력 연차의 함정에 빠지지 말자.) 자신이 부족한 부분에 대해 꾸준히, 지속적으로 학습을 해나가야 한다. 뛰어난 개발자는 커뮤니케이션과 협력에 많은 시간을 투자한다. 애자일은 매일 고객에게 가치를 전하는 업무 프로세스이다. 1. 자라기 "스스로 생각하는 훈련을 해나가야 한다." "학교 학습과는 반대 되는 개념으로 야생 학.. 2023. 3. 1.
[컨퍼런스] Deview 2023 - Keynote 힘들게 예약했던 Deview 2023 Day 1 에 다녀왔습니다. 인상 깊었던 Keynote 강연에 대해 정리해두고자 합니다. Deview 2023 의 전체적인 주제는 AI 였다. 40분간 진행되었던 Keynote 는 AI 의 경쟁력과 네이버에서는 AI 를 어떻게 활용하고 발전시키고 있는지에 대해 공유되었다. 대부분의 시간을 하이퍼클로바X 를 홍보하는데 사용되었다고 생각한다. Keynote 는 김유원 네이버클라우드 대표의 발표를 시작으로 성낙호 네이버클라우드 하이퍼스케일AI 기술 총괄, 곽용재 네이버클라우드 CTO, 김용범 네이버서치 Chief Scientist 순으로 강연이 이어갔다. 모두 AI 와 관련된 주제로 소개를 해주셨다. 전체적인 내용은 초대규모AI 서비스를 제공할 수 있는 하이퍼클로바X 가 .. 2023. 2. 28.
[스프링] @PostMapping 의 속성 알아보기 (headers, produces) 회사에서 코드리뷰를 하다가 @PostMapping 의 파라미터로 headers 와 produces 가 포함된 코드를 확인한 적이 있습니다. 얼핏 알기로는 headers 는 전달받는 headers 에 대한 정보를 담고 있고, produces 는 응답값의 타입을 정의하기 위해 사용한다고 알고 있습니다. 정확하지가 않아 이번 기회에 한번 알아보고자 합니다. HTTP 메시지 구조 @PostMapping 은 HTTP 통신에 있어 필요한 어노테이션이기 때문에 먼저 HTTP 메시지 구조에 대해 알아보자. HTTP 메시지는 클라이언트와 서버 사이에서 데이터가 교환되는 방식을 의미하며, 요청 (Request) 과 응답 (Response) 의 두 가지 유형이 존재한다. 요청과 응답은 Start line, Http head.. 2023. 2. 27.
[자바] 메소드 시그니쳐 (method signature) 메소드 시그니쳐 메소드 시그니쳐 = 메소드의 이름 + 메소드의 파라미터 컴파일을 할 때, 메소드의 시그니처를 기준으로 메소드를 구분하기 때문에 필요하다. 아래 코드에서 getInteger 와 인풋 파라미터 int x 를 합쳐서 하나의 시그니처로 표현한다. public int getInteger(int x) { return x; } 반환 타입은 포함되지 않음. 따라서 반환 타입만 다른 경우 (메소드의 이름과 파라미터은 같음)에는 컴파일 에러가 발생한다. (이미 같은 시그니처의 메소드가 존재하기 때문) public int getInteger(int x) { return x; } public double getInteger(int x) { // 2023. 2. 25.
UUID 로 설계한 댓가 예전에 신규 프로젝트를 맡아 설계부터 진행한 적이 있다. DB 테이블 설계를 할 때 평소같았으면 PK 값을 기본 Integer 를 사용했을텐데, 새로운 방식을 사용해보고 싶어서 UUID 로 적용해보고자 했다. 그 땐 몰랐지만 운영을 해오며 겪었던 문제점과 힘들었던 점에 대해 정리하고자 한다. PK 를 UUID 로 설정한 이유 당시 생성해야 했던 테이블이 7개 정도 되었고, 각 테이블의 PK 를 UUID 로 설정했다. 보안상의 이유가 가장 큰 부분을 차지했는데, 이 서비스가 외부로 노출이 되어야 했기 때문인데, PK 가 Auto-increment 하게 설정되어 있으면 외부로 데이터가 쉽게 노출될 리스크가 크다. 트렌비 홈 화면에 노출될 데이터였기 때문에 좀 더 보안에 신경을 쓰려고 했다. 괜히 ID 값이 .. 2023. 2. 23.
[후기] 2023년 카카오뱅크 서버 개발자 직군 (수시) 지원 후기 2023년 1월 말에 카카오뱅크의 서버 개발자 직군에 지원한 후기입니다. 서류 지원부터 처우 협상까지 약 2달정도의 시간이 소요되었고 결과는 최종 합격 했습니다. (대규모 채용 아니고 수시 채용입니다.)나중에 다시 돌아보기 위해서 기록용으로 작성해두려고 합니다. 요약전체적으로 채용 프로세스가 상당히 빨라서 매우 만족했다. (처우 협상 제외)단계 1. 서류 전형 - 이 단계에서 작성한 이력서와 자기소개서가 꽤나 중요한 느낌이었다.단계 2. 코딩 과제 - 기간 내 과제를 수행하는 형식이었고, 개인적으로는 시간이 많이 소요되었다.단계 3. 실무진 면접 - 코드 리뷰 형식의 면접이었고 상당히 디테일하게 물어보셔서 어려웠다.단계 4. 경영진 면접 - 프로젝트, 협업, 개인의 성장 등 다양한 방면에서 질문하셨다.단.. 2023. 2. 23.
[스프링] AOP 와 @RestControllerAdvice 지금 회사에 들어오면서 처음 봤던 코드 중 하나가 @RestControllerAdvice 였습니다. 이전 회사에서는 예외 처리를 가장 앞단의 try-catch 로 묶어서 했었는데, 여기서는 Advice 를 적극적으로 활용하고 있어 이에 대해 정리해두고자 합니다. 스프링 AOP AOP 는 Aspect-Oriented Programming 의 약자로 관점 지향 프로그래밍이다. 처음에 관점 지향 프로그래밍? 이라고 하길래 객체 지향 프로그래밍, 절차 지향 프로그래밍 등 뭔 그놈의 지향이 많은지 싶었다. 평소에 잘 작성하지 않는 메커니즘으로 구현하는 방식이다 보니 잘 와닿지 않았고, 이해하는데도 시간이 좀 걸렸었다. AOP 을 통해 이루고자 하는 것은 관심사의 분리이다. 위 그림처럼 "사용자 정보 관리", "주.. 2023. 2. 22.
[데이터] 우리 팀은 일을 어떻게 하고 있는가? - 엑셀을 활용한 JIRA 데이터 분석하기 작년 연말, 2022년을 마무리하는 팀 회고를 준비하고 있었습니다. (저희 팀은 각 스프린트마다 회고 담당자가 정해져있고 돌아가며 회고를 준비합니다.) 어떤 내용을 준비할지 고민을 하다가 2022년 저희 팀은 어떤 일을, 어떻게 해왔는지가 궁금해졌습니다. 과연 데이터에는 저희 팀의 업무 방식이 어떻게 기록되어 있을지 JIRA 데이터를 기반으로 분석해보고 팀에게 공유했던 과정을 정리하려고 합니다. Note JIRA 는 Atlassian 에서 제공하는 프로젝트 관리 및 업무 협업 툴로써 애자일 기반의 업무 방식을 지향하는 회사에서 주로 사용하는 서비스입니다. 아래 내용은 JIRA 가 어떤 서비스인지 알고 있다는 전제 하에 작성되었습니다. 분석 목적 아래 분석 목적을 이뤄보고자 데이터를 분석했다. 2022년도.. 2023. 2. 21.
반응형