어떤 개발자가 되고 싶니? - 일의 본질과 취업 고민의 해결책을 알려주는 “25년 차 현실판” 개발자 이야기
박동기 지음 / 슬로디미디어 / 2023년 1월
평점 :
장바구니담기



https://blog.naver.com/johnpotter04/223121831516

개발자를 위한, 개발자를 이해하기 위한

개발에 관련된 모든 사람을 위한 책

오랜 기간 개발자로 근무해온 배운 교훈을 후배 개발자를 위해 한 권의 책에 담았다. 출판사 설명에 '바이블'이라는 말이 있어서 어려운 컴퓨터 용어가 가득할 수 있겠다며 각오를 하고 읽었는데, 예상과 너무나 달랐다. 오랜 개발자의 연륜이 담긴 에세이랄까. 실무보다 마음가짐에 대해 주로 이야기한다.

무슨 조언을 담았을까

인간을 사랑하는 철학자로서의 개발자

시작은 저자가 겪은 개발자의 근로 환경 변화였다. 저자의 경험으로 말미암아, 급변하는 세상 속 개발 업무에 몰두하다 놓치기 쉬운 것에 대해 이야기한다. 저자가 겪어 본 바에 따라 커뮤니티 활동, 인맥 관리 등 사회생활을 소홀히 하지 말라고 조언한다. 같이 일하는 개발자 친구가 회사에서 하루 종일 말 한번 하지 않고 퇴근한 적도 있다고 한 게 떠올랐다. 개발 업무에 집중하다 보면 사회 활동에 소홀하기 쉬운 가보다 했는데, 저자는 그 점을 콕 짚었다. 개발은 자신과의 싸움이라고 흔히들 이야기하지만 혼자서는 성장할 수 없기에, 여러 사람과 교류해야 한다는 거다.

책 곳곳에서 저자의 산책과 명상을 만났다. 개발을 하다 보면 마땅한 해답이 떠오르지 않아 막힐 때가 많은데, 저자는 산책을 하며 생각을 정리한다고 한다. 앞에 앉아 있는다고 해법이 나오는 건 아니기 때문에, 잠시 자리를 비워 머리를 비우는 건 어떠냐고 이야기한다. 첨언하자면, 이런 상황에선 운동도 좋은 방법이다. 스트레스가 쌓이고, 브레인 포그가 왔을 때 1시간 정도의 운동은 머리를 맑게 한다. 컴퓨터 메모리 클린과 같은 느낌이랄까. 귀찮고 힘들더라도 한번 땀을 빼고 나면 세상 그렇게 개운할 수가 없다.

(최근 근손실이 올 정도로 운동을 못하고 있는데, 다시 한번 반성하며 헬스장에 출석하리라 다짐한다)

시니어 개발자의 조언

지극히 현실적인, 실무자로서의 이야기

책에서 차지하는 비중이 인생철학이 반이라면, 나머지는 개발 실무였다. 여러 실무적인 조언 중 가장 인상 깊었던 부분은 SRS 문서에 대한 이야기였다. SRS 문서를 작성하지 않고 개발하는 곳도 많은데, 저자는 반드시 SRS를 먼저 작성하라고 조언했다. 소프트웨어 요구 명세서인 SRS는 기획서이자 설계도다. SRS를 기반으로 소프트웨어를 개발하며, 신입 개발자의 온보딩용으로도 유용하다. 따라서, 중요도가 높은 프로젝트일수록 SRS에 심혈을 기울인다고 한다. SRS가 있으면 프로젝트를 체계적으로 관리할 수 있으며 프로젝트 종결 후 유지 보수가 쉬워진다고 한다.

코드에 개발자의 품격이 담겨 있다고 한다. 코드를 보면 어떤 사람인지 파악할 수 있을 정도라고 한다. 깔끔하면서 구조화되어 있고 다른 개발자가 이해하기 쉽도록 주석이 달려있는 코드를 작성하는 게 핵심이다. 책을 읽고 나니 화장실 표어인 "아름다운 사람은 머문 자리도 아름답다."가 떠올랐다. 코드도 이와 다를 게 없지 않을까. 품격 있는 개발자는 품격 있는 코드를 작성하기 마련 아닐까.

일 잘하는 개발자는 비즈니스 인사이트를 갖춘 사람이라며, 도메인 지식을 도외시하지 말 것을 당부했다. 도메인 지식은 소프트웨어 구현 방법에 대한 기초 지식을 제공하며, 사용자가 필요로 하는 걸 이해할 수 있다고 한다. 얼핏 들으면 당연한 이야기인데, 도메인 지식에 소홀한 개발자도 많기 때문일 거라 지레짐작해 본다. "장인 정신으로 개발하라.", 사용자에게 매력적이고 유용한 소프트웨어를 개발해야 한다는 것이 결론이다.

오랜 경력으로 관리 직군을 거쳐서 그런가, 개발자를 고용한 IT 회사 경영진에 대한 쓴소리도 빠지지 않았다. 개발자는 배우고 성장하지 못하면 도태된다는 생각을 갖기 마련이기에, 회사는 개발자가 성장할 수 있는 환경을 조성하고 확실한 비전을 제시해야 한다. 개발자의 이직률이 높다면, 회사가 명확한 비전을 제시하지 못했기 때문일 가능성이 높다고 한다. 이직률이 높은 데에는 다 이유가 있다.

특히, 게임 업계에서 유명한 크런치 모드(게임 출시 시기에 맞춘 밤샘 근무)는 시니어 개발자는 퇴사를, 주니어 개발자는 경력만 채우고 이직을 하게 하는 악순환으로 이어진다. 개발은 장거리 마라톤이기 때문에 야근을 하지 않는 게 오히려 생산성을 높인다고 한다. 코딩 공장 등 개발 계의 악습이 너무나 유명하기에 별다른 설명이 필요 없었다. 점차 나아지겠지라며, 근거 없는 낙관적으로 미래를 기대하지만, 정부에서 주 69시간제를 거론하는 걸 보면 갈 길이 먼 거 같다.

개발자의 이런저런 이야기를 들을 수 있는 책이었다. 책을 읽으면서, 주변 개발자 친구가 떠오르기도 했고, 데이터를 다루는 나 자신을 되돌아보기도 했다. 개발에 관심이 있거나 개발자로 근무하고 있는 사람이라면, 읽어보는 걸 추천한다.

출판사에게 책을 제공받아 작성한 리뷰입니다



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo