- 다양한 주제에 대해 자유롭게 글을 작성하는 게시판입니다.
Date 24/02/10 09:19:45
Name   kaestro
Link #1   https://kaestro.github.io/%EB%A6%AC%EB%B7%B0/2024/02/09/%EB%8F%85%ED%9B%84%EA%B0%90.html
Subject   최근에 읽은 책 정리(프로그래밍 편)
의도치 않은 티타임 전력질주를 달성하게 생겼군요.

다 완성되면 통합본으로 만들기라도 해야되나 싶네요





  1. 프로그래밍 면접, 이렇게 준비한다 - 존 몽건, 노아 킨들러, 에릭 기게리.

  2. 비전공이지만 개발자로 먹고 삽니다. - 반병현

  3. 실용주의 프로그래머 - 데이비드 토머스, 앤드류 헌트

  4. 한 권으로 읽는 컴퓨터 구조와 프로그래밍 - 조너선 스타인하트




프로그래밍 면접, 이렇게 준비한다.


책 제목대로 프로그래머로 구직을 목표로 할 때 어떻게 준비해야 하는지를 중점으로 다룬 책입니다. 구매 자체는 19년도에 했었는데, 당시에는 워낙 두꺼워서 읽다가 포기했었다가 이제 와서야 다 읽게 됐네요.


책 구성은 크게 3단계로 나뉩니다.



  • 1단계: 구직을 진행하는 프로세스는 어떻게 되는가

  • 2단계: 기초적인 컴퓨터 공학적인 지식

  • 3단계: 비공학적인 면접에서 나올법한 질문들


컴퓨터 공학적인 부분은 너무 지엽적이거나, 가벼운 지식만을 다룰 때가 많아서 조금은 아쉬웠습니다. 하지만, 1단계의 구직을 진행하는 프로세스에 대한 설명은 이번 구직 과정에서 많은 도움을 받았습니다. 기존에 제가 생각하지 못했던 것들이라 참고할 만한 것들이 꽤 많았거든요.


대표적으로 chapter1의 제목은 '구직을 시작하기 전에'이고, 첫 소챕터는 '너 자신을 알라'로 시작합니다. 내가 어떤 성향을 가진 사람이고, 그걸 기반으로 어떤 회사에서 어떤 업무를 할 때 성취를 이룰 수 있을 지에 대해 생각해보란 이야기입니다. 해당 과정을 통해 저는 이번 구직 과정에서 지난 번과는 꽤나 다른 경험을 할 수 있었습니다.


19년도에 제가 회사를 입사하려던 과정은 구직이 아니라 취직에 가까웠다 생각합니다. 일단 대학은 졸업했고, 다들 돈을 벌어야하는데 나온 대학 이름 값이 있고 주변은 어느 정도 사회적인 위치에 있는 곳들을 다니니 그정도는 가야지. 근데 그 곳을 가려면 나는 어떤 능력을 길러야하지? 그 곳에서는 어떤 사람을 원할까? 이것을 위주로 생각했습니다. 일터를 구하는 기준이 '나'가 아니라 '직장'이었던 것이죠.


그러다보니 갈 만한 곳이라고 몇 곳을 정해놓고, 그곳에 어울리는 고등학교 때 입시 생각하듯이 준비를 꽤나 오래 했습니다. 당장 내가 무엇을 하고 싶은지 생각하는 것을 미룬 채, 알고리즘 문제들을 여럿 풀고 면접에 나올 법한 컴퓨터 공학 지식을 달달 외웠습니다. 그리고 전 직장에 입사해서 1년 반을 조금 못 다닌 뒤 퇴사했습니다.


물론 전 직장도 좋은 회사이고 소중한 인연들을 만났지만, 제 성향과 맞는 회사는 아니었다고 생각해 그만두게 되었던 것을 보면 제게 가장 먼저 했어야 할 질문이 바로 옆에 있단 것을 이제서야 깨달았습니다. 나는 어떤 사람이지?


그래서 이번 구직 과정에서는 잘 모르는 회사들에 굉장히 많이 지원했고, 이야기를 나누는 과정에서 자신을 되돌아보는 경험을 쌓을 수 있었습니다. 그러니까 이전처럼 면접을 보는 것이 단순하게 그 회사에 들어가는데 성공/실패하는 것이 아니라 나 자신이 발전하는 과정으로 이해가 돼서 지금은 어느 정도는 즐기는 중 입니다.


직장은 한 번 정하게 되면 일상의 굉장히 많은 부분을 차지하는 만큼, 앞서서 남이 생각하는 좋은 직장에 맞추려고 노력하는 것보다 나에게 맞는 곳을 찾으려고 노력하는 것이 굉장히 중요하단 것을 알게 해 준 책이었습니다.


물론 그것 외에 컴퓨터 공학적으로 가볍게 훑어보기에 나쁘지 않은 책입니다. 기본적인 자료구조, 알고리즘, 병렬 처리 등에 대해 다뤄주거든요.




비전공이지만, 개발자로 먹고 삽니다.


그럼에도 첫 책에서 컴퓨터 공학적인 부분이 아쉬웠다고 많이 느껴져서, 면접을 준비하려면 좀 더 공부해 보는 것이 낫지 않겠냐는 생각에 읽게 된 책입니다. 그렇다고 막상 본격적인 책을 읽기에는 겁나서 제목에서 뭔가 만만해 보이는 책을 집었던 것도 있습니다.


제목에서 드러나듯이, 이 분야에 경험이 있는 사람이 독자아니라 요즘 이게 핫하다던데 뭐하는거야?라는 사람들에게 '야, 너도 할 수 있어'라는 이야기를 하는 책에 가까웠습니다.


이런 이야기를 하는 많은 다른 책들과는 다르게, 이 책은 본인이 가지고 있는 특성에 따라 이런 분야의 개발자를 지망하는 것이 좋다는 이야기를 해 준 부분이 꽤 재밌고 도움이 됐습니다. 마침 또 제가 이것에 관심이 있었던 시점이니까요.


공학적 지식 부분에서는 크게 도움이 되진 않았습니다.




실용주의 프로그래머


꽤나 유명한, 개발 서적의 소위 고전으로 불리는 책입니다. 마침 20주년 판이 나온지 얼마 안 됐고 읽으신 분께서 추천을 해주셔서 집어들게 됐습니다.


전반적으로는 프로그래밍에 관해 저자가 얻은 지혜를 가벼우면서도 동시에 심도있게 전달하려고 노력을 굉장히 많이했다는 인상을 받았습니다. 또 글의 표현이 굉장히 재미있고 전달력이 좋았습니다. 목차 제목만 봐도 '고양이가 내 소스 코드를 삼켰어요' 같은 표현이 나오기도 하니까요.


내용은 이제 개발에서 신경써야하는 테크닉, 디자인 들에 대해서도 이야기를 많이 합니다만, 저는 그보다 개발자가 흔히 하는 실수나 잘못된 마음 가짐 같은 내용들이 더 인상 깊었습니다. 아마 그 근간에는 제가 저런 지식들을 온전히 흡수할 수 있는 경험적 기반이 덜 쌓여서 그런 것도 있겠지만요.


이 책은 전반적으로 내용을 큰 주제로 나눈 뒤, 이를 다시 여러 소주제로 나누고, 이를 줄글로 설명하는 것을 통해 다룹니다. 하지만, 여기에 관련 항목을 달아 여러 주제들을 통합적으로 이해하길 추천하고 도전해볼 것을 제시해서 해당 주제를 깊게 탐구해보기를 요구합니다. 이 때문에 가볍게 아이디어만 얻기에도 충분히 좋은 책이었습니다만, 이 책을 제대로 이해하려면 시간이 지나 경험을 쌓고 각각의 주제를 음미해야겠다는 생각이 들더군요.


다 읽기는 했습니다만, 나중에 시간을 내서 다시 읽어보려 합니다.




한 권으로 읽는 컴퓨터 구조와 프로그래밍 - 조너선 스타인하트


사실 이 책을 굉장히 많은 분들께서 추천을 하시던데, 펼쳐보고 깨달았습니다. '왜 내 눈앞에 전공서적이 있는거지...?'


비트나 논리 연산 같은 것들을 다루는 이야기들을 보는 것은 학부를 졸업한 이후로도 가끔 보긴 했습니다. 그런데 하드웨어 적인 이야기를 진공관, 트랜지스터 단위부터 시작해서 이야기하는 책은 학부 때 컴퓨터 구조론 수업을 들은 이후로는 처음 본 것 같습니다. 물론 학부 전공 서적만큼 자세하게 다루진 않습니다만... 이거 읽으라고 낸 것 맞나?라는 생각이 들더군요


그래도 오랜만에 이전에 공부했던 이야기들을 훑으면서, PC(Programming Counter)나 스택, 메모리 등을 하드웨어적인 부분을 통합해서 이야기 해 주는 책을 읽을 수 있었습니다. 물론 읽다가 머리 아파서 적당히 스킵한 내용이 훨씬 많았단 것은 비밀입니다만, 오랜만에 예전 지식들을 떠올리는 과정은 꽤나 즐거웠습니다.


사실 대학원 진학을 고민하던 시절에는 이쪽 분야가 너무 멋있다 생각을 했었던 만큼, 언젠가는 이 책이 아니라 제대로 된 전공 서적도 한 번 봐볼까도 싶긴 합니다. 이 책에서 어려운 내용을 좀 넘긴 부분은 당장 면접에서 크게 도움이 안 된다는 현실적인 이유도 있었습니다만, 짧은(?) 책에 너무 많은 이야기를 담으려다 보니까 디테일이 아쉬워서 결국은 이해하기 위해서는 이것 만으로는 모자라다는 생각이 들더군요.




현재는 프로그래머의 뇌라는 책을 읽고 있는데, 요 근래 가장 고민이었던 코드를 읽고 새로운 것을 배우는 방법론에 대해 이야기해줘서 굉장히 흥미롭습니다. 이 책에서 지금 다루는 내용은 코드를 단순히 많이 읽는 것보다는 이를 구조화할 수 있는 개념적인 지식을 많이 가지고 있고, 글을 자신의 방식으로 해석해내는 능력을 가져야 이제 코드를 읽고 쓰는 능력이 향상된다 하고 있습니다. 마침 제가 지금 하고 있는 부분인 것 같아 '잘 하고 있어!'라고 칭찬해주는 것 같아 읽는 것일 수도 있겠네요.


이후에도 쉬지않고 좋은 책을 읽도록 노력해보겠습니다.





1


    목록
    번호 제목 이름 날짜 조회 추천
    공지 티타임 게시판 이용 규정 2 Toby 15/06/19 30653 6
    14626 음악[팝송] 걸 인 레드 새 앨범 "I'M DOING IT AGAIN BABY!" 김치찌개 24/04/27 55 0
    14625 의료/건강SOOD 양치법 + 큐라덴 리뷰 7 오레오 24/04/26 493 0
    14624 일상/생각5년 전, 그리고 5년 뒤의 나를 상상하며 6 kaestro 24/04/26 439 3
    14623 방송/연예요즘 우리나라 조용한 날이 없네요 6 니코니꺼니 24/04/26 887 0
    14622 IT/컴퓨터5년후 2029년의 애플과 구글 1 아침커피 24/04/25 448 0
    14621 기타[불판] 민희진 기자회견 63 치킨마요 24/04/25 1812 0
    14620 음악[팝송] 테일러 스위프트 새 앨범 "THE TORTURED POETS DEPARTMENT" 김치찌개 24/04/24 155 1
    14619 일상/생각나는 다마고치를 가지고 욕조로 들어갔다. 8 자몽에이슬 24/04/24 617 17
    14618 일상/생각저는 외로워서 퇴사를 했고, 이젠 아닙니다 18 kaestro 24/04/24 1160 17
    14617 정치이화영의 '술판 회유' 법정 진술, 언론은 왜 침묵했나 10 과학상자 24/04/23 848 10
    14616 꿀팁/강좌[해석] 인스타 릴스 '사진찍는 꿀팁' 해석 20 *alchemist* 24/04/23 698 15
    14615 경제어도어는 하이브꺼지만 22 절름발이이리 24/04/23 1458 8
    14614 IT/컴퓨터re: 제로부터 시작하는 기술 블로그(1) 2 kaestro 24/04/22 359 1
    14613 음악[팝송] 밴슨 분 새 앨범 "Fireworks & Rollerblades" 김치찌개 24/04/22 119 0
    14612 게임전투로 극복한 rpg의 한계 - 유니콘 오버로드 리뷰(2) 4 kaestro 24/04/21 345 0
    14611 사회잡담)중국집 앞의 오토바이들은 왜 사라졌을까? 22 joel 24/04/20 1257 30
    14610 기타6070 기성세대들이 집 사기 쉬웠던 이유 33 홍당무 24/04/20 1584 0
    14609 문화/예술반항이 소멸하는 세상에서 가운데 손가락을 치켜세우는 소녀들 5 kaestro 24/04/20 705 6
    14608 음악[팝송] 조니 올랜도 새 앨범 "The Ride" 김치찌개 24/04/20 136 1
    14607 요리/음식드디어 쓰는 쌀국수 투어 모음집 2편 15 kogang2001 24/04/19 399 8
    14606 요리/음식드디어 쓰는 쌀국수 투어 모음집 1편 4 kogang2001 24/04/19 371 10
    14605 게임오픈월드를 통한 srpg의 한계 극복 14 kaestro 24/04/19 562 2
    14604 일상/생각개인위키 제작기 6 와짱 24/04/17 832 12
    14603 정치정치는 다들 비슷해서 재미있지만, 그게 내이야기가 되면... 9 닭장군 24/04/16 1278 6
    목록

    + : 최근 2시간내에 달린 댓글
    + : 최근 4시간내에 달린 댓글

    댓글