본문 바로가기

개발일지/WIL

[ 230618 ] 27주차 회고

일주일 간 진행한 내용

1. 자바 문법 강의 듣기
2. 팀 과제 - 숫자야구
4. 사이드 프로젝트
3. 코딩 문제 풀기

자바 문법 강의

[ 진행 ]

4일 동안 자바 문법 강의를 듣는 시간을 가졌다. 자바 정의, JVM, 객체지향, 자료형, 조건문, 반목문 등에 대해서 다루고 있었다. 기존에 학습했던 적이 있어서 쉽게 강의를 들을 수 있었다. 중간에 있던 과제도 무난히 해결해 제출할 수 있었다. 

 

[ 생각 ]

이번 강의를 듣는 시간은 아쉬운 점이 더 많은 시간이었다. JVM 구조와 객체지향에 대한 설명은 다시 리마인드 할 수 있는 시간이어서 좋았다. 하지만 자료형, 조건문, 반복문을 다시 듣는 시간은 아까웠다. 막상 시간은 많이 사용해야 했지만 얻은 것은 없었기 때문이다. 그래서 멘토님에게 이러한 상황에 대해 이야기를 하며 조언을 구했다. 

 

[ 멘토님 조언 내용 ]

멘토님은 이미 알고 있는 내용에 대해서 굳이 들을 필요가 없다고 하셨다. 그 시간에 다른 것에 시간을 쓰며 스스로를 성장시키는 것이 좋다고 하셨다. 알고 있는 강의는 넘기고 모르는 부분의 강의를 듣기, 사이드 프로젝트를 진행하기, 면접 질문을 찾아보고 정리하기 등을 예시로 들어주셨다. 나는 그런 부분들에 동의가 되었고 사이드 프로젝트, 일일 면접질문 3개씩 정리 등에 대한 계획을 세워보기로 했다.

팀 과제 - 숫자 야구 

[ 진행 ]

숫자 야구 짜기는 2인 1조로 페어프로그래밍 형식으로 진행이 되었다. 이전에 짜본 경험이 있었기 때문에 팀원이 드라이버, 내가 네비게이터 역할을 맡았다. 오랜 시간이 걸리긴 했지만 팀원 분은 끝까지 문제를 해결했으며 정상 동작까지 확인했다. 마지막으로 내가 짰다면 어떻게 했을지 팀원 분과 피드백 하는 시간을 가졌다.

 

[ 생각 ]

페어프로그래밍을 하면서 팀원끼리 경험의 편차가 존재할 때 풀어가는 방식에 대해 배울 수 있는 시간이었다.  팀원 분이 궁금해 하는 내용을 잘 설명해 주기 위해서 나도 더 자세히 알아보면서 지식이 늘었다. 마지막으로 중간중간 인텔리제이 한글 깨지는 문제와 같이 이슈를 만날 때 같이 해결하면서 개발 경험치를 늘릴 수 있어 좋았다. 

 

 

GitHub - lodalee/Baseball_Game: 숫자 야구 게임

숫자 야구 게임. Contribute to lodalee/Baseball_Game development by creating an account on GitHub.

github.com

사이드 프로젝트

[ 인생퍼즐 - 진행 ]

인생퍼즐 사이드 프로젝트는 리팩토링 시간을 가지고 있다. 이번에는 파일 프로세싱 하는 부분을 수정을 했다. 월요일에 한 번 리팩토링한 코드를 Pull Request를 했다. 이후 5년 차 개발자 분에게 코드 리뷰를 받았다. 화요일에 코드 리뷰를 적용해 코드를 작성해 커밋을 날렸다. 마지막으로 수요일에 피드백을 받아 코드를 적용 후 마무리를 지을 수 있었다. 

 

[ 인생퍼즐 - 생각 ]

리팩토링은 중요하다는 생각을 새삼 했던 것 같다. 하다보니 기존의 코드보다 더 좋아지는 것을 스스로도 느낄 수 있었다. 또한 선배 개발자와 함께 코드 리뷰를 하는 것이 얼마나 중요한지도 배웠다. 내가 생각하지 못하는 부분을 짚어줬으며, 그것으로 인해 코드가 훨씬 깔끔해지고 가독성이 올라갔다. 앞으로도 이런 시간을 계속 가져 개발 실력을 높일 수 있으면 좋겠다.

 

[ 스트레스 일기 - 진행 ]

이번에 친구와 "스트레스 일기" 앱을 만들어보기로 했다. 첫날에는 Front, Back-End의 Git Repository를 생성했으며 프로젝트 기본 구조를 구성했다. 이후 Graphpql과 JWT 적용, 테스트 코드 작성을 했다. 그리고 화상 모임을 가져 중간중간 진행 사항을 체크했으며, 일정 관리를 위해 JIRA에 구현해야 하는 기능들을 등록했다. 

 

[ 스트레스 일기 - 생각 ]

언제나 느끼는 것이지만 이미 해본 기능들이어도 할 때마다 조금씩 배우는 것이 있다. Graphql같은 처음 해보는 것을 하다 보면 설정부터 사용하는 법을 익히다 보면 재미도 있다. 이런 시간을 통해 나의 성장이 촉진될 것이다. 그러기에 하루에 2~3 시간씩 프로젝트를 진행하며 매일 조금씩 나아갈 것이다.

코딩 문제 풀기

[ 진행 ]

프로그래머스에서 제공하는 코드 문제 풀기는 3인 1조 페어프로그래밍 방식으로 진행했다. 경험이 가장 적은 팀원이 드라이버, 나머지 팀원과 내가 네비게이터를 맡았다. 하루는 10문제 정도를 진행했다. 그리고 다음 날은 드라이버를 맡은 팀원의 요청으로 복습하는 시간을 가졌다. 드라이버 팀원에게 더 잘 알려드릴 수 있도록 네비게이터 역할을 맡았던 팀원과 나는 남은 문제를 미리 풀었다.  

 

[ 생각 ]

코딩 문제 풀기 페어프로그래밍은 생각보다 비효율적으로 이루어졌다. 드라이버가 푸는 시간은 무한정으로 두었기 때문이었다. 물리적으로 긴 시간을 하다보니 서로가 빠르게 지쳐갔다. 그래서 나는 이걸 어떻게 하면 더 효율적으로 바꿀 수 있는지 고민을 했다. 스스로 답을 찾아보다 사이드 프로젝트를 하는 선배 개발자 분에게 조언을 구했다.

 

[ 선배 개발자 조언 ]

페어프로그래밍을 할 때 무한정 시간을 쓰는 것은 참여자 모두에게 좋지 않다. 어려운 문제라면 30분, 쉬운 문제라면 10분 정도의 시간을 사용해 해결해보는 것이 좋다. 시간이 지났는데도 해결을 하지 못한다면 그때는 네비게이터가 해결 코드를 제시해 드라이버의 이해를 도와야 한다. 그러면 드라이버는 성장할 수 있는 경험을 얻을 수 있다. 네비게이터는 시간 절약할 수 있으며 코드를 논의할 시간을 조금 더 더 가질 수 있다.  이후 팀원 분들과 협의하여 우리는 한 문제당 10분으로 정해 조언을 적용해볼 수 있었다. 

'개발일지 > 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
[ 230625 ] 28주차 회고  (0) 2023.06.25