본문 바로가기
독서

커리어스킬 책 정리

by 나도한강뷰 2022. 9. 9.

의도치않게 it로 취직한 나는 개발자가 어떻게 성장하는지를 잘몰랐고, 전반적인 문화가 어떻게 되는지 궁금해서 커리어스킬이라는 약간 교양서적같은 책을 사서 일게 되었다.

책의 내용은 많지만, 내가 기억에 남고 정리가되는 내용들만 기록해보겠다.

 

  • 무언가를 자동화 하기전에 수동으로 하는법부터 알아야된다 - 너무 공감됐던 내용... 나도 업무를 하면서 제일 먼저 해야되는걸 탐색하고 공부하는 과정을 거쳤다.
  • 알고리즘, 데이터구조
    • 알고리즘을 다양하게 변형하는 방법을 익혀두는게 좋다. 며칠씩 품어야 되는 문제를 단 몇시간 만에 풀어내는 실마리가된다. (책추천: 코딩인터뷰 완전 분석)
    • it취준을 안했으니, 알고리즘 공부를 해본적이 없다... 다음에는 저책을 좀 읽어봐야겠다.
  • db
    • db공부시, query수행, 삽입, 업데이트, 삭제, join, n+1등의 개념을 배워보자.
  • 배움이란
    • 무엇을 배울지, 범위는 어디까지인지, 목표는 무엇인지를 생각하고 시작해야된다.
    • 그때 자신만의 배움의 과정이 있어야 된다.
    • 나는 처음에는 책을 읽어서 내가 무엇을 모르는지를 찾아보고, 그 다음에 해야되는 업무를 하면서 필요한 것을 좀더 파는 배움의 과정을 갖는다.
  • 언어
    • 어떤 언어를 쓸지보다, 라이브러리, 프레임워크를 어떻게 쓰냐가 중요
    • 내가 지금까지 간과했던 부분이 아닌가 싶다. 라이브러리, 프레임워크를 찾는 과정이 너무 없지 않았나???
  • 개발 방법론
    • 애자일/ 폭포수
    • 애자일 방식... 애자일은 민첩한 이란의미를 가지고있는데, 개발 배포를 지속적으로, 단계단계 코스를 도는게 아니라, 변화에 민첩하게 반응하는 개발이란 의미를 가지고 있는거같다.
    • 스크럼은 정기적 스프런트를 여는것인데, 스프런트는 PO/개발자/스크럼마스터가 매번 정해진 일을 체크하면서 다음 일정을 결정하는 회의를 의미한다. 이럴때는 칸반보드같은걸로 일정을 공유하는거 같다.
  • TDD
    • INPUT -> FUNCTION -> OUTPUT의 구조를 볼때 INPUT을 개발 요구사항에 맞춰서 잘 만들어 놓은다음 FUNCTION이 OUTPUT을 정상적으로 만들 수 있도록 코딩하는것... FUNCTION을 만드는데, 기준이 되는건 TEST코드라는점이 테스트 주도 개발의 핵심이 아닌가 싶다.
  • 디버깅
    • 디버깅은 문제의 근원을 찾아내서 진정한 원인을 찾고 해결하는 것으로 단순하게 디버깅을 돌려서 오류가 되는 부분을 수정하는걸 뛰어넘는 의미를 가지고있다.
    • 이러한 디버깅을 하기위해서는, 에러를 재현하고, 무턱대고 디버거를 실행하기보다는 구조적으로 어디서 발생될 에러인지 생각하며, 그것을 고치기 위한 가설을 수립하고 디버깅을 진행해야된다.
  • 유지보수 및 설계, 아키텍쳐
    • 유지보수는 리팩토링을 통해서 가독성이 좋은 코드로 만드는 의미를 가지고있다.
    • 좋은 코드는 가독성도 중요하지만, 코드를 적기전에 얼마나 아키텍쳐를 설계하는데 많은 고민을 들였느냐도 중요한 요소 중 하나이다.
  • T자형 인재- 결국에 문제가 생기면 전문가를 찾는다... 나도 전문가가 되어야되는데...
  • 이 책에서 추천한 책들을 공유한다
    • Clean code
    • clean software
    • gof의 디자인패턴
    • testing computer software
    • introduction to algorithms
    • 리팩토링
    • 레거시 코드활용전략
    • 실용주의 프로그래머

책을 읽어보니... 좋은 개발자는 생각하는 개발자라는 생각이든다. 단순히 코드를 짜는것은 성장에 의미없는 요소중 하나가 아닐까? 어떻게 하면 좋은 코드를 짜고, 좋은 프로세스로 개발을 하며, 나를 개발하느냐를 생각하는게 좋은 개발자로 가는 한걸음이라고 느꼈다.

'독서' 카테고리의 다른 글

real MySQL 8.0 1권  (0) 2022.10.10
쏙쏙 들어오는 함수형 코딩  (1) 2022.09.24
프로그래머의 뇌 정리  (2) 2022.09.07