본문 바로가기

개발일지/WIL

[ 230625 ] 28주차 회고

일주일 간 진행한 내용

 

1. 알고리즘 문제 페어 프로그래밍
2. 사이드 프로젝트
3. 자바 스프링 강의 듣기

 

 


알고리즘 문제 페어 프로그래밍

 

[진행]

팀원 분들과 저번 주 선배 개발자의 조언 기반으로 논의를 해 현재 우리에게 가장 적합한 방법으로 진행했다. 각자 8분 정도 풀어보는 시간을 가졌다. 안 풀리는 문제의 경우 X표를 달고 다음 문제로 넘어갔다. 오늘 목표치의 문제까지 전부 보고 안 되는 문제를 다시 한번 8분 정도의 시간을 들여 풀어봤다. 그렇게 두 번을 본 후 못 푼 문제나 이해가 안 되는 문제들에 대해서 두 명씩 짝을 지어 페어 프로그래밍을 진행하며 해결을 했다.

 

[생각]

각 문제를 짧더라도 충분히 고민해 볼 수 있는 시간을 가지는 것에는 큰 이점이 있다는 걸 알았다. 자신이 무엇을 알고 무엇을 모르는지가 명확해진다. 그리고 가진 페어 프로그래밍 시간은 드라이버에게 자신이 모르는 것을 채우는 데에 더욱 시간을 쏟을 수 있게 해 준다. 내비게이터는 시간을 더 효율적으로 사용할 수 있으며, 드라이버의 코드를 보며 자신과 다른 관점을 배울 수 있게 된다. 마지막으로 내비게이터는 드라이버를 이해시키기 위해 스스로 공부를 하게 되는 이점도 있다. 

 

 


사이드 프로젝트

🔥 스트레스 일기

[진행]

이번 주에는 로그인 기능, 글쓰기 기능에 대해서 작업을 완료했다. 그리고 추가적으로 Graphql을 인증을 위해 Filter를 만드는 작업을 했다. 그런데 Query 문을 파싱 하는 데에 문제가 발생해서 완료하지는 못했다. 다른 기능들을 만들며 해결을 해 나갈 예정이다.

❓Graphql은 1개의 API 중심으로 Query에 따라 요청 및 응답이 이루어지는데 요청에 따른 인증 절차를 어떻게 가져갈 것인가?
✅ JWT Filter 앞에 Graphql Filter을 두는 식으로 인증 절차를 가져가기로 했다.
     ➡ Graphql의 Query를 파싱해서 각 요청을 구분한다. 
     ➡ 로그인 ? JWT Filter 통과 : JWT Filter 검증 

💢 Graphql 파싱 문제가 해결이 되지 않아 아직 적용하지 못함 

 

[생각]

프로젝트에 새로운 기술을 사용하다 보면 항상 여러 가지 문제를 만난다. 그걸 해결해 나가는 것은 항상 쉽지만은 않다. 이번 Graphql 파싱 문제처럼 말이다. 그렇다고 막 낙담이 되지는 않는다. 나는 개발하면서 언제나 문제를 만나왔고 정면으로 가든 우회해서 가든 해결이라는 종착점에 도착해 왔기 때문이다. 이번에도 잘 해나가겠지. 그리고 그걸 통해 성장하겠지.

 


🔥 대용량 트래픽&데이터 처리 

[진행]

팀원 분이 제안을 하셔서 대용량 트래픽&데이터 처리를 해볼 수 있는 사이드 프로젝트를 하기로 했다. 팀원 분은 Redis 등 환경 설정을 하셨고 나는 공공데이터 포털에서 일반 음식점 데이터를 구해서 DB에 200만건 정도의 데이터를 밀어 넣는 작업을 했다. 이후 이와 관련해서 기술 매니저님께 조언을 구하는 시간을 가졌다.

 

[기술 매니저님과 대화]

우리는 대용량 트래픽&데이터를 처리를 위한 방향성을 기술 매니저님에게 조언을 구했다. 그러자 매니저님께서는 질문을 하기 시작했다. Redis를 사용하는 이유가 무엇이죠? Kafka는 무엇일까요? 그것들을 사용하는 이유는요? 제대로 대답할 수 있는 것이 없었다. 단순하게 많은 사람들이 저걸 하기 위해 Redis, Kafka 등을 사용한다더라에서 시작했기 때문이다. 

 

[생각]

기술 매니점과의 대화 이후에 팀원 분에게 양해를 구했고 동의해 주셔서 프로젝트를 그만하기로 했다. 단순히 많이 사용한다더라에서 시작했던 나에 대해 반성하게 되었기 때문이다. 기존에 진행하고 있는 다른 프로젝트가 있기에 거기에 집중을 하고 여유가 되는 시간들은 스스로를 정비하는 시간을 가지기로 했다. 또한 그런 시간을 "왜?"라는 질문을 나에게 던짐으로써 성장의 질을 높여가기로 했다.

 

 


자바 스프링 강의 듣기

 

[진행]

네트워크, 자바 스프링에 대한 기본을 다루는 강의를 들었다. HTTP, Web Server, WAS, Spring MVC 등에 대한 내용이었다. 하루에 3시간 정도의 분량을 들었다. 코드를 따라 치거나 궁금한 것을 찾아보는 시간을 가지니 실제로는 두 배 이상 걸린 것 같다.

 

[생각]

그동안 너무 실전 위주의 개발만 했다는 걸 알았다. 막상 답하지 못하는 기본이 많았다. 그런 것들을 채울 수 있는 시간이 되었다. 기본이 내가 쳤었던 코드와 퍼즐이 맞춰줘 기존 코드의 이해도도 올라갔다. 그래서 이번 시간을 헛으로 쓰지 않기 위해 더 노력을 해볼 것이다. "왜 이게 생겼지?", "왜 이걸 써야 해?" 등의 질문과 함께 말이다.

 

스파르타코딩클럽

스파르타코딩클럽 | 올해의 브랜드 대상 1위 왕초보를 위한 온라인 코딩강의

online.spartacodingclub.kr

 

'개발일지 > WIL' 카테고리의 다른 글

[ 230723 ] 32주차 회고  (0) 2023.07.23
[ 230716 ] 31주차 회고  (0) 2023.07.16
[ 230709 ] 30주차 회고  (0) 2023.07.09
[ 230702 ] 29주차 회고  (0) 2023.07.02
[ 230618 ] 27주차 회고  (0) 2023.06.18