[책 리뷰] 면접을 위한 CS 전공지식 노트
[책 리뷰] 면접을 위한 CS 전공지식 노트
너무나 좋은 책이다. 왜 이제 나왔는지 억울할 만큼.. 대부분 이런 면접을 위한 CS 지식은 github 특정 repository나, 블로그 글들을 통해서 접하는데 이렇게 깔끔하게 정리된 내용이 있다면 얘를 먼저 보는것이 최고인듯 하다.
신입용으로도 좋지만 3년차 정도의 개발자에게도 잊었던 CS지식을 잠깐 다지기 굉장히 좋은 책이다.
본인이 면접볼때 나왔던 CS기반의 내용이 이 책에 대략 거의 다 있다…
거의 CS 지식을 떠먹여주는 수준이다. 이 책을 통해서 개념과 키워드를 알고 그부분을 좀 더 깊게 파며 면접을 준비하면 Best.
각 챕터의 마지막에 ‘예상질문’ 파트가 있는데 이 파트를 통해서 면접에 대한 준비를 더욱 단단히 할 수 있다.
구성
디자인패턴
여러가지 디자인 패턴을 설명한다. 싱글톤 패턴부터 제일 많이 사용하는 프로그래밍적 패턴들과 MVC, MVVM 등에 대한 모델링 패턴까지 설명한다.
위와 같이 재밌는 삽화와 자세한 설명, 그리고 ‘자바스크립트’와 ‘자바’ 각 언어를 통해서 디자인 패턴을 설명해준다.
프로그래밍 패러다임
여러가지 프로그래밍을 설명해주는데 최근에 핫한 함수형 프로그래밍부터 객체지향 프로그래밍, 절차형 프로그래밍의 설명과 함께 현재 어떤 패러다임이 가장 좋을지에 대한 부분을 얘기하고 있다.
답이 궁금한가? 책을 통해 확인해보자!
네트워크
전체적으로 네트워크에 대한 기초지식 부터 TCP/IP, HTTP에 대한 부분까지 설명해주고 있다.
3-way handshake에 대한 설명중 용어 설명에 대한 부분인데.. 이거까지 떠먹여 주는건 처음봤다. 블로그 같은데서 보면 3-way handshake 왔다갔다 하는 그림에 설명만 있고 거기 쓰이는 용어는 따로 검색해야하는게 태반이다. 이 책은 용어 설명도 친절하게 해준다.
그리고 개인적으로 L7과 L2를 이렇게나 친절하고 쉽게 설명해주나 싶어 눈물이 날뻔했다. 네트워크라는 챕터는 진짜 인터넷상 정보들이 너무 어렵게 설명되어 있는데 눈높이에 맞춰서 설명해주니 감사할 따름이다.
운영체제
뭐 할말이 있겠는가. CS 지식의 기본이다. 아무래도 경력 면접때는 덜 중요한 파트겠지만 신입 면접때는 무조건 나오는 부분이라고 볼 수 있겠다. 간단히 메모리관리에 대한 부분과 프로세스와 스레드, 그리고 스케줄링 알고리즘까지 설명한다.
주제가 주제인만큼 이 챕터에서의 코드는 C언어로 구성되어있다.
데이터베이스
개인적으로 굉장히 중요하다고 생각하는 파트인데, 알찬 내용으로 들어있다. 정규화부터 트랜잭션, 그리고 인덱스의 작동원리까지.
자료구조
신입에게는 필수인 파트이다. 간단히 복잡도 계산방식부터 선형, 비선형 자료구조에 대한 부분까지 전체적으로 설명해주고 있다.
면접 팁
마지막장에는 포트폴리오를 작성하는법과 면접을 어떻게 하면 잘 볼수 있는지에 대한 팁이 담겨져 있다. 당연한 얘기들을 하고 있지만 신입 입장에서는 이러한 부분이 미숙할 수 있고, 연차가 있더라도 이런 부분을 더 신경쓰게 만들어 큰 도움이 될 파트이다.
굉장히 신경쓴 책으로 보인다. 다른 면접 책들 보면 사실 좀 너무나 CS의 단편적인 부분에 대해서만 얘기하는 부분들이 많다.(진짜 하드코어하게 low단까지 파고 들어간다거나..)
하지만 이책은 디자인 패턴 파트만 잠깐 보아도 해당 디자인 패턴이 어떤식으로 쓰이는지(싱글턴 패턴 얘기하면서 스프링의 DI, MySQL 의 사용 예시가 나온다.) 그리고 자바와 자바스크립트 코드를 둘 다 표현해 놓아서 프론트든, 백엔드든 쉽게 볼 수 있도록 구성해두었다.
최대한 쉽게 설명하려고 하였고 그러한 부분으로 조금 어려운 부분도 쉽게 이해하고 넘어갈 수 있게 구성되었다.
솔직히 다른 CS 면접 책이랑 똑같겠지 생각했다. 나름 유명한 코딩 인터뷰 테스트 책인 ‘코딩인터뷰 완전분석’을 읽어본 편인데, 솔직히 그 책은 이미 어마어마한 두께에 질려버린다. 보고싶지가 않다. 그리고 내용자체도 예비 개발자분들이 보기에는 어렵다. 그리고 너무 이것저것 많이 알려준다. ‘도대체 이걸 다 알아야하는거야?’ 싶을정도로.. 그리고 설명이 말로만 엄청 장황하고 뭔소리야 싶은 경우가 굉장히 많았다.
하지만 이 책은 핵심만 딱딱 알려주며, 친절한 예시를 통해 정말 이해하고 넘어갈 수 있게 해준다. 진짜 본인이 면접을 봤을때 나왔던 질문들이 많이 보였다.
본인도 이 책을 보고 다시금 CS 지식을 다질 수 있었다. 이번엔 빠르게 후루룩 읽었지만 나중에 제대로 한번 더 읽어볼 예정이다.
참고로 해당 책은 인프런 무료 강의도 있으니 참고!
별점
: ⭐️⭐️⭐️⭐️⭐️
한줄평
: 면접 도장깨기 가능.
이런분께 추천
:
- 취직, 이직을 원하는 개발자
- 간단하게 전체적인 CS를 다시금 훑어보고 싶은 개발자