
나는 주로 책으로 문제를 해결하는 스타일이었다. 그래서 그런지 입사하고 나서도 책을 찾아나섰고 내가 개발자로 일하던 팀에서도 기획자들은 개발자들이 '안돼요'라는 말을 이해하고자 프로그래밍이나 IT, CS 기본 개념을 책을 통해 배우려고 하는 광경을 많이 보았다. 물론 주로 분량이 얇기도 하고 겉핥기를 하는 책들이 많아서 부족한 점이 많았을 것이다. 개발자라고 해도 다를까. 막 입사한 개발자들 또한 대학교에서 배운 내용과 실무에서의 괴리를 처음 경험하게 되는 입사 직후 시점에서는 혼란스러움 뿐이다. 용어도 낯설고 배워야하거나 이해할 수 없는 것 투성이다. 그런데 이번에 나온 책 한권이 이에 대한 갈증을 풀어줄 수 있지 않을까 하는 기대를 갖게 하였다.
같이 일하게 된 사람들도 무슨 일을 하는지 궁금하다. 프런트엔드 개발자, 백엔드 개발자 - 말은 들어봤는데 뭐하시는 분들이지? 기획자는 무슨 일을 할까? 모든 것이 의문 투성이인 순간에 이 책은 나와 함께 일할 사람들이 무슨 일을 하는 지 친절하게 알려준다. 그뿐인가. Nginx, JBoss 등 제품 이름만 들어도 이제 막 입사한 개발자라면 지레 겁을 먹을 수 있다. 상용 프로그램이 실제로 어디에 쓰이는지 모르는 초급 개발자라면 더 어렵게 느껴질 수도 있다.
나 또한 돌이켜보면 API가 뭔지도 모른 채 Perl 책으로 프로그래밍을 공부하며 커리어를 시작했다. 원래는 프로그래밍을 어느 정도 익힌 뒤 입사하는 것이 이상적이겠지만, 중소기업의 특성상 그런 인재를 바로 채용하기는 여건상 쉽지 않았다. 그래서 일단 사람을 뽑고, 가르치며 업무에 투입하는 방식으로 교육이 이루어졌다.
그렇게 맨땅에 헤딩하듯 야생에서 커리어를 시작하며 깨달은 것이 있다. 우선 API가 무엇인지 알기만 해도 개발자들이 이야기하는 내용의 상당 부분을 이해할 수 있다는 사실이다. 여기서부터 가지를 뻗어나가면 REST API, JSON, HTTP status code 같은 개념이 자연스럽게 이어진다. Swagger나 Postman 같은 도구도 마찬가지다. 이후에는 Git, Docker, Jenkins, GitHub, GitLab 등 협업과 소스 관리, CI/CD와 관련된 개념과 도구들이 등장한다.
그래서 이 책은 단순히 코딩을 하는 개발자의 역할에만 머무르지 않는다. 빌드와 배포를 포함한 개발 생명 주기 전체를 포괄하며, 이는 자연스럽게 데이터를 저장하는 DB, 배포와 네트워크, 보안과 암호화 같은 개념으로 연결된다.
특히 240페이지부터 나오는 개발자로 성장하기 위한 학습 가이드는 단순히 실무 지식, 즉 단편적인 기술을 알려주는 데 그치지 않는다. 개발자로 일하면서 끊임없이 쏟아지는 새로운 것들을 어떻게 배우고, 반드시 알아야 할 것들을 어떻게 효과적으로 익힐 수 있는지에 대한 본질적인 팁을 담고 있다.
더불어 포트폴리오와 취업 전략 파트도 개발자로 취업하고 살아남기 위한 유용한 정보를 제공한다. 특히 늘 머리가 아픈 기술 면접을 어떻게 준비해야 하는지 그 접근법을 안내해주며, 평소 블로그를 작성해 나만의 자산을 쌓아가는 방법을 알려준 점도 큰 도움이 되었다. 처음 이 업계를 경험하는 사람 뿐만 아니라 나 또한 이직에 도전하면서 무엇을 어떻게 준비해야하는지 정리하게 되는 좋은 기회였다.
이 책은 결코 알고리즘의 세부 종류를 나열하거나 공식을 외우게 하는 식의 책이 아니다. 한마디로 요약하자면, 독자에게 당장 먹을 고기를 주는 책이 아니라 거친 실무 환경에서 스스로 살아남을 수 있도록 고기 잡는 법을 알려주는 책인 것이다. 정말 오랜만에 리뷰로 돌아왔다. 앞으로도 IT, 기술 분야의 좋은 책을 소개할 계획이다.
* 본 서평은 출판사로부터 책을 지원받아 작성되었습니다.