String 함수 사용을 조심해야 하는 이유
Tech/Java&Spring2024. 3. 31. 17:12String 함수 사용을 조심해야 하는 이유

서론 실무에서 코드리뷰를 하다가 String 함수 관련해서 개발자 의도와 다르게 작동할 수 있는 코드를 발견했습니다. 이 부분에 대해 바로 피드백드리고 정정할 수 있도록 가이드를 제공해 드렸는데요. 어떤 부분인지 어떻게 올바른 코드를 작성할 수 있는지 알아보겠습니다. Java 17, SpringBoot3를 기준으로 작성되었습니다. 배경 현재 회사에서 수개월의 설계를 끝낸 후 아주 활발하게 개발이 이뤄지고 있습니다. 저와 함께 협력하는 개발자는 같은 회사 동료도 있고 다른 회사에서 협력 중이신 분들도 계십니다. 현재 개발에 들어간 지 겨우 1개월 정도인데요. (3월에 시작) 모든 동료분들이 Java/Spring에 익숙한 상황이 아니기에 각 파트별로 기술적 논의와 표준을 정의하는 담당자를 배정했고 제가 그 ..

컨퍼런스 운영 후기
후기/경험2024. 3. 17. 15:56컨퍼런스 운영 후기

서론 지난 3월 14일 역삼의 마루 180에서 평일 저녁임에도 불구하고 100명에 육박하는 인원이 컨퍼런스에 참여했습니다. 사전에 많은 회의를 거쳤음에도 불구하고 현장에서 변칙적인 상황이 발생하기도 했는데요. 흥미진진한 글또 백엔드&인프라 컨퍼런스 준비 과정과 후기에 대해 공유해볼게요. 저는 글또 9기 운영진을 하고 있으며 글또 내 컨퍼런스의 전반적인 운영/기획과 행사 당일 사회자를 담당하게 되었습니다. 글또에서는 이 컨퍼런스를 "반상회"라고 지칭하고 있어요. 반상회라는 단어의 이유엔 성윤님의 철학이 담겨있습니다. 오랜만에 사람을 보면 "어떻게 지냈니~?", "잘 지냈니" 같은 서로 안부를 묻는 질문으로 대화를 시작하는 것처럼. 새로 이사온 입주민에게 "오 새로 이사오셨어요? 안녕하세요!"라는 말을 건네..

넥슨 공채 넥토리얼 최종합격, 정규직 전환 후기
후기/경험2024. 2. 18. 20:53넥슨 공채 넥토리얼 최종합격, 정규직 전환 후기

2021년 공채였던 넥토리얼 1기의 합격 후기입니다. 저는 아직도 제가 왜 붙었는지 모르겠습니다. 이 글을 통해 알 수 있는 점 넥슨 공개채용 프로세스 코딩테스트 유형 면접 방식 6개월 간 인턴 후기와 정규직 전환 스토리 서류전형 복수 지원이 가능한 프로세스 특이하게도 최대 3개의 조직에 복수 지원이 가능했습니다. "내가 갖고 있는 코인이 3개나 있는데 위축되지 말고 비슷한 스택 있으면 무조건 다 넣어보자"는 생각으로 갖고 있는 3개 코인을 모두 사용했습니다. 저는 최종적으로 아래 3개의 조직에 지원했어요. 엄청난 자기소개서 양 이렇게 최대 글자가 긴 자기소개서는 처음이었습니다. 각 문항당 최대 4천 자였거든요. 하지만 글이 너무 길면 집중력도 떨어지고 장황해질 것 같아서 1천 자 내외로 쓰기로 스스로 ..

후회하지 않으며 살아간다는 것
후기/경험2024. 2. 4. 23:47후회하지 않으며 살아간다는 것

서론 후회된다. 과거로 돌아가고 싶다. 후회를 언제 하시나요? "후회된다"라는 표현을 언제 쓰시나요? 저는 20대 초반, 어느샌가부터 "후회"라는 단어를 떠올리지 않게 되었는데요. 매 선택의 순간에서 후회하지 않는 선택을 했고, 그 선택 이후에 후회되지 않도록 살아갔기 때문이었던 것 같습니다. 이번 아티클에서는 신입 개발자로서의 2년을 돌아보며 한순간도 후회되지 않았던, 과거로 돌아가라고 해도 돌아가지 않겠다고 확신할 수 있었던 이유에 대해서 고민해 보고 매 순간 어떤 태도로 상황을 대했는지 이야기해보겠습니다. 동기부여하기 2년 전 첫 선택은 넥슨코리아 신입 공채 최종합격 발표 후였습니다. 한 컨설턴트님께서 다시 한번 생각해 보라며 승현님이 기대하는 트래픽도 없을 것이고 게임 회사이기 때문에 상대적으로 ..

티스토리 댓글을 Github 댓글로 바꾸기 (giscus 적용)
후기/경험2024. 1. 21. 20:00티스토리 댓글을 Github 댓글로 바꾸기 (giscus 적용)

부제: 티스토리에 giscus 적용하기 세 줄 요약 티스토리에 개인 도메인을 달게되면 티스토리 계정으로 댓글을 달 수 없는 문제가 있습니다. 스팸 댓글이 달리기 시작했습니다. utterances와 giscus 중 고민하다 giscus로 바꿨습니다. 옮겨야만 했던 이유 개인 도메인 로그인 이슈 저는 티스토리 도메인에 개인 도메인인 imksh.com을 붙여서 쓰고 있습니다. 개인 도메인인 imksh.com으로 접속하게 되면 티스토리 로그인이 유지되지 않는 이슈가 있는데요. 즉, 티스토리 계정으로 댓글을 달 수 없고 익명으로만 달아야하는 문제가 있습니다. 정말 마이너한 이슈지만, 익명으로 댓글을 달게되어 누구인지 전혀 식별할 수 없다는 문제로 이어집니다. 티스토리라는 블로그도 하나의 작은 사회인데, 제 블로그..

개발자 이력서 작성 및 변화 과정 (이력서 공개)
후기/경험2024. 1. 7. 13:16개발자 이력서 작성 및 변화 과정 (이력서 공개)

서론 2023년 상반기에 이력서 스터디를 진행했고 프론트엔드를 제외한 직군에서 스터디 리딩을 하게 되었습니다. 약 10명 가까운 인원이 참여했으며, 이력서 플랫폼(또는 툴) 결정 과정과 제 이력서가 어떻게 바뀌었는지를 자세하게 기술합니다. 단, 스터디 진행 방식에 대한 회고글은 아님을 알려드립니다. 이력서 최종 업데이트 이후 지원한 모든 회사에 서류 합격을 할 수 있었습니다. 이력서와 관련된 글 보기 2023.07.16 - [후기/경험] - 2023 상반기를 되돌아보자 2023.12.10 - [후기/경험] - 채용 한파에 카카오뱅크 최종 합격 후기 이력서에 노션을 추천하지 않는 이유 2022.12.08 - [후기/넥스터즈] - 넥스터즈 지원자 서류 검토 후기 넥스터즈 회장을 하면서 수백개의 이력서를 하나..

채용 한파에 카카오뱅크 최종 합격 후기
후기/경험2023. 12. 10. 21:59채용 한파에 카카오뱅크 최종 합격 후기

서론 2023년 12월, 카카오뱅크 결제코어개발팀 백엔드 개발자로 합류하게 되었습니다. 넥슨 코리아 퇴사와 동시에 쉬는 기간 없이 입사를 결정했고, 이 아티클이 등록되는 시점엔 아마 출근을 앞두고 있을 겁니다. "하반기 이직을 꼭 해야겠다!"라는 목표보다는 경력 이력서 기반으로 어떤 질문이 들어올지 경험을 쌓기 위한 목표가 컸습니다. 그래서 하반기 목표는 "기술 면접 감 잡기"였습니다. 그러나, 진짜 문제는 채용 공고가 안 떴다는 점이었습니다.. 정말 다행스럽게도 스터디를 병행하던 타이밍에 딱 2개의 공고를 확인할 수 있었고, 해당 공고에 망설임 없이 지원할 수 있었습니다. 글을 작성하는 지금도 총 10개의 회사 채용 공고를 즐겨찾기 해두었는데, 제가 지원 가능한 채용 공고가 단 하나도 없네요.. 본론으..

2023 상반기를 되돌아보자
후기/경험2023. 7. 16. 14:562023 상반기를 되돌아보자

서론 2023년도 절반이 지난 시점에서 꽤 많은 활동을 해왔습니다. 2023년이 끝난 후 한 해를 회고하려다가 너무 방대한 양을 작성해야 할 것 같아 지금 시점에 절반정도 털어내려 합니다. 여러 에피소드가 있지만 하나하나 자세하게 쓰기보단 담백하게 작성하고, 더 상세한 내용 작성이 필요한 경우엔 추가 포스팅으로 풀어내겠습니다. 2023 상반기에는 아래와 같은 활동을 했습니다. 글또라는 커뮤니티에 들어가, 블로그 포스팅 9개 작성 완료 재그지그(정종윤)님과 이력서 피드백 스터디를 함께 진행 기술 컨퍼런스에서 대외활동과 관련된 주제로 발표 넥스터즈 기술 면접관으로 참여 현재 진행중인 스터디는 3개 회사에서 갑작스레 대 조직 개편이 발생 앞으로의 방향성에 대한 고민 7개의 에피소드를 차근차근 풀어가 보도록 하..

Java10 무분별한 var를 지양해야 하는 이유
Tech/Java&Spring2023. 6. 18. 16:18Java10 무분별한 var를 지양해야 하는 이유

서론 회사에서 코드 리팩토링을 하는 업무를 하고 있었습니다. 레거시 코드 중 중첩 Map 형태로 반환하는 부분 때문에 프론트엔드에서는 불필요하게 반환된 객체의 key를 모두 읽고(Object.keys) 가장 최하단의 value에 직접 접근하는 로직을 항상 작성해야 했습니다. 그러다 보니 매번 프론트에서 작성되는 반복문 로직이 작성되어야만 했고 그 반복문 내에서 비즈니스 로직이라도 들어가게 되면 가독성을 매우 저하시키는 상황이 종종 생겼습니다. 그래서 이 중첩 Map 형태를 중첩이 없는 List형태로 반환하고자 코드를 수정하던 중, 누군가가 작성한 var 타입 추론을 만나게 됩니다. 간단히 눈으로 디버깅을 할 때 타입 추론은 IDE에 의존적임을 깨달았는데요, IDE가 없는 Github, GitLab 환경에..

멀티스레드 분산 환경에서의 로깅(2)
Tech/Java&Spring2023. 6. 4. 23:15멀티스레드 분산 환경에서의 로깅(2)

서론 이전 포스팅과 이어 작성됩니다. 2023.05.21 - [Tech/Java&Spring] - 멀티스레드 분산 환경에서의 로깅(1) 멀티스레드 분산 환경에서의 로깅(1) 서론 담당하고 있는 프로젝트에서 사용자 수가 점점 늘어나고, Batch 작업 갯수가 늘어나기 시작했습니다. 드물게 에러가 발생하기도 하는데, 이 때 어떤 상황인지 파악하고 원인을 알아내기 위 imksh.com 지난 포스팅에서 결론은 하나의 요청에서 파생된 로그인지 확인하기 어렵다는 결론이었습니다. 그래서, 이번 포스팅에서는 이를 해결할 수 있는 MDC Filter를 적용해봅니다. MDC란 MDC: Mapped Diagnostic Context MDC는 slf4j 패키지에 속해있는 클래스입니다. 또한 ThreadLocal을 이용해 각 ..

image