기술 부채, 좋은 프로그래머란? 첫 코드 리뷰 😂

shleecloud·2022년 4월 19일
2

JobSearching

목록 보기
8/10
post-thumbnail

들어가며

채널코퍼레이션 Frontend 실무 과제 후기이기도 하다. 결과부터 말하면 불합격했다. 하지만 기분이 썩 나쁘지는 않다. 오히려 상쾌하고 시원한 기분이 더 크다. 정말 좋은 기업이라고 느꼈고 생각하게 만드는 바가 많아서 이 글을 작성한다.

코드 리뷰

처음으로 코드 리뷰라는 것을 받아봤다. 지원자가 많았을탠데 이렇게 결과까지 친절하게 알려주다니. 실무 과제 피드백은 처음 받아본다. 아니 코드 리뷰 자체가 처음이다.

아래와 같이 현업에서 주신 피드백 전달드립니다.
Key prop에 index를 지정하고 있는 경우가 있습니다. React에서 key prop으로 array에서의 index 등 데이터를 대표할 수 없는 값을 사용하거나 랜덤 값을 이용하는 것은 안티 패턴입니다. 추후 항목간의 순서가 변경되거나 일부 항목이 삭제되는 스펙이 들어가는 경우 제대로 동작하지 않을 것입니다.

redux middleware 로직 라이브러리인 redux-thunk, redux-saga를 사용하지 않고 view단에서 처리한 것은 redux 로직이 view에 너무 의존하게 되어 좋지 못한 구조입니다.

채널톡 F/E 팀은 React와 Redux를 적극적으로 활용하고 있으며, React의 안전한 DOM 접근과 Redux의 불변성, 그리고 성능을 매우 중요하게 여기고 있습니다.
그러나 OOO님께서 제출해주신 과제에서는 저희가 기대했던 부분과 조금 다른 점들이 있었습니다.

실시간으로 쌓는 기술 부채

부트캠프 수료 프로젝트에 들어가고부터 정말 아쉬웠던 부분. 코드 리뷰였다. 내가 작성한 코드가.. 정말 좋은 코드인지 좋은 구성인지 알 길이 없다. 물론 잘~ 찾아보면 참고 자료나 정보를 찾을 수는 있었다.

변명을 조금 하자면 여러 면접과 과제 일정이 겹쳐있었고 조금 쫓기면서 작성했던 코드였다. 항상 시간이 부족한 상황에서 코드를 작성하다보니 정말 좋은 코드와 구성. 최선의 코드를 고려할 수 없었다. 시간 한계상 그 당시의 최선의 코드가 되어버린거다. 작성하자마자 레거시가 되는 코드들을 나도 모르게 만들고 있었다. 맙소사. 이렇게 기술 부채란게 생기는구나.

하지만 가장 근본적인 원인은 이 정도의 환경에선 이렇게 짜도 되겠지 라는 안일한 생각이 제일 컸다. 하지만 내 환경은 급하게 구성해야 되는 서비스가 아니었다. 면접이었다. 면접관 입장에선 실제 서비스 환경에서도 이렇게 짜지 않을 것이란 보장이 없다.

기술 부채

좋은 프로그래머가 되는 길

그렇게 거창한 리뷰는 아니었다. 하지만 나에게 큰 영감과 감사함을 줬다. 그동안 나에게 코드 조언을 해주는 사람이 없었다. 단편적으로 조언을 얻을 수는 있으나 하나하나 들여다보면서 이건 이렇고 저건 저렇다 라고 말해줄 사람이 없는거다. 이게 정말 무서운데 뭐가 잘못된지 모르고 있으면 계속 그 것을 반복하게 된다.

그리고 이렇게 면접자가 많은 환경에서 금방 문제점을 찾아내서 피드백을 주는 것을 보니 자체 테스트 툴을 돌린 것 같다. 테스트가 이렇게나 중요하구나. 고수 개발자의 코드 리뷰를 자동으로 받아볼 수 있다.

좋은 프로그래머에 대한 글이 생각난다. 좋은 프로그래머는 코딩부터 시작하지 않는다. 라는 말이 이렇게나 중요하다. 내가 사용하는 언어, 프레임워크에 대해 정말 확실하게 아는게 무엇보다 중요하다고 느꼈다.

10배 이상 뛰어난 개발자가 되는 법 | 요즘IT

마치며

돌아보면 조금 부끄러운 글이다. 후회하는 내용이기 때문이다. 하지만 이 글로 확실한 것은 채널코퍼레이션은 정말 좋은 기업이라는 사실과 기술 부채의 무시무시함이다. 자신이 기술 부채가 있었는지 자가진단을 하는... 그런 계기가 됐으면 좋겠다. 밀렸던 기술 부채 청산.. 이제 해야겠지? 😎 

시간이 된다면 클론 코딩 같은 강좌들도 조금 들어봐야겠다. 단순하게 복붙하려고 보기보단 고수들이 어떻게 코딩을 짜는지 궁금하다.

profile
블로그 옮겼습니다. https://shlee.cloud

0개의 댓글