나는 어떤 개발자?
경영학과를 전공한 후 MD를 하다가 퇴사 후 부트캠프를 수료했다. 이후 아이 교육 서비스를 하는 회사에 입사하여 3년 차 프론트엔드 개발자로 근무 중이다. 회사에서는 유일한 프론트로서 백오피스를 포함하여 웹 개발이 필요한 모든 서비스의 프론트 개발을 담당하고 있는데, 아무래도 혼자 개발을 하다 보니 라이브러리 및 프레임워크 선택부터 개발/테스트까지 모든 과정에서 항상 무엇을 선택하고 어떻게 개발해야 하는지에 대한 끊임없는 고민을 하고 있다.
항해 플러스 지원계기
지난 2년 동안 꾸준히 스터디를 운영해 왔는데, 차근차근 실력이 늘고 있다는 생각은 들었지만 시간이 어느 정도 지나고 나니 스스로 잘하고 있는 지를 점검하고 싶었다. 내가 짠 코드들이 과연 건강한 코드인지, 개발을 할 때 어떤 구조로 개발을 하면 좋은지, 특정 메서드들은 왜 필요하고, 항상 시도하지만 어려운 TDD는 어떤 방식으로 접근하면 좋은 지, 다른 사람들은 어떤 방식으로 개발하는지 등을 경험할 수 있으면 좋겠다는 생각이 들었다.
처음에는 그래도 진행하던 스터디에서 부족하다고 생각하는 부분을 다른 사람들과 같이 공부하면서 채워나가고자 했고, 그 뒤에는 여러 교육 프로그램들을 찾아봤다. F-***, 제로*** 등 회사를 다니면서 공부를 할 수 있는 프로그램들이 많이 나와서 어떤 건 1:1 면담도 진행했었다. 모두 매력적인 프로그램이었긴 하지만 '다른 사람들과 많이 소통할 수 있는가?', '지금 내가 부족하다고 생각하거나 깊이 공부하고 싶은 부분을 채워줄 수 있는 커리큘럼인가?'를 고려했을 때는 선뜻 결정을 내리기 어려웠다. 그러던 중 커리어리라는 플랫폼에서 팔로우하고 있던 개발자분이 항해를 추천하시는 글을 봤고 홀린 듯이 결제까지 진행하게 됐다. 사실 추천하는 글이 엄청 화려한 것도 아니었고 항해플러스를 본 게 처음도 아니었다. 항해99에서 약 1년 정도 면접관으로 활동했는데, 면접관을 하면서 항해 플러스가 생겼다는 소식을 들었고 이때 등록을 할까 했었지만 시간이 맞지 않아 등록을 하지 않았었다. 근데 우연히 글을 보고 링크를 들어갔다가 마침 일정도 맞았고 커리큘럼도 내가 채우고 싶었던 부분들을 적절히 담고 있어서 바로 결제까지 하게 되었다.
커리큘럼 및 일주일 스케줄
아래는 지금 기수의 커리큘럼이고 지금 3기는 5주 차에 접어든 상태이다. 매주 토요일에 발제가 진행되고 차주 금요일 오전 10시까지 과제를 제출한다. 일주일이나 과제를 하나?라고 느낄 수 있지만 아무리 주말이 껴있더라도 회사를 다니면서 과제를 하는 게 생각보다 빠듯하다. 개발공부를 해야지 해야지 하고 하지 않는 사람이라면 정말 알차게 일주일을 사용할 수 있는 기회일 거라고 자신 있게 말할 수 있다.
자세한 일주일 스케줄은 토요일 오후 1시~6시에 온라인으로 발제가 진행된다. 그리고 발제 때 일주일 동안 해결해야 할 기본과제/심화과제가 주어지며 두 가지를 모두 차주 금요일 오전까지 제출하면 된다. 월~목 사이에는 보통 공개 Q&A, 코치님 멘토링이 진행되고 나머지 일정 때는 팀원분들이랑 같이 모여서 과제를 해결하면 된다. 개인과제로 제공이 되긴 하지만 우리 팀의 경우에는 모각코를 하고 중간중간 모르는 부분은 팀원들과 상의하면서 해결하고 있다.
항해 플러스 프론트엔드 중간 후기 (장단점 포함)
항해 플러스 프론트엔드 3기 과정을 하면서 좋았던 점은 시니어 코치님들이 많이 계신다는 점이다. 규모가 큰 회사에서 어떻게 개발하는지에 대해서는 많은 강의자료가 나와있고 세미나도 많이 열리지만 코치님들이 직접 궁금한 부분들을 봐주시고 솔루션들을 제공해 주시는 덕분에 더 빠르게 많은 것을 배우고 있다. 또 다양한 개발자들을 만날 수 있다는 것도 장점인데, 고정팀원은 4~5명이지만 ZEP이라는 온라인 공간에서 다른 팀원분들도 만날 수 있고 페어팀이나 랜덤 코드리뷰 등으로 많은 분들을 만날 수 있다. 온라인이긴 하지만 과정 중 3번 정도 오프라인으로 만나는 일정이 있는데 이때 팀원분들과 코치님들을 직접 만날 수 있어 더 돈독해질 수 있다.
하지만 무엇보다 가장 도움이 되는 점은 실무에 도움이 되는 과제들이다. 우선 1~3주 차 때 javascript와 history API로 spa routing을 구현하는 것부터 가상돔 만들기, react hook 구현하기를 통해 react가 어떤 원리로 돌아가는지에 대해 알 수 있었고 이후에 클린코드 주차를 통해 함수 분리, 통일된 구조 등의 중요성과 이걸 어떻게 할 수 있을 지에 대해 배우고 적용하고 있다. 평소에 고민하고 궁금했던 부분들이 과제로 제공되다 보니 보다 깊이 있는 개발 공부를 하는 데에 도움을 받고 있다. 여태까지의 만족도로, 앞으로 남은 클린코드 주차와 테스트코드, 최적화 주차도 기대하고 있다. 심지어 테스트코드는 예전에 인프런에서 강의를 들었던 코치님이 발제를 해주셔서 더 기대가 되고 있다!!
아래는 클린코드 주차 직후 자가 진단 설문을 통해 받은 진단표이다. 이전에 애매하게 알고 있던 것들과 자신이 없던 부분들이 많이 보완된 것을 한눈에 볼 수 있다. 특히 하드코딩 되어있는 매직넘버와 문자열들을 상수로 따로 표현하지 않았는데 이 부분을 이번 리팩터링 과제를 진행하면서 많이 개선할 수 있었고, 상태관리도 일단 그냥 때려 넣기보다, 필요에 따라 적절하게 사용할 수 있게 되었다.
한 가지 단점은 시간이 진짜 부족하다는 점이다. 물론 욕심을 버리고 과제를 하는 것에 의의를 둔다면 크게 무리하지 않고도 제출할 수 있지만 과정을 하다 보면 과제와 관련된 자료를 찾아보며 더 만족스러운 과제를 제출하고 싶어지는 욕심이 생기게 된다. 그래서 과정을 시작하고 평일에는 매일 오후 9시부터 새벽 4시까지 과제를 하고 있는데 만약 나처럼 욕심이 많은 사람이라면 적어도 회사가 여유로울 때 하는 걸 추천한다. (너무 겁먹지는 않아도 되는 게 4시까지 하는 사람은 보통 5명도 안된다.)
추천인 코드
현재 항해 플러스 프론트엔드 4기 모집이 시작됐다. 보다 상세한 커리큘럼 안내와 일정은 하기 링크에서 확인이 가능하며, 이 블로그 글을 읽고 추천인 코드를 입력하면 현재 가격에서 20만 원 추가 할인이 가능하다.
추천인 코드 : IXtXJj
'개발' 카테고리의 다른 글
[HTTP 완벽 가이드] 10장 HTTP/2.0 (0) | 2025.01.02 |
---|---|
[HTTP 완벽 가이드] 9.3~9.4.6 부적절하게 동작하는 로봇과 로봇 차단 방법 (0) | 2024.12.24 |
[항해플러스] 클린코드 (진짜진짜 더러운 코드 개선하기) (1) | 2024.10.18 |
[항해플러스] React Hooks 직접 구현하기 (useRef, useMemo, useCallback, ...) (2) | 2024.10.12 |
[항해플러스] 프레임워크 없이 SPA 만들기 Part 2 가상DOM 구현 회고 (0) | 2024.10.03 |