본문 바로가기
교육/빗썸 테크 아카데미

[빗썸테크아카데미] 백엔드 과정 4주차(팀프로젝트 1주차) 후기, 회고록

by 디토20 2022. 5. 11.
반응형

 

 

[빗썸테크아카데미] 백엔드 과정 4주차(팀프로젝트 1주차) 후기, 회고록

 

코드스테이츠에서 빗썸테크아카데미를 신청해서

과제를 제출하고

첫 수업을 듣고 난 후

 

내가 이걸 끝까지 할 수 있을까?

라는 생각이 든게 벌써 4주나 지났다니 ㅎㅎ

 

3주는 강의를 열심히 달리고

3주는 팀프로젝트를 진행하는데

 

이제 팀프로젝트의 2주차가 되어

첫주의 회고를 작성해보려고 한다.

 

 

 

1주정도가 지나니

벌써 두팀에서 탈주자가 한명씩 나왔는데

그래도 우리팀은 다들 열심히 하시는것 같아

팀을 잘만난것 같다 (●'◡'●)

 

 

 

팀프로젝트에 필요한 데이터들을

크롤링 돌리면서

쓰는 회고록

 

 


 

첫날부터 하루도 쉬지 않고

매일 달리는 회의...ㅋㅋㅋ

우리는 협업툴노션을 사용하기로 했다.

 

우리의 회의는

월화수목금토일 평일 주말 가리지 않고

8시에 진행된다.

 

 

나도 기억이 잘 안나서

회의록을 보면서 포스팅을 해야할것 같다.

이렇게 보면 자료를 남기는 것은 참 중요한것임을 새삼 깨닫는다.

 

 

 

 

 


5월 2일(월)

 

 

프론트 엔드 1명과 백엔드 3명이 만나서

서로 간단한 자기소개를 했다.

 

다들 낯을 가려서

어색어색 아무말도 안하고 있으니까

우리의 프론트님께서 먼저 대화를 이끌어나가셨고

자연스럽게 조장이 되셨다.

 

 

 

 

 

그리고 프로젝트 주제를 선정했는데

어것 역시 프론트님이 생각해두신 내용이 있어서

설명을 해주셨는데

 

괜찮아서 이 주제로

바로 가기로 결정!

 

 

시작이 좋다

 

 

 

회의는 게더타운에서 진행하기로 했다

그동안 게더타운을 넘무 해보고 싶었는데

여기서 다 충족이 되는구나 ㅋㅋㅋ

 

조장님이

피그마 구경도 시켜주시고

여러가지 새로운 경험들을 해봤다.

 

 

그 후

코드스테이츠에서 준 기능 목록표 대한 표를 쭉 만들어서

할수 있는 기능, 작은 도전, 큰 도전, 하고싶은 사람 체크 박스를 만들어

내일까지 체크해서 

업무 분담을 진행하기로 했다.

 

 

그리고 팀이름과 팀프로젝트 이름을 정해야 했는데

당장 정하긴 힘들것 같아

내가 내일까지 각자 세가지씩 생각해서 오자고 했다.

 

 

 

회의가 끝나고 단톡에서 떠들다가

다들 뭔가 뚝딱 뚝딱 만들어서

조장님이 다들 뚞딱 잘하신다고 하시길래

 

내가 팀 이름 뚞딱 어떻겠냐고 

제안했는데

다들 마음에 들어하셔서

팀이름이 자연스럽게 정해졌다.

 

 

 

 


5월 3일(화)

 

 

어제 정한 주제에 대해

요구사항을 브레인스토밍 해서

필요한 기능들을 쭉 나열하고

 

나열한 기능들을

공통 부분과 도메인별로 분리 했다.

 

kafka를 어디다 적용할까 다같이 고민하다가

내가 kafka로 에러메세지를 보내고

그걸 slack 서버가 구독하고 있다가

message가 생기면

slack으로 에러 별 메세지를 전송하는게 어떻겠냐고 제안을 해서

kafka는 에러를 로깅하는 역할로 사용하기로 했다.

 

 

해당 기능에 필요한 기술은 무엇인지 확인하고

API 문서는 어떤걸로 만들지에 대한

회의를 진행했다.

 

그리고 어제 작성한

코드스테이츠 기능별 표에 체크한걸 토대로

도메인 담당자를 정했다.

 

나는 사실 Socket 통신을 해본적이 없어서

항상 채팅을 해보고싶단 생각이 있었는데

 

마침 좋은 기회가 생겨서

채팅 도메인에 지원했고, 맡게 되어서

기뻤다

 

 

 

 

 


5월 4일(수)

 

 

API 규약을 어느정도

정하고

 

GIT COMMIT 에 대한 규칙을 정했다.

 

그 후

SSL 설정을 어디까지 할건지

gateway만 하면 되는지

아니면 내부 도메인도 다 처리를 해야 하는지에 관한

논의들을 진행했다.

 

 

 

우리는 보이스 기능이 있어서

webRTC를 하려면

https가 필요하다던데..?

하는 글을 봐서

 

일단 SSL 없이 해보고

안되면 SSL을 추가하는 방향으로 진행하기로 했다.

 

그 외 기타 논의 및 건의사항들을 이야기했다.

 

 

 

내일은 어린이날이라 

내일까지 각자 도메인을 클라우드에 올려서

hello world를 띄워보고

통신이 되는지 간단한 확인을 하기로 했다.

 

 

 

 

나는 저녁에 미리

github Actions와 AWS의 code deploy를 이용해

CI/CD로 구현을 해 놓았다.

 

 

https://be-developer.tistory.com/51

 

[SpringBoot] Github Action으로 AWS EC2 자동 빌드/배포하기(CI/CD)

[SpringBoot] Github Action으로 AWS EC2 자동 빌드/배포하기(CI/CD) 빗썸테크아카데미의 강의가 끝나고 팀프로젝트가 시작되었는데, 개발에 앞서 우선 aws에 배포해서 Hello world를 먼저 찍어보고 개발을 하

be-developer.tistory.com

 

 


5월 5일(목) 어린이날

 

 

오늘은 내가 저녁에

가족 모임이 있어

조금 회의를 일찍 진행했다.

 

각자 URL을 확인해서

잘 되는것을 확인하고

 

게이트웨이를 위한

URL 형식을 맞추었다.

 

그리고 나는 채팅 도메인을 맡아서

오늘부터 채팅을 구현하기 위해

아침 9시에 일어나서

두시간만에 뚝딱 만들었다.

 

그러고 나서 뿌듯해했는데

 

음...

여기서부터 문제가 생겼다

 

 

내가 뚝딱 구현한것은

stomp를 이용한 채팅이었고,

stomp 는 mvc에 종속된 라이브러리

 

그러나 우리는

webflux 과정이었고

webflux로 구현을 해야했다....

 

그래서 열심히

webflux 채팅 구현 레퍼런스를 찾아다녔지만

정말 적었다.

 

그래서 일단 제일 간단한

webflux 소켓 통신과

1 : 1 채팅까지만 구현을 해봤다.

 

 

 

 

 

 


5월 6일 (금)

 

오늘은 저녁에 Q&A 세션이 있는 시간.

 

오늘도 과제를 위해

연차를 내고

아침 9시부터 채팅 삽질을 하다가

 

 Q&A 시간이 되어

강사님한테 물어봤다.

 

 

webflux 채팅 구현에 대한 레퍼런스가 너무 적은데
혹시 채팅은 MVC로 구현을 해도 되는지..?

 

 

 

근데 이게 나만 겪은 문제는 아니었던지

다른 조들도 다 똑같은 문제를 안고 있었는데

여기서 또 한번 우리조의 문제가 생겼다.

 

 

다른 조들 같은 경우는

메인 기능이 있고, 채팅 기능은 옵션이기 때문에

MVC로 해도는 되는데,

 

우리는 채팅기능이 메인이라서

메인 기능을 MVC로 하는건 좀 아닌것 같다고 하셨다...

 

그리고 우리 기능이 너무 없다고

까였다

😭

 

 

예.. 삽질을 좀 더 해보겠읍니다...

 

새벽 2시까지 하다가

내일 시도해볼 리스트를 작성하고

일단 잤다.

 

 


5월 7일(토)

 

오늘도 아침부터

어제 작성한 리스트들을 해보며

열심히 삽을 팠다.

 

일단

webflux로 단체 채팅방까지

구현은 완료했지만

 

 

나는 좀더

세분화된 기능을 넣고 싶었으나,

내가 원하는 기능은 구현하지 못했다.

 

그래서 일단

내가 백엔드로 원하는 기능을 구현하지는 못했으나

꼼수를 써서

프론트 엔드에서 구현할 수 있는것까지는

테스트를 통해 확인을 했고

 

회의시간

프론트엔드 분이랑 협의를 해서

내일까지도 백엔드에서 구현하지 못하면

프론트엔드에서 구현하는 것으로

합의를 봤다.

 

이 과정에서 기존에 채팅 기능에 필요했던

기능 몇가지를 좀더 간단하게 줄였는데,

 

다행히도

프론트엔드 분

본인은 오히려 만들어야할 페이지가 적어져서 좋다

원만하게 합의가 되었다 :)

 

 


5월 8일(일)

 

삽질 4일차

 

금요일에 기능이 적다고

탈탈탈 털리고

그 이후 회의를 통해

도메인이 하나 더 신설되었다.

 

뉴스를 crwaling 해서 DB에 저장 후

REST API로 조회를 할 수 있게 하는 기능인데

 

다른분들이 아직 하고 있는 일이 있어서

이것도 내가 맡기로 했다.

 

 

 

오늘까지만 삽질을 해보고

일단 안되면

어제 논의했던 대로

기능을 구현하고,

다음 기능 구현으로 넘어가기로 했다.

 

 

우선 기한 안에 기능들을 다 구현하는 것

제일 중요하다고 판단했기 때문에

 

무슨 방법을 쓰던(?)

내가 목표로 하는 기능은 어쨌든 구현을 할 수 있고

이거에 3주 내내 매달려있을 수 없었기 때문이다.

 

 

오늘까지만 하고

내일부터 ~ 다음주 동안에는

Python으로 crawling 기능을 구현해서

MongoDB에 저장하고

Spring Boot Webflux로 이용해

조회 rest api를 구현할 예정이다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90
반응형

댓글