본문 바로가기

전체 글382

(책 리뷰) 쿠버네티스 교과서 이직을 하면서 쿠버네티스를 어느 정도는 다뤄야할 일이 있어 공부를 해야 마음먹고 있었는데, 운 좋게도 길벗 출판사의 22차 개발자 리뷰어로 선정되어, 무상으로 "쿠버네티스 교과서"라는 책을 받아 볼 수 있었다. (책 전체 리뷰) 일단 책의 전체 분량은 무려 720 페이지 나 된다. 사실 이런 전공도서 하나 읽는데 2주가 안걸리는데 내가 쿠버네티스 초보이기도 했고, 실습 자료가 많다보니 하나하나 실습해보면서 읽다보니 거의 3주 넘는 시간이 걸렸다. 대부분 실습 위주의 자료가 많다 보니 실습만 잘 따라가다보면 쿠버네티스의 대부분의 기능을 한번씩은 다뤄볼수 있는 소중하고 좋은 기회가 생긴다. 실습 자료만 거의 280개가 넘는다. 정말 교과서라는 이름이 매우 잘 어울리는 책이라는 생각이 들었다. 그리고 개인적으.. 2023. 11. 30.
10년동안 생각했던 꿈을 이뤘습니다 (feat. 강의 오픈) 10년전부터 저는 누군가를 가르치는 일을 해보고 싶다는 생각을 많이 했었습니다. 그 생각이 10년만에 이루어졌네요. 넵, 이번에 좋은 기회로 운이좋아 온라인 강의를 찍게 되었습니다. (자랑하고 싶어서 링크도 남깁니다.) https://www.hackershrd.com/lecture.php?mode=lecView&pcate=cateG&scate=G005&product_key=01::nref%3E0%3EB002%3EM035&p_id=0000000000&s_id=Y23M090030 기업교육의 중심 :: 해커스HRD 챔프스터디 재직자 내일배움카드, 기업단체교육, 실무역량 강화 교육, 직급별 필수교육, 고용노동부 인증 훈련기관 www.hackershrd.com 10년간 많은 일들이 있었습니다. 스타트업을 하다가 .. 2023. 9. 9.
(책 리뷰) 그림으로 이해하는 네트워크 구조와 기술 오늘은 책 한권을 리뷰해 보려고한다. 리뷰 전 간단하게 개인적인 이야기를 조금하고 싶다. 수포자 (수학을 포기한자) , 영포자(영어를 포기한자) 처럼 나는 부끄럽지만 컴퓨터 공학을 전공했음에도 불구하고 네포자(네트워크를 포기한자) 였다. 왜냐면 네트워크 공부가 너무나 지루하고 어렵고 따분했기 때문이다. 그러다보니 공부할 시기를 놓쳤다. 지금 IT 업계에서 근무한지 벌써 6년이 넘었다. 그러다버니 서당개가 되어 어느정도 네트워크에 대한 얘기가 나왔을때 흐름을 따라가긴해도 깊게 들어가면 바보가 되고 만다. 하지만 이 네트워크라는게 경력이 쌓일 수록 반드시 필요한 시기가 오는 것을 느낀다. 특히 요즘은 단일 서버에서 모든게 처리되는 방식은 지났다. 마이크로서비스라는 개념이 등장했고 각 서비스간 네트워크가 어떻.. 2023. 8. 29.
리팩토링으로 클래스 응집도 높이기 객체지향 코드를 짜기 위해 노력해 본 사람이라면, 좋은 객체지향적 코드를 짜기 위해서는 결합도는 낮추고 응집도를 높이라는 말을 들어보셨을 것이다. 혹시 결합도, 응집도가 무엇인지 잘 모르는 사람은 아래의 링크를 통해 공부하고 오자. https://devkingdom.tistory.com/300 결합도와 응집도 이야기 OOP를 다루는 개발자라면 혹은 컴퓨터 공학을 전공하는 사람이라면 누구나 이런 얘기를 들어본 적이 있을 것이다. "결합도는 낮추고, 응집도는 높여야 유지보수하기 쉬운 좋은 프로그램이 된다" devkingdom.tistory.com 클래스가 아래와 같은 이유로 분리의 필요성을 느낀다면 이는 클래스가 응집도가 낮은 것이니 클래스를 분리해야한다. 1. 변경의 이유를 기준으로 클래스를 분리 클래스가.. 2023. 8. 23.
[git] git branch 삭제하기 프로젝트를 진행하다면 수많은 브랜치를 만들고 작업을 진행하게 된다. 브랜치를 계속 만들다 보면 이미 반영된 브랜치도 로컬에 남아있게 된다. 이미 정상적으로 반영된 브랜치이니 해당 브랜치는 유지할 필요가 따로 없다. 그래서 아래 명령어를 통해 브랜치를 삭제 해줘야한다. 로컬 브랜치 삭제하기 git branch -d 위의 명령어를 날렸을 때, 만약 브랜치에 병합되지 않은 변경사항이나 푸시되지 않은 커밋이 있으면 삭제가 되지 않는다. 브랜치가 가지고 있는 커밋이 다른 브랜치나 저장소에 기록되어 있지 않을 경우 커밋 히스토리가 손실되는 것을 git 이 막기 때문이다. 이럴때는 아래와 같이 강제로 삭제할 수도 있다. git branch -D 원격 브랜치 삭제하기 원격 브랜치는 아래의 명령어로 삭제가 가능하다. g.. 2023. 7. 28.
[git] commit message 를 잘 작성하는 방법 새로운 회사에 입사하고, 깃의 새로운 커밋 컨벤션에 적응하느라 애를 썼다. 그래도 팀에서 정해진 컨벤션을 지키며 개발하니, 내가 어떤 내용에 대한 개발을 할지 명확하게 구분이 가능하고, 또한 동료의 산출물을 리뷰하는데에도 큰 도움이 됐다. 오늘은 그래서 깃 커밋 메시지에 대해 정리를 해두려한다. 커밋 메시지를 잘 써야하는 이유 1. 일관적이고 명확한 내용이 들어간 커밋 메시지는 다른 개발자가 산출물을 더 잘 이해할 수 있도록 돕는다. 2. 잘 작성된 커밋 메시지는 코드에서 문제가 발생했을 때, 더 쉽고 편하게 디버깅이 가능하게 한다. 3. 잘 작성된 커밋 메시지는 프로젝트의 맥락을 이해하는데 도움을 준다. 즉 해당 프로젝트에서 함께 작업하는 다른 개발자와 본인에게 변경 사항에 대한 컨텍스트를 전달한다. .. 2023. 5. 30.
Intellij 에서 테스트 목록이 안보인다면 요즘에 테스트 코드를 짜는 것은 매우 매우 중요한 일이다. 항상 맥북만 쓰다가, 윈도우 환경에서 Intellij를 새롭게 설치할 일이 있어 설치하고 간단한 스프링 프로젝트를 짜는데, 단위 테스트 코드를 짜고 수행해보니, 아래의 사진처럼 어떤 테스트를 했는지 보이지 않는 문제가 있었다. 문제 해결은 간단하다. 윈도우 기준으로 File (맥 환경에서는 Preferences..) > Build, Execution, Deployment > Build Tools > Gradle 로 가면 Run tests using 이 Gradle 로 되어 있는 것을 확인할 수 있다. 이걸 Intellij IDEA 로 바꿔주자. 그러고 다시 테스트를 수행해보면 , 아래 그림처럼 수행한 테스트 목록이 출력이 된다. 끝. 2023. 5. 21.
뛰어난 개발자로 성장하기 (존 카맥) 최근에 정말 존경하는 개발자인 존카맥의 인터뷰 영상을 본적있다. https://www.youtube.com/watch?v=CMv8LzuuTKk 너무나 감명받아 관련한 내용을 정리해 두려한다. 프로그래밍의 핵심은 유저들에게 가치를 제공하는 것이다. 개발자는 자신이 기술자라는 생각을 해서는 안된다. 너무 구체적으로 기술적인 접근만을 해서는 안된다. (안 중요하다는 것은 아니다.) 사용자들의 문제를 해결하거나 그들이 원하는 서비스를 제공하는데 집중해야한다. 이를 통해 소비자들의 불편함을 해소하고 소비자가 하는일에 더 많은 가치를 더할 수 있는 개발을 해야한다. 진부할 수 있지만 개발자는 어떻게 더 좋은 세상을 만들 수 있을까 하는 고민을 계속 해야한다. 개발자가 더 좋은 제품을 만들면 세상은 더 좋은 세상이 .. 2023. 4. 21.
회사 선택의 기준 - 좋은 회사와 나쁜 회사 불과 얼마전까지 IT업계는 굉장히 핫했고, 모든 회사가 이직이 활발하게 일어났었다. 하지만 최근의 흐름은 정반대다. 하루에도 몇번 씩 어떤 회사가 구조조정한다는 기사를 본다. 나는 약 6년 정도 개발 커리어를 경험했고, 네 군데의 회사를 경험했다. 내가 경험했던 회사들은 느낌이 다 다르다. 무조건 이렇다고 확신할 순 없지만, 이 네가지 경험이 여러분이 회사를 선택하는데 크게 도움이 될 것이라는 확신은 든다. 1. IT 가 메인이 아닌, 전산업무를 하는 전통의 대기업 나는 첫 커리어를 이름만 들어도 다 알만한 대기업으로 들어갔다. 연봉, 복지, 인지도 등 어느 하나 남부러울게 없는 조건이었고, 한 3년 정도는 만족하며 다녔다. 나름 알아주는 대기업에 다닌다는 자부심도 있었다. 하지만, 감히 말씀드리는데 진.. 2023. 4. 14.