Experience/2022's Experience

코드스쿼드 2022 마스터즈 코스(Java 웹 백엔드) 회고

ikjo 2022. 7. 2. 03:27
Index
1. 2022 마스터즈 코스(Java 웹 백엔드)를 마치며...

2. 마스터즈 코스? 뭘 배우는 곳인데?
  2-1. CS(Computer Science) 10 과정
  2-2. 웹 백엔드 과정
  2-3. 팀 프로젝트 과정

3. 마스터즈 코스, 과정 외로 중요한 것들
  3-1. 멘탈 관리의 중요성
  3-2. 운동의 중요성
  3-3. 알고리즘의 중요성
  3-4. 기술 블로그의 중요성

4. 마스터즈 코스를 마무리하면서...

5. 앞으로의 계획은?
  5-1. 열정 보다는 꾸준하게!
  5-2. 야생형 모드에서 당분간은 학자형 모드로
  5-3. 나만의 프로젝트 해보기

6. 끝으로..

 

 

2022 마스터즈 코스(Java 웹 백엔드)를 마치며...

개발자가 되기로 결심했었던 2021년에 대한 회고 글 이후로 오랜만에 장문의 회고 글을 작성해본다. 2021년 말미 즈음 나는 운이 좋게도 2022 마스터즈 코스 Java 웹 백엔드 과정에 합격할 수 있었고, 나보다 훨씬 실력이 좋으신 많은 수강생분들과 함께 교육을 받을 수 있는 기회를 얻을 수 있었다. 그리고 올해 1월 3일을 시작으로 오늘 7월 1일까지 총 6개월(24주, 120일)간의 마스터즈 코스 과정이 모두 종료되었다.

 

 

개발자가 되기로 결심했던 2021년에 대한 회고(feat. 장문 주의)

저는 공기업에서 신재생에너지 관련 업무를 했었고(2018. 1.~2021. 1.) 2021년 3월 9일 개발자가 되기로 결심했습니다. 중간에 위염이 심해 약 2개월 정도 휴식기를 가져 개발자를 준비한지는 현재 약

ikjo.tistory.com

 

우선 마스터즈 코스에서의 한 달 한 달은 정말 빠르게 흘러갔다. 지난 120일간 꾸준히 일일 회고를 작성하여 이렇게 회고를 쓰는게 낯설진 않지만 막상 지난 6개월 전체에 대해 회고를 쓰고자 하니 어디서부터 작성해야할지 막막하다.

 

마스터즈 코스를 수강하기 전 나를 비유하자면 마치 "우물 안에 개구리"와 같았다. "더닝 크루거 효과"라고 했던가, 마스터즈 코스 수강 전 웹 프로그래밍의 세계에 대해 무지했던 나는 더닝 크루거 효과의 곡선 상 아는 게 없는데 자신감이 솟구치는 구간에 있었던 것 같다.

 

 

자신감이 정점에 달해있던 나는 지난 마스터즈 코스 동안 웹 프로그래밍의 세계에 대해 서서히 눈을 떠가며 저 깊고 깊은 절망의 계곡 그래프를 따라 하염없이 자신감이 추락해져만 갔었다. 그래도 지난 6개월이라는 시간 동안 멘탈 관리를 제대로 할 수 있었던 이유는 지난 120일 동안 꾸역꾸역(?) 일일 회고를 작성하면서 나 자신을 되돌아보면서 현실을 직시하고 마음을 내려놓는 등 마인드 셋(set) 시간이 있었기 때문이었다.

 

 

'2022 Masters Course TIL' 카테고리의 글 목록

한 번 보고 안 것은 얼마 못 가 남의 것이 된다. 하지만 피땀 흘려 노력한 결과물은 평생 내 것이 된다. 🏃‍♂️

ikjo.tistory.com

 

다만 이번 회고 글은 어떤 멘탈 관리를 목적으로 한 글이 아니라, 그동안 내가 과정간 느꼈던 점들 그리고 학습했었던 것들을 되돌아 보고, 아울러 향후(2023년 ~ )에라도 마스터즈 코스 수강에 관심이 있으신 분들께 조금이나마 도움을 드려보고자 작성한 글이다. (나 역시 마스터즈 코스에 들어오기 전 앞서 수강하셨던 분들의 회고 글들을 통해 정말 많은 도움을 받을 수 있었다.)

 

 

마스터즈 코스? 뭘 배우는 곳인데?

마스터즈 코스는 소프트웨어 개발 교육 및 컨설팅 기관인 코드스쿼드에서 운영하는 웹(백엔드, 프론트엔드), 모바일(안드로이드, IOS) 개발자 교육 과정으로 6개월 동안 진행되며 각각의 클래스별로 담당 지도자(마스터)가 있고 지정된 언어로 과정을 진행하게 된다. 나의 경우 현재 백엔드 개발자를 준비하고 있어 웹 백엔드(Java) 과정을 수강했고 이 과정을 통해 학습하고 경험했던 것들에 대해 작성해보려고 한다.

 

CS(Computer Science) 10 과정

CS 10 과정은 5주 동안 컴퓨터 과학이라는 광활한 영역 중 특정 영역에 초점을 맞추어 해당 프로세스에 대해 학습하고 이를 가벼운(?) 프로토타입 형태로 구현해보는 과정이었다. 총 10개의 미션 과제가 주어지고 자기주도적으로 학습하되 지정된 그룹원들끼리 의논하고 정보를 공유하면서 해결할 수 있었다.

 

되돌아보면  CS 10 과정 미션 하나 하나가 정말 배울 것이 많고 유익했다고 생각한다. 그 중에서도 개인적으로 가장 몰입도가 높았었던 미션은 웹 클라이언트 구현과 관련된 미션이었다. 물론, 내가 웹 개발자를 준비하고 있기 때문에 웹에 좀 더 관심이 갔었던 것도 있었겠지만, 웹 개발을 하면서 매번 당연하게 이루어지는 HTTP 요청을 보내고 응답 메시지를 처리하는 과정을 직접 구현하는 과정에서 배울 수 있는 점들이 정말 많았다.

 

또한 미션 과제를 해결하는 과정에서 원인 불명의 장애 이슈도 겪으면서 이에 대한 원인을 찾아가는 재미도 쏠쏠했다.

 

 

Java Socket 통신 중 BufferedReader readLine 메서드의 Blocking 이슈에 대한 고찰

문제 정의 : readLine 메서드의 Blocking 현상 자바 소켓 통신을 통해 시중에 배포된 웹 서버와 통신할 때 입력받은 리소스(응답 메시지 본문)를 BufferedReader 객체의 readLine 메서드를 통해 읽어오는 중

ikjo.tistory.com

 

이 외에도 프로세스/스레드 스케줄링, 비동기 함수를 다루는 미션들 역시도 정말 유익하고 재밌었던 기억으로 있다.

 

하지만 미션 과제를 해결하는 당시에는 마냥 행복하지만은 않았다. 1~2일이라는 짧은 시간 동안 하나의 미션 과제를 해결해야하며, 평상시 익숙치 않은 분야들을 위주로 다루었기에 새롭게 학습해야할 것들도 많았고 무엇보다 (나의 기준) 구현 자체가 까다로운 미션 과제들도 꽤나 있어 많은 고민을 필요로 했기 때문이다.

 

참고로 마스터즈 코스의 경우 담당 지도자 마스터 등 누군가 해결 방법을 직접적으로 제공해주지 않는다. 기본적으로 본인 스스로 또는 수강생들간 의논하여 문제를 해결해야한다. 마스터즈 코스에서는 삽질 등을 통해 문제를 해결하는 과정을 중요시 여기며 나 또한 이러한 과정에서 더욱 성장할 수 있었다.

 

또한 매 미션 과제마다 지정된 소모임별로 그룹 리뷰가 진행되는데 이 과정에서 많은 지식들과 다양한 해결 방법들이 공유될 수 있어 매우 유익하고 유용한 시간이었다.

 

 

'2022 코드스쿼드(웹 백엔드)/CS 10 과정(5주)' 카테고리의 글 목록

안녕하세요!! 문제 해결을 즐기는 개발자 ikjo 입니다 🙋‍♂️ 기술뿐만 아니라 역사, 경제, 시사 등에도 관심이 많으며 사회의 다양한 문제들을 해결하는 개발자를 꿈꾸고 있습니다 ✨

ikjo.tistory.com

 

 

웹 백엔드 과정

웹 백엔드 과정은 7주 동안 진행됐다. 처음 2주는 객체지향 프로그래밍, 클린 코드, 리팩토링, 테스트 코드 작성 등을 연습하고 3주 동안 스프링 부트 웹 프로그래밍, 남은 2주 동안에는 웹 서버를 구현하는 미션이 주어졌다.

 

지금 생각하면 민망한 얘기지만 나는 이 과정 전까지만 해도 자바의 접근 제어자(private 등) 조차 제대로 사용하지 않고 있었으며. 작업 단위별로 메서드를 나누지 못했고 불필요한 로직을 남발하곤 했다. 심지어 그 유명한 디미터의 원칙조차도 아에 모르고 있었다.

 

웹 백엔드 과정부터는 CS 10 과정과 다르게 하나의 미션 과제를 각 단계별로 수행하며 현직 개발자들의 리뷰를 중심으로 진행되었기 때문에 이에 대한(객체지향 프로그래밍, 클린 코드 등) 피드백을 정말 많이 받을 수 있었다. 이 과정을 거치고나서 내가 이전에 작성했었던 코드들을 보면 한숨이 나오곤 했다... 😅 이후에 스프링 부트 웹 프로그래밍, 웹 서버 구현 미션에서도 리뷰어들의 좋은 리뷰 덕에 더 나은 방향으로 개발할 수 있었다. 

 

추가적으로 웹 백엔드 과정에서의 특별한 점은 일부 미션들이 페어 프로그래밍으로 진행된다는 점이었는데, 페어 프로그래밍을 통해 상대와 나의 차이를 인정하고 상대의 의견을 존중하는 마인드를 배울 수 있었다.

 

어떻게 보면 페어 프로그래밍은 의사소통에 따른 오버헤드(overhead)로 인해 혼자 프로그래밍하는 것보다 비효율적일 수 있다. 하지만 상대의 생각과 의견들을 통해서 내가 미처 생각하지 못했었던 부분들을 짚고 넘어갈 수 있었으며, 혼자할 때보다 더 나은 결과를 만들어주기도 했다.

 

페어 프로그래밍이 더 낫다 혼자 프로그래밍 하는 것이 더 낫다 판단하는 것은 매우 어려운 일이다. 하지만 분명한 것은 각각의 방법별 장단점이 있을뿐이고, 특정 상황에 따라 더 나은 방법이 있을 수 있다는 것이다.

 

 

'2022 코드스쿼드(웹 백엔드)/웹 백엔드 과정(7주)' 카테고리의 글 목록

안녕하세요!! 문제 해결을 즐기는 개발자 ikjo 입니다 🙋‍♂️ 기술뿐만 아니라 역사, 경제, 시사 등에도 관심이 많으며 사회의 다양한 문제들을 해결하는 개발자를 꿈꾸고 있습니다 ✨

ikjo.tistory.com

 

 

팀 프로젝트 과정

팀 프로젝트 과정은 12주 동안 진행되며, 마스터즈 코스의 '꽃'이라고도 부를 수 있을 것 같다. 아울러 CS 10 과정과 웹 백엔드 과정은 이 팀 프로젝트 과정을 위한 빌드업(build-up) 단계라고도 볼 수 있을 것 같다.

 

이 과정에서는 프론트엔드, 백엔드, 모바일(IOS, 안드로이드) 클래스별 수강생들이 팀을 이루어 주어진 미션 과제를 수행하는데, 투두리스트/반찬 주문 서비스/숙소 예약 서비스/이슈 관리 서비스 총 4개의 팀 프로젝트를 수행하게 된다. 

 

나의 경우 이 과정을 통해 처음으로 AWS를 접해보았고 EC2, S3, RDS, VPC 등 AWS의 다양한 서비스들을 다루어 볼 수 있었다. 이외에도 JPA, Querydsl, Nginx, OAuth, JWT, Github Actions, Docker 등 굵직한 기술들을 다루어 봄으로써 웹 프로그래밍의 세계에 눈을 뜰 수 있었다.

 

개인적으로 가장 흥미롭고 몰입할 수 있었던 부분은 Github OAuth 연동 로그인과 JWT를 통한 로그인 검증 기능 구현과 관련된 부분이었다. 특히, 당시 담당 리뷰어셨던 Dan과 왕민으로부터의 피드백들을 통해 많은 도움을 받을 수 있었다.

 

 

OAuth 2.0를 통한 인증과 권한 부여

인증과 권한 부여 인증이란 무엇일까? 인증은 "누군가가 어떤 조건에 부합하는지 아닌지를 확인(식별)하는 것"이라고 볼 수 있다. PC방을 예로 들어보자. 해당 PC방에서는 밤 10시 이후에는 만 19세

ikjo.tistory.com

 

 

 

왜 굳이 세션 대신 JWT를 이용하는가?

왜 JWT의 장점을 버렸나요? 이번에 마스터즈 코스 과정 숙소 예약 서비스 팀 프로젝트를 진행하면서 미션 요구사항을 지키기 위해 JWT을 통한 로그인 검증 기능을 구현해보았다. 이에 JWT에 대해

ikjo.tistory.com

 

나 같은 경우는 운이 좋게도(?) 4개의 팀 프로젝트 모두 프론트 엔드 수강생분들과 합을 맞출 수 있었다. 모바일과 합을 맞춰보지 못한게 다소 아쉽긴 하지만 프론트 엔드와 집중적으로 협업할 수 있었던 게 더욱 값진 경험이라고 생각한다.

 

4번의 협업을 통해 느낀 점은 무엇보다 소통의 중요성이었다. 백 엔드와 프론트 엔드는 주로 API와 관해서 소통하는 경우가 많았는데, 인간은 본능적으로 자신의 편익을 추구한다고 했던가, 나 역시 무의식적으로 나의 편익대로만 API를 개발하려고 하는건 아닌지 되돌아 볼 필요성을 느끼곤 했다.

 

그리하여 프론트 엔드에서 API와 관련해서 주시는 의견들은 가급적 적극적으로 수렴하고자 노력했었다. 결론적으로 프론트 엔드에서 주시는 의견들이 좀 더 사용자 친화적이었고 주신 의견들을 반영하는 과정에서 오히려 더 나은 로직을 작성할 수도 있었다.

 

더욱이 상대 프론트 엔드 기술에 대해서도 어느 정도 숙지하고 있을 필요성을 많이 느꼈다. 나의 경우 리액트에 대한 경험이 없다보니 기능 구현이나 배포함에 있어 소통하는데 다소 어려움을 느끼곤 했다. 상대의 기술을 어느 정도 이해했을 때와 그렇지 않을 때에 소통의 원활함은 차이가 크다고 생각한다.

 

 

'2022 코드스쿼드(웹 백엔드)/프로젝트 과정(12주)' 카테고리의 글 목록

안녕하세요!! 문제 해결을 즐기는 개발자 ikjo 입니다 🙋‍♂️ 기술뿐만 아니라 역사, 경제, 시사 등에도 관심이 많으며 사회의 다양한 문제들을 해결하는 개발자를 꿈꾸고 있습니다 ✨

ikjo.tistory.com

 

 

마스터즈 코스, 과정 외로 중요했던 것들

앞서 마스터즈 코스를 통해 배우고 느꼈던 점들을 위주로 작성했었는데, 사실 과정 외로 중요한 것들도 많다고 생각한다. 개인적으로는 멘탈 관리, 운동, 알고리즘, 기술 블로그 역시 마스터즈 코스를 열심히 따라가는 것과 마찬가지로 중요하다고 생각했다.

 

멘탈 관리의 중요성

인간은 본능적으로 누군가와 나 자신을 비교를 한다고 한다. 다른 부트캠프 역시도 마찬가지이겠지만 마스터즈 코스에서도 수강생들별로 역량 차이는 분명히 있었다.

 

컴퓨터 공학을 전공하신 분들, 앞서 오랫동안 프로그래밍을 해오시던 분들, 컴퓨터 공학과는 전혀 무관한 직종에 계셨던 분들, 이제 프로그래밍을 시작한지 얼마 되지 않은 분들 등등 다양한 수강생들이 존재하는데, 상대적으로 과정을 잘 따라가는 수강생이 있을 수 있고 상대적으로 과정을 잘 따라가지 못하는  수강생이 있을 수도 있는 것이다. (비교는 상대적인 것이다.)

 

나 역시도 잘하시는 분들의 코드를 보다 보면 어떨 때는 자극을 받아 나의 부족한 점을 채우겠다 생각이 들 때도 있었지만  때때로 조바심이 드는 경우도 많았다. 내가 학습을 제대로 못하고 있는 건 아닌지, 내가 성장속도가 느린 건 아닌지 생각이 많아지곤 했었다. 하지만 이렇게 생각이 많아진들 학습에 도움이 되는 건 없었다. 어짜피 내가 할 수 있는 것은 그저 노력 하는 것밖에 없었다.

 

앞서 이미 언급되었지만 나의 경우는 마스터즈 코스 과정간 일일회고를 꾸준히 작성하면서 멘탈 관리를 하였다.(일종의 정신 승리라고 할 수도 있다.) 일일회고를 통해 내가 잘못 생각하고 있었던 부분이나 미처 생각하지 못했었던 부분들을 되돌아보고자 했고 현재 내 상태를 객관화하고자 노력했다.

 

앞서 비교는 상대적인 것이라고 했는데, 누구나 환경에 따라 자존감이 낮아질 수도 있고 높아질 수도 있다. 개발자의 경우도 마찬가지라고 생각하기 때문에 장기적인 개발을 위해서는 평상시 멘탈 관리가 중요하다고 생각한다. 나의 경우는 "회고"가 그 수단이었는데, 사람마다 자신에게 맞는 방법을 채택해도 무방하다고 생각한다.

 

운동의 중요성

운동은 앞서 멘탈 관리를 위한 방법과도 이어질 수 있다. 나의 경우 마스터즈 코스 미션 과제 해결에 몰입하다보면 운동을 생략하는 경우가 많았는데, 과정 초기에는 운동 부족이 몸으로 느껴지지 않았지만 한 달 한 달이 쌓일수록 운동 부족이 몸으로 느껴지기 시작했다.

 

마스터즈 코스 수료, 더 나아가서 10년, 20년 장기적으로 개발하기 위해서는 운동 생활화의 필요성을 느꼈다. 하지만 운동하는 것 역시 에너지를 소모하는 일이기 때문에 더도 말고 덜도 말고 딱 30분만 투자하고자 했다. 개인차는 있겠지만 하루에 30분씩만 운동해도 몸 상태가 달라지는 것을 느낄 수 있었다. 비록 가벼운 운동일지라도 운동하는 것 자체가 정신적으로나 육체적으로 많은 도움이 된다고 생각된다.

 

알고리즘의 중요성

대부분의 IT 회사의 신입 개발자 채용 전형에는 "코딩 테스트"가 있다. 마스터즈 코스에 온 수강생들 대부분은 "취업"을 위해 오신 분들이었는데, 나 역시 추후 취업을 위해 6개월이라는 마스터즈 코스 기간 동안 알고리즘을 손 놓고 있을 수는 없는 노릇이었다. (물론, 코딩 테스트를 안 보는 회사에 취업하는 것이 목적이라면 논외일 것이다.)

 

하지만 운동과 마찬가지로 알고리즘 문제 풀이 역시 마스터즈 코스 미션 과제 해결에 몰입하다보면 소홀히 하기 쉬웠다. 개인적으로 운동 보다 알고리즘을 꾸준히 하는 것이 더 힘들었다..😅 나의 경우 과정 초반 운이 좋게 알고리즘 스터디를 하게 되었는데, 이 스터디가 과정 못지 않게 정말 많은 도움이 되었다고 생각한다.

 

스터디원끼리 돌아가면서 문제를 출제하면서 일주일에 2 문제씩 풀고 문제 접근 방법을 공유하는 시간을 주 1회 가졌다. 비록 많은 수의 문제는 아니지만 이렇게  일주일에 2 문제씩만 풀어도 24주라는 과정간 총 48개의 문제를 풀 수 있는 것이다. 아울러 과정 중에 시간을 내서 알고리즘 문제를 푸는 일은 결코 쉬운 일이 아니었다. 스터디는 반강제로(?) 문제를 풀어야 하는 환경이 조성되기 때문에 많은 도움을 얻을 수 있었다.

 

기술 블로그의 중요성

나는 작년 10월부터 기술 블로그에 글을 작성하기 시작했다. 기술 블로그에 작성한 글들은 구글 검색 등 누구나 볼 수 있게 외부에 노출되게 된다. 때문에 어떤 글을 작성할 때 누군가 이를 볼 수도 있다는 생각을 가지다 보니 대충 작성할 수 없었다. 이 같은 환경에서 글을 작성하다보니 오히려 그 과정에서 미처 고려하지 못했던 부분들도 발견할 수 있는 장점이 있었다.

 

또한 개발자에게 기술 블로그의 중요성을 강조하시는 많은 선배 개발자 분들도 계신다. 자신이 얼핏 알고 있었던 지식도 글을 통해 진정으로 자기의 지식으로 만들 수 있으며 인간의 기억력 한계를 글을 통해 극복할 수 있다는 것이다. 아울러 기술 블로그를 운영한다면 자기 PR에도 유리하다.

 

이때 마스터즈 코스는 기술 블로그를 시작하기 정말 좋은 환경이라고 생각한다. 마스터즈 코스는 수강생들간의 정보 공유가 많이 일어나는데, 그 주요 매체가 자신의 기술 블로그인 경우가 많다. 때문에 내가 작성한 글을 다른 수강생 분들께서 본다고 생각하니 허투루 작성할 수 없었으며, 감사하게도 댓글이나 좋아요(💗)도 많이 눌러주시기에(🥂) 글을 작성하는데 의욕도 많이 생긴다.

 

나의 경우 마스터즈 코스 일일 회고를 꾸준히 작성하면서 알고리즘 문제를 풀고나면 이를 복기하는 차원에서 접근 방법과 풀이 과정을 기술 블로그 글에 적곤했다. 아울러 미션 과제를 하는 중 내가 유독 관심이 갔거나 삽질(?)을 했었던 내용이 있으면 이를 별도 글로 작성하고 수강생들과 공유하곤 했다.

 

마스터즈 코스를 통해 얻어가는 것이 하나 더 있다면 이러한 기술 블로그 운영을 통해서 글쓰기 능력을 많이 향상시킬 수 있었다는 점이다.

 

 

마스터즈 코스를 마무리하면서...

만약 내가 마스터즈 코스를 수강하지 못했으면 과연 지난 1~6월 동안 이렇게 학습하고 성장할 수 있었을까 싶을 정도로 마스터즈 코스를 통해 배워가는 것이 정말 많았다. 앞서 서론에서 마스터즈 코스에 오기 전 나는 "우물 안에 개구리"였다고 했다. 마스터즈 코스를 수료한 지금의 나는 "우물 밖에 개구리"라고 생각한다.

 

개구리인 것은 변함이 없지만 한 가지 다른 점이 있다면 우물이라는 좁은 공간에 갇혀있다가 이제서야 웹 프로그래밍이라는 거대한 바깥 공간으로 나오게 된 것이다. 마스터즈 코스의 많은 미션 과제들을 해결하는 과정에서 정말 많은 기술적 키워드들을 접했었다. 하지만 그러한 기술들이 단순히 부트 캠프의 미션 과제 하나를 구현했다고 제대로 알고 있다고 섵불리 말할 수는 없다고 생각한다.

 

만화 슬램덩크(위 해남고 '전호장', 아래 능남고 '윤대협')

 

지난 6개월은 나의 인생에 있어 정말 압축적으로 많은 노력을 했었던 시간이었다. 하지만 나는 마스터즈 코스 중에 느낄 수 있었다. 앞으로의 6개월 그리고 1년 역시 더 많은 노력들을 필요로 한다는 것을.

 

 

앞으로의 계획은?

지금까지 마스터즈 코스를 수강하고 수료하는 시점까지에 대한 회고를 작성해보았다. 마지막으로 앞으로 나의 계획에 대해 작성하면서 마무리를 하고자 한다.

 

열정 보다는 꾸준하게!

앞서 나는 앞으로 더 많은 노력들이 필요로 한다고 언급했었다. 하지만 그렇다고 나의 열정을 이전 보다 더 불태워서 학습하겠다는 것은 아니다. 앞으로는 뭔가 열정 보다는 "시스템(체계)" 안에서 학습하면서 꾸준하게 성장하고자 한다.

 

나는 개발자가 되기로 결심하기 이전 공기업에서 근무했었다. 당시 나는 공기업에 취업하기 전에 열정을 불태우고 취업을 한 이후에 오랜 시간 지나지 않아 열정이 폭삭 식었다. (이는 공기업의 구조적인 문제도 어느정도 원인이 되었다. 😅) 하지만 개발자는 다르다고 생각한다. 개발자는 취업 이후에도 공부를 해야한다. 당장 취업을 해야된다라는 부담은 덜하겠지만 성장에 대한 욕심이 있는 사람들에게는 더 많은 공부를 필요로 할 수 있다고 생각된다. (내 경험상 개발자들은 대체로 성장에 대한 욕심이 있다. 물론, 자발적인게 아니라 외부적인 것에 의한 것도 많은 것 같다. 😂)

 

사람이 사용할 수 있는 노력(에너지)에는 한계가 있다. 때문에 "열정적으로" 한다기 보다는 "있는 그대로 형편에 따라서" 하고자 한다. 그렇다고 학습을 대충하겠다는 의미는 아니다. 더욱이, 사람에게 있어 당장의 취업은 중요한 일이기 때문에 어느 정도 취업을 위한 공부도 필요하다고는 생각한다. 어느 한쪽에 치우지지 않고 내 상황에 맞게 균형있게 학습 분량을 조절하겠다는 의미이다. (쓰다 보니 마법의 단어들이 많이 들어갔다. 💦)

 

야생형 모드에서 당분간은 학자형 모드로

마스터즈 코스는 문제 기반 학습의 커리큘럼으로 이루어져 있다. 나의 경우 기능 구현에 대한 욕구가 있어 일단은 이론 보다는 기능 구현을 우선적으로 생각하면서 미션 과제들을 수행했었고 이후에 기능을 구성하는 로직을 개선해나가는 타입이었다. 아울러 기능 구현을 하는 과정에서 구글링을 통해 이것 저것 시도해보면서 다소 무지성(?)으로 사용했었던 기술들도 꽤나 여럿있었다...😅

 

나름대로 핑계를 대자면 모든 미션 과제들의 경우 수행할 수 있는 시간이 정해져있었기 때문이었다. 어떤 기술을 적용함에 있어 원리를 파헤치고 더 나은 방법들을 모색하기에는 나에게 있어 시간이 매우 한정적이었다. (물론 정해진 기간 내에서 이를 모두 해내는 수강생 분들도 계셨다. 👍) 또한, 미션 과제 다음에는 또 다른 미션 과제가 있었기 때문에 언제까지 이것만을 붙잡을 수는 없는 노릇이었다.

 

그리하여 앞으로는 그동안 야생적으로 사용했었던 기술들에 대해 이론적으로 재정립하는 시간을 가지고자 한다. 마스터즈 코스 동안 꼭꼭 듣고 싶었던 김영한님의 스프링 및 JPA 강의와 함께 주변에서 좋다고 추천해서 샀던 수많은 IT 서적들을 뽀개보고 싶다. (마스터즈 코스 동안 책은 많이 샀는데, 정작 제대로 읽은 책이 없는...😅)

 

나만의 프로젝트 해보기

마스터즈 코스를 하면서 많은 프로젝트를 진행했었지만, 아쉬운 점이 하나 있었다면 "나만의 프로젝트"가 아니었다는 점이었다. 모든 수강생들이 다같이 정해진 기획서 상에 있는 미션 요구사항을 따르는 식이었기에 뭔가 나만을 상징하는 프로젝트라고 하기에는 다소 아쉬움이 있었다.

 

앞서 마스터즈 코스 이후로는 야생형 모드에서 학자형 모드로 잠시 전환한다고 했었다. 나는 이 시간을 현재 내 수준에서 만들 수 있는 프로젝트 보다 한 단계 더 발전시킬 수 있는 수준으로 가기 위한 발판으로 삼고싶다.

 

내가 마스터즈 코스에서 진행했던 프로젝트는 아무래도 "실제 운영"이 고려되지 않은 채 진행된 부분이 없지 않아 있었다. 다음 프로젝트는 "실제 운영"을 염두해두고 진행해보고싶은 욕심이 있다. 개인적으로는 지난 팀 프로젝트 동안 같이 합을 맞추었던 프론트 엔드 팀원들과도 진행 해보고싶은 생각이 든다.

 

 

끝으로..

지난 6개월 동안 있었던 마스터즈 코스에서의 경험들을 하나의 글에 담으려다 보니 글이 다소 장황해진 감이 있다. 나름대로 알짜배기의 내용들로만 글을 구성하려고 했는데, 이 내용 저 내용 공유하고 싶다는 생각이 들다보니 마음처럼 되지 않았던 것 같다. 문서 업무를 주로 했었던 이전 직장에서도 글이 장황하다는 얘기를 종종 듣곤 했었는데, 한 번 들인 습관은 좀처럼 고치기가 쉽지 않은 것 같다. 😂

 

아무쪼록 이제 지난 2022 마스터즈 코스에 대한 회고는 모두 마쳤다. 이 회고까지 쓸 수 있는데에는 그동안 같은 백엔드 클래스 수강생 분들과 담당 지도자 호눅스의 많은 격려와 위로들이 있었기 때문에 가능했었던 것 같다. 아울러, 종종 나의 근황을 보러 블로그에 놀러오시는 전 직장 동료분들의 응원도 많은 도움이 되었다. 마지막으로 지난 마스터즈 코스간 온오프라인상으로 만났던 모든 분들께 감사의 인사를 드리고 싶다.

 

 

 

저의 2022 마스터즈 코스(Java 웹 백엔드) 수료에 대한 회고글은 여기까지 입니다!

 

글을 다 쓰고나니 이제서야 마스터즈 코스를 수료하게 된 것 같습니다. 😂

 

이 글을 보시는 분들 모두 남은 2022년도 승승장구하셨으면 좋겠습니다. :))

 

긴 글 읽어주셔서 진심으로 감사드립니다. 🙇‍♂️