[Spring Runner] Mastering Spring Web 101 Workshop 후기

Junseo Kim·2020년 2월 17일
1

2020.02.15 ~ 2020.02.16 동안, 서울 강남역 부근에서 스프링 러너 Mastering Spring Web 101 Workshop에 참여했다. 양 일, 오전 10시 ~ 오후 7시까지 진행되었고, 오전 11시 50분 ~ 오후 12시 50분 까지 점심시간을 가졌었다. 기억이 흐려지기 전에 후기를 작성해보려고 한다.

워크샵 소개

워크샵 소개는 아래 사이트를 참고해주세요.

https://springrunner.io/training/mastering-spring-web-101-workshop/

참여 동기

학교에서 진행하게 된 프로젝트를 스프링을 통해 개발하게 되었고, 인강을 통해 스프링을 공부하던 중이었다. 겨우 겨우 스프링의 기술들을 공부하고 있긴 했지만, 실제로 어디서, 어떻게 쓰이는 지는 여전히 잘 모르는 상태였고, 개발을 한다고 해도, 스프링 프로젝트를 만들고 난 후, 어디서부터 시작해야할지 전혀 모르겠었다. 그러던 중 페이스북에서 우연히 스프링 러너를 보게되었고, 사이트를 살펴보니, 스프링을 통한 서버사이드 개발을 해볼 수 있을 것 같았다.

막상 신청하려고 하니, 솔직히 가격이 좀 부담되기는 했다. 아직 돈을 버는 입장도 아니었고, 워크샵 비용자체도 조금 부담되었지만, 지방에 있다보니, 서울까지 교통비, 숙소비 등 비용이 많이 들 것 같았다. 그래서 처음 참가 모집글을 본 이후, 마감 당일날 까지 고민을 정말 많이 했다. 나름 후기글도 찾아봤고, 미래를 위한 투자라고 생각하고 워크샵 참여를 결정하게되었다.

첫 인상

당일에 바로 갈까, 전날 올라 갈까 고민하다가, 당일에 가려면 새벽 일찍 출발해야해서, 컨디션을 위해 전날 올라가기로 결정했다. 강남역 부근 숙소에서 이틀간 숙박했다. 잠자리가 바뀌어서 그런지 일찍 잠들려고 누웠지만, 단 한숨도 못자고 첫 날을 시작하게되었다..

워크샵 장소는 강남역 부근이었고, 강사님들이 다과를 준비해주셨다. 인원은 강사님들 포함 총 11명으로 진행되었다. 강사님들은 매우 친절해보이셨고, 수강생 분들은 대화를 나눠보진 않았지만, 대부분 직장인이신거 같았다. 그래서 그런지 내가 따라갈 수 있을까 걱정이 많이되었던 것 같다.

워크샵 내용

  1. 이론
  2. 정적 자원 제공
  3. 할 일 관리 페이지
  4. 할 일 목록 파일 다운로드
  5. 사용자 친화적인 오류 처리와 국제화
  6. 확장 기능 활성화
  7. 로그인 및 로그아웃, 웹 요청 보호
  8. 프로필 이미지 변경 및 조회
  9. 자동 온라인 유저 수 카운터

1번 부터 5번 초입까지 첫 날 진행되었고, 5번 나머지 부분부터 9번까지 둘 째날 진행되었다.

워크샵은 강사님이 설명해주시면서 라이브 코딩해주시는 걸 보고, 후에 직접 따라 코딩해보면서 기능을 구현하는 식으로 진행되었다. 중요 기능 구현이 끝나거나, 일정 부분 구현이 되면, 10분~20분 정도 쉬는 시간이 주어졌고, 가끔씩 퀴즈같이 문제도 내주신다.

Day1

강사님들 소개 후, 참고자료를 나눠주시면서 수업이 시작되었다. 참고자료는 교재느낌의 파일과, 클라이언트 부분과 core부분이 구현되어 있는 코드, 애플리케이션 정의서, 웹 API 명세서가 있었다. 오전 시간은 이론을 빠르게 훑는 느낌이었다. 알고 있던 개념들도 있고, 처음 보는 개념들도 있었다.(클린 아키텍쳐, 리플렉션 API 등..) 100프로 다 이해하지는 못했던 것 같다. 그래도 알고 있던 개념들의 경우 어느 정도 복기가 되는 거 같아서 좋았다.

오후 부터는, 바로 실습에 들어갔다. 정적 자원 제공부터 시작하여, 할 일 관리 페이지 연결, 등록, 수정, 삭제, 완료 기능을 구현하였고, csv파일로 등록된 할 일을 다운받는 기능(content negotiation이라는 것을 배웠는데 조금 헷갈렸다.)과, 간단한 error 처리까지 구현하였다.

Day2

오전에는 error처리를 이어서 마저 구현하였고, 이어서 국제화 기능을 구현하였다.

오후부터는 인증과 인가, 로그인, 권한 다루기, 프로필 사진 바꾸기 등 많은 내용을 배웠다.

가장 기억에 남는 것이 구체적인 코드 구현은 나중에 신경 쓸 문제고, 추상화를 통해 얼마든지 구현체를 달리해도, 같은 일을 수행할 수 있게 한다는 개념이 기억에 남는다. 느낌은 알겠는데, 실제로 그렇게 할 수 있으려면 많이 해봐야겠다는 생각이 들었다. 가장 원시적인 방법으로 기능 구현을 보여주시고, 하나씩 하나씩 기능을 분리해가는 과정이 헷갈렸다.

최종 후기

좋았던 점

  • 애플리케이션 서버 사이드 개발을 경험 해 볼 수 있어서 좋았다.
  • 한 단계 씩 구현해 볼 때 마다, 어떤 식으로 구성하고, 실행되는지 조금이나마 감이 잡히는 것 같아서 좋았다.
  • 자유롭게 질문 할 수 있는 환경과, 질문에 정말 친절하게 잘 설명해주시는 게 좋았다.
  • 참고자료가 좋았다. 애플리케이션 정의서, 웹 api 명세서 등 나에게는 처음보는 자료들 이었는데, 뭔가 전문적인 느낌이 들어서 좋았고, 실무에서는 이런식으로 하는 건가 하는 생각이 들었다. 또 복습할 때 도움될만한 자료들도 많이 주셔서 좋았다.
  • 중간 중간 쉬는 시간을 주시는 것이 좋았다.
  • 단순 코드 타이핑이 아니라, 원리를 알 수 있게 설명해주셔서 좋았다. 쉽게 설명해주셔서 좋았다.
  • 워크샵 이후에도 얼마든지 질문 할 수 있다는 점이 좋았다. 이번 강의를 통해 내용을 100퍼센트 습득하지 못했기 때문에 복습하면서 질문을 많이 할 예정이다.
  • 다과가 제공되는 점이 좋았다.

아쉬웠던 점

  • 시간 관계상 서버의 core 부분은 미리 개발 된 채로 진행하게 된 점이 조금 아쉬웠다. 완전 처음부터 서버 사이드 개발을 경험해보는 것을 기대했기 때문이다.
  • 워크샵의 문제가 아니라 개인적인 문제지만, 배경 지식이 다른 분들에 비해 조금 부족한 것 같은 점이 조금 아쉬웠다. 알고 있는 것이 많을 수록 많이 얻어갈 수 있는 워크샵이라고 생각한다.
  • 중간중간 쉬는 시간이 있긴 했지만, 하루에 8시간 정도 워크샵을 진행하니, 풀로 집중하기가 힘들었다.
  • DB연결도 해보고 싶었는데, 못 다뤄봐서 아쉬웠다.

총평

종합적으로 이번 워크샵 참여는 매우 만족한다. 시작전에는 '이만큼 비용을 지불하면서 올라왔는데, 도움이 안되면 어떡하지'라는 걱정을 많이 했는데, 워크샵 이후, 아깝다는 생각은 하나도 들지 않았다. 워크샵을 진행하면서, 이런 배운 기능들을 프로젝트에 적용하면 좋겠다는 생각도 많이 들었다.(실제로 할 수 있을지는 잘 모르겠다...) 강사님들도 진짜 엄청 친절하시고, 질문도 차근차근 잘 설명해주셔서 좋았다. 어떤식으로 기능들을 구현하면 될지 전에는 완전 막막했는데, 워크샵 이후, 어느정도 감이 잡히는 느낌이다. 복습만 한다면, 정말 도움이 많이 될 것이라고 생각한다. 이때까지 살면서 워크샵에 참여해 본 적이 없었는데, 첫 워크샵이 매우 만족스러웠다. 워낙 방대한 양을 짧은 시간에 배워서 그런지, 벌써 가물가물한 것 같아서 빨리 복습해야겠다고 생각했다.

+) Learn Essence of Spring Workshop이라는 워크샵도 준비중이시라는데, 기회가 된다면, 나중에 참여해보고 싶다. 워크샵 이후, 같이 식사도 하고 싶었지만, 바로 학교로 내려가야해서 식사를 같이 못한 점이 좀 아쉬웠다.

0개의 댓글