우아한 테크코스 8기 프리코스 2주차 회고

이 글의 목차4개
  1. 프리코스 2주차 회고
  2. 공통 / 백엔드 피드백
  3. PR 코드 리뷰
  4. 2주차를 마치며

프리코스 2주차 회고

2주차는 중간고사 시험기간과 겹쳐서 정말 바빴다!!

시험공부하고, 프리코스 과제 풀고, 스터디 참여하면서 수영도 매일 가려고 하니 시간이 촉박했던 것 같다.

그래도 필요한 공부들을 열심히 하려고 노력했다.

공통 / 백엔드 피드백

1주차 미션이 끝나고 공통 / 백엔드 피드백이 주어졌다. 이미지는 피드백의 일부다.

한 주 마다 제공되는 피드백은 “프리코스 할거면 이 정도는 알아야 해” 라는 기준으로 생각되었기에, 공통 / 백엔드 피드백에 적힌 것들은 모두 공부하고 이해하려고 했다.

5주의 프리코스 동안 가능한 많은 것을 배워가려면, 내가 무엇이 부족한지 정확히 아는 것이 중요하다고 생각했다.

그래서 2주차에는 코드를 작성하는 시간보다 피드백을 확인하고 새로운 개념들을 공부하고 체계적인 설계를 해보는 데에 더 많은 시간을 쏟았다.

PR 코드 리뷰

1주차 미션이 끝난 후 디스코드에는 PR 리뷰를 요청하는 글들이 많이 올라왔다.

나도 PR 리뷰에 참가해서 내 부족함을 찾고 다른 사람들의 지식을 배우려 했다.

그 과정에서 확실하게 느낀 것은 내 코드를 작성하는 것보다, 다른 사람의 코드를 이해하는 것이 훨씬 더 어렵다는 것이었다.

성능보다도 가독성, 유지보수를 압도적으로 중요시하는 이유를 알 수 있었따.

결국 코딩은 협업이니까..

PR 리뷰에서 본 다른 사람들의 코드는 내 것과 확실히 달랐다.

도메인, 검증, 예외 등 역할/책임을 기준으로 패키지가 명확히 분리되어있었고, 읽기도 편했다.

나는 어떤 개발 방법론을 배우고 접목해야 하는지, 그것을 과제에 어떻게 적용할 수 있을지 막막하여 PR 리뷰에서 고수같아 보이는 분께 리뷰와 가르침을 요구했다.

감사하게도 이분은 내게 MVC 패턴, 레이어드 아키텍처, 그리고 메서드 분리 원칙 등 내가 알지 못했던 개념들을 과제에 어떻게 접목할 수 있는지 설명해주었다.

알아야 할 개념이 폭포처럼 쏟아졌고, 근본적인 질문이 계속 맴돌았다.

간단한 어플리케이션에 이런 큰 설계를 적용하는 것이 오버 엔지니어링이 아닐까 하는 것이었다.

이 고민에 대한 답은 요구사항에서 찾을 수 있었는데, 그 내용은 다음과 같다.

‘들여쓰기 깊이를 2로 제한하고, 메서드를 분리하라’

프리코스에서 원하는 것은 단순한 기능 구현이 아니라

당장은 과하게 느껴지더라도, 다양한 아키텍처 패턴을 시도해보고 리팩토링하고 다른 사람과 리뷰하며 많은 경험을 얻어가라는 것이 아닐까 생각했다.

2주차를 마치며

제출 후 1주차 코드와 2주차 코드를 비교해 보았을 때, 구조적으로 많이 발전했음을 느꼈다.

좋았던 것은, 1주차의 다짐처럼 발전한 설계 구조에 대해 내가 왜 이렇게 설계했는지 스스로 설명할 수 있게 되었다는 사실이었다.

물론 아쉬움 점도 존재한다. 새로운 아키텍처를 공부하고 적용하느라 단위 테스트 학습에 충분한 시간을 쓰지 못했다.

내가 설계한 아키텍처가 정말 안전한지 증명해보고 싶다는 생각을 했다. 3주차에는 테스트 코드에 대해 더 공부해볼 생각이다.

2주차는 1주차보다 더 큰 성장을 가져다주었던 것 같다.

난이도가 올라갈 3주차에서는 더 많은 성장이 있을 것이라 생각하니, 두려움보다 기대감이 앞선다.

2주차 자동차 경주 미션 PR 링크

전체 글 보기