brunch

You can make anything
by writing

C.S.Lewis

by zwoo Jan 17. 2021

코드리뷰 받을 때 긴장 푸는 법

코딩테스트 스터디 1주차

풀 리퀘스트에 리뷰가 달렸다는 알림이 뜨면 덜컥 겁이 난다.


코딩테스트는 주어진 문제상황을 해결할 수 있는 효율적인 방법을 제한된 시간 내에 찾아내는 서술형 시험이다. 많이 풀다 보면 분명 패턴이 보이고 어떤 자료구조를 이용하는 문제인지 유형화할 수 있겠지만 이제 막 시작하는 입장에서는 알고보면 쉬운 문제라도 처음 맞닥뜨렸을 때는 알고있는 자료구조들이 머릿속에 뒤섞여있어 꺼내 쓰기가 어렵다. 꼭 활용해야 하는 정보를 미처 모르고 있을 수도 있다는 두려움도 생기고. 그래서 코드리뷰를 요청하는 PR(풀리퀘스트)*에 정말로 리뷰가 달리면 심장이 쿵쾅댄다. 그 이유는 몇가지가 있다.


하나, 아이디어가 좀처럼 떠오르지 않아 다른 사람의 코드를 참고했음에도 전혀 감이 안 잡혀서 아이디어를 달라는 식으로 리뷰요청을 했기 때문

둘, 스스로든 힌트를 얻어서든 코드를 작성했지만 급하게 풀어서 시간복잡도가 높거나 구조가 효율적이지 않아서

셋, 시간복잡도나 효율성을 따지는 방법조차 잘 모르겠어서 간신히 답만 구해서 리뷰요청을 했기 때문


현재 내 실력은 프로그래머스 사이트 기준으로 1.5단계를 복잡성, 효율성 고려까지는 못 하고 정답을 구해낼 수 있는 정도이다. 즉, 탈락권이다. 그래서 이번 스터디에 참여하면서 나의 목표는 (리더 분의 조언도 구해본 결과) 2단계를 원활히 풀 수 있는 정도로 잡고 문제풀이에 임하고 있다.



어떻게 하면 겁을 안 먹을 수 있을까?

실은 조금 전 그 탁월한 방법이 떠올라서 공유하려고 이 글을 쓰기 시작한 것이다. 코드리뷰를 두려워하지 않는 방법은 바로 리뷰알림이 왔을 때 이메일로 미리보기만 훑지 말고 곧바로 깃허브로 들어가 살펴보는 것이다. 코드리뷰에 겁을 먹으면 단점은 보기보다 치명적인데, 일단 계속 미루게 되고, 미리보기만 슬쩍 보면 쓸데 없이 상처를 받아 그 과제의 부속과제(추가 수정 후 재리뷰 요청)에 거부감이 생긴다는 점이다. 스프린트 형식으로 짧은 기간동안 진행되는 스터디에 이런 미루기와 거부감은 독이 된다. 특히 하루종일 공부할 시간이 나는 처지가 아니라면 단 10분이라도 집중해서 자료구조를 머리에 넣고 언제든 꺼내볼 수 있게 정리도 해야 되기에 조금이라도 미루거나 무기력해질 틈 같은 건 없다. 그러니까 곧바로 봐야 한다


신기하게도, 알림이 오자마자 깃허브로 달려가면 알림을 미리보기 했을 때와는 태도가 급격하게 바뀌게 된다. 일종의 모드 체인지가 일어나는 것이다. 물론 나만 그럴 수도 있다. 나의 경우에는 이메일로 리뷰내용을 미리보았을 때는 마치 내가 못한 것들만 주구장창 나열된 성적표를 바라보는 심정이 들었는데, 이를 악물고 깃허브로 접속해서 찬찬히 살펴보니 아까 느낌과는 전혀 딴판으로 리뷰어의 정성 가득한 조언과, 내 입장에서 같이 고민해주는 세심한 제안들이 마음에 와닿았다. 그리고 다시한번 고쳐서 제출해봐야겠다는 의지가 피어났다.


자기 코드에 만족하는 사람이라면 리뷰의 필요성을 못 느낄 수도 있을 것 같다는 생각이 든다. 하지만 나는 아직 그런 분을 만나본 적이 없다. 많은 경우에 자기가 설계한 구조에 혹시 모를 버그가 있을지 염려하고, 좋은 제안을 줄 수 있는 리뷰어를 환영했다. 그동안 나는 내가 그런 '대단하지만 겸손한' 입지에는 미처 다가서지 못한 작고 하찮은 소프트웨어 개발자라고 생각했으나, 그냥 나도 그중 한사람이라고 생각하기로 했다. 그들이라는 집단과 나라는 사람을 분리해서 생각하면 나에게는 한계가 생기고 말 것 같으니까.




TMI
그럼 다시 ,문제를 풀러 가봅니다.

라이브 코드리뷰 받을 때에 긴장 푸는 법도 언제한번 써볼까 합니다. :)








*PR (풀리퀘스트) 이란 : https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/about-pull-requests


Photo by Markus Winkler on Unsplash


        

이전 02화 사람들이랑 말하는 게 어려워서요
brunch book
$magazine.title

현재 글은 이 브런치북에
소속되어 있습니다.

작품 선택
키워드 선택 0 / 3 0
댓글여부
afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari