20 April 2014

[리뷰] 프로그래밍 면접 이렇게 준비한다.

한빛 베타리더스 8기

요즘은 프로젝트가 마감이라 필요한 공부를 조금은 미뤄두고 있다. 공부는 하고 싶은데 , 그것을 받아들일 여유가 없다. 그래도 짬짬히 여러 활동을 통해서 손에서 책을 놓지는 않으려고 한다. 그것마저 안하면 정말 뒤쳐질거 같다. 이번에 읽은 책은 ‘프로그래밍 면접 이렇게 준비한다’ 이다.

우선 책의 전반적인 내용은 직접으로 면접에 도움이 된다기보다는 학부시절때 배운 내용들을 복습하는 느낌이다.
알고리즘, 자료구조, 객체지향, 디자인패턴, 데이터베이스 등 처음 프로젝트를 맡게되면 다시 처음부터 훑어보게 될 만한 내용들이 수두룩 하다. 책 한권 치고는 많은 분량이지만, 다루는 내용들에 비해서 간결하게 잘 압축해놓은 느낌이다. 책의 서문에서도 밝혔듯이 프로그래밍이나 기술 컨설팅 처럼 프로그래밍 면접이 필요한 분야의 취업을 준비하는 이들을 위해 만들었다 라고 서술되어 있다.

목차를 보고나서는 챕터별로 독립적인 듯하여, 흥미가 생기는 챕터부터 읽게 되었는데, 면접이란 것을 경험해보지 않는 나로서는 꽤 흥미로운 내용들이 많이 있었다. 그리고 읽으면서 확신이 드는 것은 시간날때마다 짬짬히 읽어두면 많은 도움이 될거라는 생각이 들었다.

이책에서 제공하는 문제들은 실제로 필자들이 만든 것은 없고, 본인들이 직접 면접보면서 실제로 받은 질문들, 문제들로 되어있다. 마치 ‘Programming Perl(번역서:생각하는 프로그래밍)’이 떠오를 정도로 생각할 거리들이 많았다. 딱히 저자가 추천한대로 문제를 풀다가 막히면 힌트를 참고해서 다시 문제를 푸는 식이 아닐지라도, 책 읽는 분들의 취향에 따라서 책을 읽어도 도움은 된다고 생각한다. 풀이의 중요성보다는 하나를 풀더라도 본인이 이해하고 내 것으로 만드는 것이 더 중요하다 생각한다. 그런 관점에서는 책을 정말 천천히 읽어 내려갔다. 처음에 책을 받기전에는 면접가이드 정도라 생각했는데, 앞으로 프로젝트를 하는데 필요한 기본지식들을 잘 다듬어주는 가이드라고 생각한다.

본인은 책의 목차대로는 읽지 않고, 흥미가 가는 부분부터 읽게 되었는데 챕터1,2,3 까지는 차례대로 읽고 그 이후부터는 객체지향,디자인패턴,데이터베이스,정렬 등 흥미 위주로 읽어내려갔다. 앞에 챕터 1,2,3은 나에게는 그렇게 해당되는 내용들이 아니기에 정말 빠르게 읽어내려갔다. 아무래도 해외서 출간된 서적이다보니 해외취업에 잘 맞춰있는거 같다.

그런데 자바스크립트에 대한 관점은 해외에서도 참 다양한 듯 하다. 자바스크립트의 SPEC을 정의하는 ECMA 문서에도 자바스크립트 객체지향 언어라고 명시되어 있음에도 불구하고, 저자는 자바스크립트를 객체지향 언어는 아니지만, 객체지향 프로그래밍의 기능중 일부를 지원한다 라고 서술 했다. (아마 java 나 c++등의 클래스 기반의 객체지향 언어에 익숙해져서 그렇게 말한 것은 아닐까 ? )

주말마다 책속에 있는 문제를 풀면서, 근 한달을 보냈는데 느낀점은 확실히 수학적인 사고를 요하는 문제들 같은 경우엔 예전에 비해서 풀이 속도나 이해하는 부분이 늦더라. 확실히 지적 활동들은 쓰는만큼 활발해지는 것은 맞는거 같다. 꾸준하게 옆에두고 시간날때마다 읽으면서 곱씹어 봐야 할듯 하다.

면접을 앞둔 이 혹은 전체적으로 학부때 배운 내용을 훑어보고 싶은 분들에게 어울릴거 같다.

짧은 분량에 꽤 많은 분야를 다루고 있다. 주변에 면접본 분들의 이야기를 들어보면 자료구조, 알고리즘은 항상 물어본다고 하는데 확실히 면접을 보기전에 전반적인 내용을 훑어보면 기술면접은 무난하지 않을까? 본인도 이 책에 나온 내용들을 중심으로 다시한번 깊게 들여보고자 한다. 항상 프로젝트를 끝내면 이런 내용들의 책을 보곤 하는데, 안다고 생각해도 다시 들여다보면 늘 새롭게 다가오는 것이 많다. 아마 그게 개발자라는 직업의 매력이 아닐까?

한빛 베타리더스 8기

이 리뷰는 한빛 베타리더스 8기의 활동의 일환으로 작성 되었습니다.


comments powered by Disqus