본문 바로가기
ETC/BOOK

[개발 자기계발서] 육각형 개발자 (최범균)

by 아이엠제니 2024. 8. 5.

 

 
육각형 개발자: 시니어 개발자로 성장하기 위한 10가지 핵심 역량
스포츠계에서 각종 능력치가 고루 균등한 선수를 육각형 선수라고 부른다. 이 책의 제목이기도 한 육각형 개발자는 다양한 역량을 고루 갖춘 개발자라는 의미이다. 건강한 몸을 갖기 위해 여러 가지 영양소가 필요한 것처럼 좋은 개발자가 되려면 구현 기술 외에도 여러 역량을 키워야 한다. 모든 역량을 다 잘하기는 어렵지만 골고루 발전시킬 수는 있다. 이 책에 담긴 개발자 필수 역량을 살펴보면서 좋은 개발자로 성장하는 데 필요한 인사이트를 얻을 수 있을 것이다.
저자
최범균
출판
한빛미디어
출판일
2023.07.22

 


 

 

 

예전에 한번 읽었었는데, 갑자기 읽고 싶다는 생각이 들어서 다시 읽게 되었다. 책 제목은 『육각형 개발자』인데 의미가 있었다. 스포츠계에서 다양한 능력치가 고루 균등한 선수를 '육각형 선수'라고 부른다고 한다. 이 책에서도 역량을 고루 갖춘 개발자라는 의미로 '육각형 개발자'라는 타이틀을 가지게 된 것 같다. 부제는 '시니어 개발자로 성장하기 위한 10가지 핵심 역량'이다. 저자는 '최범균'님으로, 코딩하는 걸 좋아하고 나이도 들어서도 코딩을 하고 싶은 개발자이시라고 한다. 이 책은 좋은 시니어 개발자가 되길 원하는 주니어 또는 중니어 개발자를 대상으로 한다.

 

  1. 구현 기술과 학습
  2. 소프트웨어 가치와 비용
  3. 코드 이해
  4. 응집도와 결합도
  5. 리팩터링
  6. 테스트
  7. 아키텍처·패턴
  8. 업무 관리
  9. 정리하고 공유하기
  10. 리더와 팔로워

 

이 책이 기억에 남았던 이유는 그때 당시 내가 가지고 있던 고민을 조금은 해결해 주는 느낌이 들었기 때문이다. 책의 초반에 저자도 사회 초년생일 때는 구현 기술을 사용해서 코드를 작성하는 것이 개발이라고 생각했다고 한다. 이 책을 읽을 당시의 나는 사실 개발이랑은 완전 거리가 먼 일을 하고 있었고, 어쩌면 앞으로 하게 될 일도 개발이 아니라 유지보수를 하는 일일 것 같았다. 그래서 과연 유지보수를 하면서 개발도 잘하게 될 수 있을까(?)하는 의구심 같은 게 있었던 것 같다. 하지만 이 책을 읽고 난 후에는 조금 생각이 바뀌었다. 유지보수만 한다고 하여 실력이 늘지 않는 것은 아니라는 것. 사람이 계속 뭔가를 만들기만 할 수 없지는 않나. 하다 보면 다른 사람이 만든 코드를 계속 보면서 유지보수하고, 리팩터링을 해야 할 수도 있으니 말이다. 나 또한 편협한 생각이 갇혀 있었던 것 같다. 저자는 말한다. 지금 당장이 아니라도 언젠가 기회는 온다고 말이다. 지금은 이 일을 할지라도, 나 또한 차근차근 준비를 하다 보면 그런 기회가 오지 않을까(?)라고 생각한다. 지금 상황이 불만스럽다고 하여, 불만만 갖고 하지 않는 건 그거대로 어리석은 일인 것 같다.

 

그 외에 개발을 하기 위한 다양한 역량에 대한 내용을 확인할 수 있다. 개인적으로 리팩터링에 관심이 조금 있어서, 이 부분을 유심히 봤던 것 같다. 이전에 작성된 다른 사람의 코드를 보는데, 한 메서드 안에 너무 많은 코드가 들어있었다. 모르는 기능들도 있어서 시간이 더 오래 걸렸지만, 코드가 길다 보니 이해하는 것도 쉽지 않았다. 그런 찰나에 리팩터링 부분을 보니, 어떻게 하면 나도 이해하기 쉽고, 다른 사람도 이해하기 쉽게 기존의 메서드를 리팩터링 할 수 있는지에 생각해 볼 수 있는 계기가 되었던 것 같다. 개인적으로 메서드명 짓는 게 쉽지 않다고 생각했는데, 그 부분에 대해서도 알 수 있었다. 메서드명이 짧아서 이해할 수 없는 것보다는 길더라도 이해할 수 있는 네이밍이 낫다는 것. 나뿐만 아니라 다른 개발자가 볼 것도 고려하여 이런 부분도 의식하며 네이밍을 하고, 프로그래밍을 해야 하는 게 아닌가 싶다.

 

그리고 또 관심 있게 읽었던 부분은 정리하고 공유하는 부분이다. 무언가를 정리한다는 것도 그리고 적는 것도 쉽지 않다고 생각한다. 하지만 쉽지 않다고 하지 않는다면, 내가 가지고 있는 지식이나 생각은 증발해 버리기 마련이다. 어떤 문제를 해결하는 순간에도, 그 순간에는 알 것 같지만 막상 시간이 흐르면 잊히기 마련이다. 그리고 내가 언젠가 반복적으로 해서 익숙했던 어떤 것도 시간이 오래 지난 후에는 잊히기 마련이다. 그렇기 때문에 어딘가에 남기는 것은 더 중요한 일이라고 생각한다. 중요하다고 생각은 하지만, 여전히 쉽지 않은 건 맞다. 왜냐하면 나 또한 이 티스토리를 유지하기까지 여러 번은 사라졌다가 다시 돌아왔기 때문이다. 개발적인 지식이 아직 부족하다 보니, 내가 알 것 같은 것도 글로 풀어서 쓰기는 쉽지 않았다. 여전히 쉽지 않지만, 그럼에도 나중에 내가 보고 누군가에게는 도움이 되지 않을까 싶어서 남기려고 노력하는 중이다. 개발과 관련된 글을 적기 어렵다면, 일상 글부터 적어보는 것도 방법이라고 한다. 처음부터 너무 거창하게 생각하면, 그 거창함에 눌려 갑자기 포기해 버릴 수도 있다. 그러니 천천히 도전해 보기. 

 

책의 맺음말에서 『테크니컬 리더』 책에 나온 문장이 나온다 '자신의 교육은 스스로 책임진다.' 그렇다. 나의 배움은 누구도 채워줄 수 없다. 나의 교육은 누구도 대신해 줄 수 없다. 그 의지는 나만이 가질 수 있는 거다. 한동안 잊고 지냈던 순간들이 있었다. 하지만 다시 정신 차려서, 나를 위한 교육에 매진하는 중이다. 더 나은 사람이 되고 싶고, 더 잘하는 사람이 되고 싶다면 그런 사람이 될 수 있도록 노력을 해야 하는 게 당연하니 말이다. 다시 읽으니 이전에는 잘 몰랐던 것들이 이해가 되는 부분들이 있었다. 나중에 다시 읽을 때는 지금보다도 이해하는 폭이 더 크지 않을까 기대하며, 나와 비슷한 고민을 가지고 있는 누군가라면 읽어 보길 추천한다.

 

 

 

더 나은 방법을 찾으려고 노력해야 한다는 것이다. 방법을 잘 모르거나 구현하기 어려운 문제가 생겼을 때 해결하기 위한 더 나은 방법이 있는지 찾아봐야 한다. 그래야 기술을 더 잘 이해하고 활용할 수 있게 된다.
p.38

 

결국 역량 향상은 스스로 책임져야 한다. 스스로 노력하지 않으면 역량은 늘지 않는다.
p. 271

 

 

 

 

 

300x250