메뉴 바로가기 검색 및 카테고리 바로가기

한빛미디어

독자리뷰

협업에 임하기 전 반드시 읽어야할 책

jrcfore***

|

2024-05-26

더 나은 프로그래머 되는 법

더 나은 프로그래머로 거듭나는 법, 선배 개발자의 39가지 노하우 공개

  • 저자 : 피트 구들리프
  • 번역 : 최원재 , 강전희 , 안재덕 , 남윤화
  • 출간 : 2024-04-30

안정화된 개발이란코드의 input 대비 ouput이 항상 일정함만을 의미하지 않는다진정한 의미에서 안정화된 코드란내가 아닌 다른 누군가가 나의 코드를 이용하여 신규 기능을 추가하거나 서비스를 개발할 때에도 안정적인 결과가 나오는 것을 안정화된 개발이라 한다.'

 

1인 개발자라면 솔직히 코드의 컨벤션이나 변수 명명 규칙함수 명명 규칙 따위 등에 대해서 크게 신경을 쓰지 않아도 된다어차피 나 혼자 볼 코드이고 나 혼자 유지 보수할 코드인데위의 것들에 대해서 그리 신경 쓸 이유가 있을까?

 

하지만 회사나 스타트업에서 다 함께 일을 하게 되면 위의 부분은 전혀 다른 이야기가 된다왜냐하면 더 이상 이 코드는 나만의 것이 아니기 때문이다정확히 말해서는 내가 이제껏 해왔던 개발 문화는 나만의 개발 문화가 아니게 되기 때문이다.

 

연차와 경력이 쌓이고여러 플랫폼을 오가며 개발을 할수록 개발자들은 자신만의 개발 철학과 문화를 형성하기 시작한다특히 기술 스택에 있어서 말이다다만이러한 기술 스택에 초점을 둔 성장에는 큰 문제점들이 있다가령 몇 가지 예를 들자면 협업이라는 관점에서 누군가 나의 코드를 유지 보수할 때누군가 나와 함께 코드 리뷰를 할 때누군가 기능을 추가할 때 참고하라고 내가 만든 기능을 문서로써 공개할 때그동안 다양한 기술 스택의 전문성을 쌓는 데에만 집중한 나머지 협업이라는 관점에서는 연차 대비 기대했던 협업이라는 관점의 점수는 낙제점을 받을 가능성이 높다.

 

이 책은 그동안 개발자들이 간과하기 쉬웠던 협업이라는 관점에 초점을 두어 '초보중급고급 개발자'들이 반드시 알아야 하는 내용에 대해서 친절히 가이드 한 책이다.

 

더욱이 실무자들이 자신들의 겪었던 경험을 토대로 집필한 책이기에 단순히 이론이 아닌실제로 언제든 우리가 대면할 수 있는 리얼 월드에서의 상황을 책에 고스란히 녹여냈다는 점에서 의의가 크다.

 

【책의 구성】 "더 나은 프로그래머 되는 법"의 구성은?

 

책의 구성은 간단 명료하다.

 

처음에는 이론과 배경에 대해서 설명하고 이후 저자들이 해당 챕터에서 독자가 좀 더 깊게 사유해 봤으면 하는 내용에 대해서 질문하고마지막에는 가상의 시나리오를 통해 독자 본인이 어떠한 상황에 놓였다는 가정하에 어떻게 해결할지 등에 대해서 고민하는 내용으로 마무리하고 있다.

 

이 책의 내용은 모두가 주옥같고 의미 있으며정말 필자가 주니어 개발자로 돌아간다면 한 달 간격으로 반복해서 읽었을 법한 내용으로 가득 차 있다.

 

반드시 읽어보시길 권장한다.

 


 

챕터 1~2 : 코드에 신경 쓰기정돈된 코드 유지하기

개발자에게 코드는 개발이라는 인생을 통틀어 때려야 땔 수 없는 인생의 동반자의 느낌이라 할 수 있다또한 코드는 개발자의 정신세계를 대변하는 언어이며 그의 철학을 녹여내는 수단이기도 하다.

 

그런 코드를 이용하여 우리는 프로그램이라는 집을 짓고그 프로그램에는 수많은 사용자가 오가며 흔적을 남기게 된다.

 

코드는 돌아가야 한다옛날에도 그렇고 지금도 그렇고 가장 중요한 부분이다아무리 아름답고 깔끔하고 위대한 철학이 담긴 코드더라도 그 코드가 바르게 동작하지 않는다면그 코드는 단순 단어를 나열한 무엇인가?에 불가하기 때문이다.

 

하지만 코드가 앞서 말한 것처럼 돌아가는 데에만 치중하게 되면 그 코드는 유지 보수의 관점에서 그리고 협업의 관점에서 에러투성이의아무도 이해할 수 없는 그런 사고뭉치로 전락해버리고 말 것이다.

 

그렇기에 우리는 인생의 동반자 코드를 모두가 함께 돌아가는 프로그램이 될 수 있도록 가꾸고 보듦는 법을 배워야 한다

 


 

챕터 3 : 코드 적개 사용하기

 

어떤 개발자는 코드를 길게 쓰는 것을 코드의 미학이라 생각하는 사람들이 있다. 보다 복잡하고 보다 이해하기 어렵고 보다 고상한 나만의 코드.. 필자는 그것을 "코드로 아트를 한다!"라고 종종 표현한다.

 

코드로 아트를 할 수 있다하지만 아트는 보는 사람마다 해석이 다르며이를 통해 세계관을 넓히고 세상의 경계를 허물기 위해서 하는 것이다.

 

하지만 코드는 아트가 될 수 없다코드는 서비스이며 서비스는 현실의 경계를 허물기 위해서 보단현실에서 일어나는 무엇인가의 문제를 효율적으로 해결하기 위한 것이기 때문이다.

 

이 챕터를 읽는다면 확실히 이런 부분에 대해서 왜 코드를 간결히 사용해야 하는지에 대해 이해할 수 있다.

 

【 더 나은 프로그래머 되는 법을 읽고 나서 】

 

개발자의 시장이 옛날과는 비교할 수없이 성장한 것이 요즘이다그만큼 개발자의 처우도 좋아졌고 개발에 임하기에 좋은 환경이 되었음을 의미한다.

 

다만개발에 임하기 좋은 환경이 된 만큼개발에게 필요되는 역량 역시 덩달아서 증가하고 있다특히 요즘과 같이 소프트웨어 한 개의 복잡도와 규모가 점점 거대해지는 시국 속에서 1인 개발자 혼자서 만드는 소프트웨어의 퀄리티는 굉장히 한정적일 수밖에 없다.

 

그 말은 즉이제는 프로그래밍을 함에 있어서 협업은 필수불가결의 요소라 할 수 있다는 점을 밑바탕에 깔고 시작해야 됨을 의미한다.

 

협업을 하기 위해서는 단순히 알고리즘을 잘 짜고문제를 본인의 인사이트와 뷰에서 쉽게 해결하기만 하면 안 된다누군가 나의 코드를 보았을 때, 그리고 누군가와 커뮤니케이션을 할 때이곳에서 발생하는 비용을 최소화하고 함께 이해하기 쉬운 코드를 만들기 위해 분투해야 함을 의미한다.

 

나만의 코드가 아닌우리 모두의 코드가 될 수 있도록 노력해야 하는 시대가 바로 지금인 것이다.

 

본 도서는 "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?