될때까지

((WnB)) 위코드 2차 프로젝트 회고록 본문

프로젝트/wecode2차 : WnB

((WnB)) 위코드 2차 프로젝트 회고록

랖니 2022. 8. 13. 00:14
728x90

 

 

🏨 시연영상

 

🏨 담당했던 기능

  • 카카오 소셜 회원가입
  • 로그인
  • 로그인 데코레이터
  • 회원 정보 수정
  • 호스트 집 등록하기 API
  • 소셜 로그인 unit test 

 

🏨 아쉬웠던 점

  • 2주라는 시간은 정말 너무 짧다.
  • 해보고 싶은 기능이 너무 많았는데 다 못한 점이 아쉽다(리뷰/결제/상품 필터).
  • 프로젝트 발표 하루 전에 다급하게 프론트와 백엔드를 연결해서 테스트하다보니 예상치 못한 에러가 계속 나타났고, 시간을 많이 뺏겼다. E2E 테스트 시 문제 원인을 빠르게 파악하지 못해 나 자신에게 너무 화가 났다. 내가 조금 더 많이 알고 잘했다면 훨씬 빠르게 , 그리고 더 완벽한 프로젝트 영상을 찍었을텐데 열심히 한 만큼 다 담지 못한 게 아쉽다.

 

🏨 잘한 점

  • 프론트를 잘 만났다. 프론트 분들이 모두 능력자여서 사이트가 너무 예쁘게 만들어졌다. 그래서 꼭 리팩토링 및 추가기능까지 구현해서 완성시키고 싶은 욕심이 생겼다.
  • 담당했던 기능 구현 후, 페이지는 없었지만 남들 다 사용하는 S3를 써보고 싶었고 그래서 추가적으로 호스트가 집을 등록하는 기능을 구현했다. 실제로 해당 기능 구현할때 남은 시간이 하루밖에 없었는데 정확한 개념 정리 없이 일단 코드를 가져다 사용하고 내 코드에 맞게 수정했는데 잘 동작해서 쉽게 끝났다. 개발자는 코드를 가져와서 내 코드에 맞게 잘 적용시키는 것도 능력이구나 하고 느꼈다. 
  • 프론트와 통신 시 코드를 100%이해는 못했지만 눈으로 따라 읽었다. 1차때는 아무 코드도 몰랐지만, 1차 덕분에 2차때는 통신시 잘못된 url을 찾아 예약 기능을 영상에 담을 수 있어서 기뻤다.

 

🏨 못한 점

  • 생각해보니 팀에 리드가 없었다. 다들 기업협업과 1차 프로젝트로 조금씩 지쳐있었는데 그 누구도 push하지 않았던 점이 조금 아쉽다. 때로는 팔로우가 되고 때로는 리드가 되는, 둘다 가능한 그런 개발자가 되야겠다고 느꼈다.
  • 팀원들이 담당하는 코드가 안풀려서 스트레스받고 있을 때, 문제를 해결해주고자 나섰지만 그 누구도 명확하게 숙지가 된 사람이 없어서 코드짜는 시간보다, 고민하는 데 너무 많은 시간을 썼다. 나 자신에게 화가 났다. 1인분에 만족하지 말고 1.5인분을 하는 개발자가 되고 싶다. 

 

🏨 느낀 점

  • 역시 협업으로 이뤄지는 팀 프로젝트는 재밌다. 프론트와 소통 시 실제로 내가 담당했던 기능에서 에러가 발생했다. 그때 진짜 신나고 즐거웠다(변태 아닙니다). 에러를 해결했을 때의 그 짜릿함과 성취감을 즐긴다. 좋아한다. 로그인 시 토큰을 발급해서 보내주는데, 예약 기능에 로그인 데코레이터를 적용시켰음에도 불구하고 다른 유저로 예약이 됐다. 도대체 가능한 일인가? 상당히 흥미로운 에러였다. 해당 문제가 해결되지 않으면 예약 상세 페이지를 보여줄 수 없었다. 프론트 팀원들은 이 오류가 해결 안되면 프로젝트 영상 찍는 의미가 없다고 말해서 순간 부담감에 어깨가 무거웠었다. 근데 그럴 수가 있나? 로그인 성공시 토큰을 암호화할때는 로그인 요청을 보낸 유저의 PK를 가지고 암호화를 진행했다. 하드코딩하지 않았다. 디코드 역시 마찬가지 논리로 이뤄지는데 어떻게 해당 에러가 발생할 수 있는거지? 아무리 생각해도 내 코드에는 문제가 없어보였다. 당당하게 여러분 제 코드는 문제가 없어보이는데, 혹시 요청을 보내는 프론트측에서 무언가 잘못된 것 아닐까요? 하고 똑부러지게 말했으면 좋았겠지만 그때는 너무 당황했고 어 왜이러지 '왜'에 빠져서 시간만 축냈다 ㅠ_ㅠ  조금 더 시간적 여유를 갖고 코드를 맞춰봐야 했는데 급하게 진행했기 때문에 다들 예민했었다. 시간이 여유가 있었다면 쉽게 해결했을 문젠데!! 시간이 많았다면 코드를 작성했던 분도 자리에 계셨을 테고, 직접 해당 기능을 구현한 담당자들끼리 의사소통을 했으면 쉽게 해결했을텐데!!
  • 한편으로는 유저정보를 가지고 토큰을 만들고, 보낸 토큰을 복호화해서 검증하는데 계속 다른 유저로 데이터가 생성된다고? 이거 그러면 토큰을 만들 때 하드코딩했거나 백에서 만든 API로 요청을 보낼 때 유저 데이터를 잘못보낸거아닌가요 라고 논리적으로 문제를 해결하지 못한 점이 아쉬웠다. 그래도 해당 경험을 토대로 프론트의 코드를 조금이나마 읽을 수 있었다. url에 하드코딩되어있던 유저id를 내가 찾았으니까!! 백엔드도 아니고 프론트의 코드를 살펴보면서 잘못돈 부분을 찾아냈을 때 정말 기분이 좋았다. 나 이러다가.. 풀스택 하는거아냐? 히힣
  • 프로젝트의 시작과 끝은 소통에서 소통으로 끝난다. 아직 두번밖에 진행하지 않았기에 100%완벽한 소통은 무리지만 1차보다 나아졌고 내가 맡았던 기능은 프론트와 소통에 문제가 없었기에 소통부분에서 나는 만족한다. 
  • '탓'하는 개발자가 싫다. 이제가지 경험했던 E2E 에러의 주 원인은 "소통의 부재"였다. 에러가 나타났을 때 니가 잘못했네와 같은 방식은 정말 지양해야한다. 지금 내 페이스처럼 에러가 발생하면 서로가 서로의 코드를 보면서 같이 해결하는 방식 절대로 사수하겠다. 

 

🏨 협업 툴

API 명세서
Trello

 

728x90