OZ 코딩스쿨 회고록
2024-09-11 오후 03시 28분
2024-09-11 오후 03시 28분
이번에 오즈코딩스쿨 부트캠프를 회고하면서 내가 어떤 일을 겪었는지 다뤄보려고 한다. 많은 우여곡절이 있었지만, 내가 어떤 부분에서 마음에 들었고 어떤 부분에서 힘들었는지 솔직하게 이야기해보겠다.
부트캠프를 하게 된 계기
계기 자체는 간단했다. 나는 전기과를 나와서 높은 학점을 유지하고 적당히 좋은 중견기업에 갔었지만, 내가 생각하던 회사생활의 모습과는 많이 달랐다.
전기과에서는 어려운 문제와 논리적인 사고, 회로에 대한 이해가 바탕이 되어야만 결과를 낼 수 있었는데, 회사에서는 그런 어려운 일은 존재하지도 않고, 내가 학부에서 배운 지식은 회사생활에서 어떠한 도움도 되지 않았다.
전기사무로서 1년간 회사를 다니며 엑셀 자동화 수식으로 고장보고서를 자동으로 작성하고 자동으로 관리할 수 있는 기능을 만들었었는데, 이게 고평가를 받았고 이때부터 코딩의 길에 관심을 크게 가지게 되었던 것 같다.
회사를 바로 그만두진 않았고, 회사생활과 양립하면서 3개월 정도 혼자서 독학을 진행했었다. 처음 보는 내용이라 어려웠지만 기본적인 논리식이나 구조 자체는 전기와 겹치는 부분도 있었고, 내가 직접 결과물을 창의적으로 만들어 내고 그런 인터랙션을 볼 수 있는 게 나에게 정말 좋은 경험이었다.
본가로 올라오게 되고 금전적인 문제에 시달리지 않기 위해서 많은 부트캠프 중 하나를 선택하기로 했었고, 그중에서도 오즈코딩스쿨
이라는 부트캠프를 선택하게 되었다.
왜 오즈코딩스쿨을 선택하게 되었는가

여러 부트캠프들이 과대광고를 하듯, 어떠한 부트캠프에 속한다면 기간 내에 가장 좋은 효율을 내고자 노력했었다. 그래서 맥북을 대여해주고, 사람이 적고 원활하게 나만의 멘토링이 가능하고, 내 개인적인 공부시간이 많이 있을 것 같은 오즈코딩스쿨
을 선택했었다. 이러한 점에서 선택한 것을 후회하지는 않았다.
실제로 대여받은 맥북은 잘 사용했었고 강의 퀄리티도 어느 정도 준수한 편이었기에 내가 공부할 방향성
에 대해서 크게 고민을 하지 않게 되었다. 코딩 공부에서 가장 어려운 부분이라고 생각하는 방향성
이 잡히니 나는 코딩을 배우는 게 너무나 즐거웠고, 좋은 성과를 낼 수 있었던 계기가 아니었나 생각이 든다.
만족한 부분

첫 번째로 이 부트캠프만의 장점이 있다고 한다면, 역시 멘토링
이 아닌가 싶다. 멘토 강사님마다 퀄리티가 달라 이야기를 나누는 게 항상 도움이 된 건 아니었지만, 내가 만든 결과물을 공유하고, 앞으로 무엇을 공부하고 더 준비해야 될지 이야기를 들을 수 있었고, 실제로 어떤 멘토분들은 적은 급료에도 추가적으로 남아서 상담을 해주는 등 좋은 개발자분들이 정말 많았다. 이러한 부분에서는 아주 만족스러웠다.
두 번째로는 협업 프로젝트
라고 할 수 있겠다. 같은 수료생 기수인 Back-end
와 사업개발
과 함께 진행하는 포트폴리오는 흔해빠진 포트폴리오가 아니라 실제로 생활에서의 어떤 문제를 해결하고 수익화가 고려되어 있는 서비스가 많아서 협업에서의 흐름이 어떻게 이어질지 적게나마 체감할 수 있는 게 아닌가 싶었다.
물론 모든 협업 프로젝트팀이 잘 풀리는 건 아니었다. 팀 간 균열이나 의견 공유 부족, 빠듯한 시간으로 인해 제대로 완료되지 못한 프로젝트도 많았고, 나는 내가 2번의 팀장으로서 프로젝트를 이끌었기 때문에 내 프로젝트가 그렇게 되기 원치 않았고 최선을 다해서 임했다고 생각한다. 새벽 4시까지 2주를 넘게 코딩했을 때의 기억은 지금 생각해도 꽤나 낭만이 있었다.
불만족스러운 부분
첫 번째로는 강의의 퀄리티였다. 강의의 퀄리티가 어떤 강의는 아주 알차고 구성 있었지만, 어떤 강의는 레거시한 강의가 많아 내가 따로 인프런에서 결제하고 강의를 듣거나, 직접 토이 프로젝트를 하면서 따로 공부를 했었다.
물론 운영진들이 우리의 의견을 적극적으로 수용하고 반영해주긴 했었다. 다만 강의는 계약으로 인해 뒤늦게 변경이 되었고, 우리 다음 기수들은 훨씬 좋은 커리큘럼을 제공해주게 되었던 것 같았다. 내심 부러웠지만, 나는 그대로 내 나름대로 잘 해냈으니까 지금 생각해보면, 내가 뭘 공부할지 직접 찾아보고 직접 뛰어다니는 게 내 공부에 있어서 진짜 내가 성장하게 된 계기가 아니었나 싶다.
첫 번째 프로젝트: 미니 프로젝트
미니 프로젝트 때는 발표 형식으로 진행하면서 내가 진행한 부분에 대한 코드 질문이나, 개념 질문을 듣고 나는 거기에 맞춰 준비한 내용을 발표하는 식으로 진행했었다. 만약 발표가 미흡할 경우 다음 문제지를 볼 수 없으며 진행이 막히는 방식의 프로젝트였다. 사실 프로젝트라기보다 5단계 과제 수행이 정확한 명칭일 것 같다.
이때는 내가 개인 프로젝트, 현재 이 블로그를 만드느라 바빠서 코드 퀄리티에 신경을 쓰지는 못했지만 거기서 입으로 개념 설명을 하는 것이 더욱 내 것으로 만드는 데 도움이 되었고 그때마다 팀원과 함께 개발을 했던 경험이 아주 즐거웠기에 매우 만족하고 있다.
그때의 과제는 영화 일람 소개 페이지였는데, 공개하기 부끄러울 정도의 코드라 별도로 공개는 안 하겠다.
두 번째 프로젝트: Emotree
아주 운이 좋았던 프로젝트다. 팀원들은 웹퍼블리셔 경력이 많은 팀원과 디자이너 출신의 팀원이 있어서 디자인 부분에서 걱정할 요소는 없었고, 복잡한 2.5D 형태의 UI를 별도의 라이브러리 없이 구현해보자! 해서 시작했던 AI 감정분석 어플리케이션이다. 사용자의 경험 하나하나를 신경 써서 모달 등의 단축키와 사운드 등을 고려하면서 제작하게 되었고, 결과물에 대해서는 매우 만족하고 있다.
개발적인 지식이 조금 적어서 고생을 한 팀원이 있었지만 그래서 끝까지 힘써서 개발을 끝낼 수 있었다.
백엔드분이 혼자셨는데, 매우 전문가여서 우리의 요구사항을 충분히 작성해주고 있었고 어드민 API까지 만들어내서 커스텀 어드민 페이지까지 만들고 시범 운영까지 해본 게 정말 좋은 경험이었다.
세 번째 프로젝트: 훈수왕
세 번째 프로젝트는 다른 팀원들과 진행하게 되었다. 지식인 기반의 커뮤니티 플랫폼이었는데, 거기에 ChatGPT AI를 섞어서 AI가 답변에 훈수를 두는 재미있는 커뮤니티 플랫폼을 기획하고 만들게 되었다.
에디터를 처음으로 만들어보면서 많은 경험을 녹여냈고, 알림 기능도 만들어서 알림 기능에 대한 실시간 동기화를 구현하면서 프로젝트의 퀄리티를 높일 수 있었고 반응형 모바일도 지원하는 좋은 서비스를 만들어 낼 수 있었다.
해당 프로젝트는 지금도 심화적인 기능을 마저 구현 중이고, 만족스러운 결과물이 아니었나 생각한다.
내가 오즈 코딩스쿨에서 공부한 방법
나는 오즈코딩스쿨의 커리큘럼을 완전히 따르지는 않았지만, 중간중간 나오는 과제는 개인적으로 매우 마음에 들었고, 나는 항상 과제가 나오면 누구보다 먼저 과제를 작성하였다.
물론, 그렇다고 과제를 날림으로 했다는 건 아니다. 투두리스트를 만들어보는 게 과제라면, 이 투두리스트는 날씨가 같이 배경으로 나오는 날씨 기능을 넣는 건 어떨까? 이 투두리스트는 타입스크립트로 작성해서 좀 더 어렵게 해보면 어떨까? 이 버튼은 내가 CSS로 인터랙션을 줘서 좀 더 다양한 애니메이션을 지원해보면 어떨까?
이러한 부분을 항상 고민하면서, 항상 기본 과제보다 다양한 형태로 문제를 풀이해보려고 노력했었고, 이 노력은 내 실력을 키우는 데 있어 엄청나게 도움이 되었다. 이후 발생하는 프로젝트에서의 트러블슈팅이 이 과제를 처리할 때 내가 혼자 공부했던 내용들이 한번씩은 무조건 나왔기 때문이다!
이렇게 과제를 빨리 해내고, 강의를 듣지 않고 별개의 강의를 시청하거나 유튜브로 빠르게 개념을 습득하고, 나는 그럼 남은 시간에 무엇을 했을까?
나는 남는 시간을 효율적으로 쓰기 위해서 개인 프로젝트를 시작했었다. 다른 분들이 리액트 공부를 시작할 때 나는 이미 타입스크립트까지 기본 개념을 독파해두었기 때문에, 이때부터 날씨 어플리케이션, 어드민 페이지, 블로그 프로젝트를 진행하면서 내 경험을 늘려 나갔다.
물론 그렇다고 같은 수기생을 무시하고 나만의 길을 간 것은 아니다. 내가 미리 배운 지식을 다른 사람에게 강의하듯이 스터디를 열었고, 참여하신 분들께 내가 배우게 된 많은 지식을 미리 말씀드리고, 앞으로의 대비를 알려주면서 우리가 어떻게 공부해 나가면 될지 방향성을 잡아드리면서 같이 이끌어나가려고 노력했었다.
당시 스터디를 진행하고 들은 메시지 내용
나의 개인 프로젝트
- 날씨 어플리케이션
첫 번째 프로젝트는, 기본적인 반응형 날씨 어플리케이션을 만들어 보는 것이었다. 반응형을 처음 시도하고, 익숙하지 않은 tailwind, 익숙하지 않은 전역 상태 관리, 익숙하지 않은 라이브러리.. 많은 문제가 있는 프로젝트였지만 혼자서 직접 결과물을 만들어낸 프로젝트라서 나름 애착이 깊다.
이때 혼자 부딪히면서 배운 개념이 지금의 내가 가지고 있는 지식의 기반이 되지 않았나 생각하고 있다. 이 프로젝트를 진행한 건 한창 자바스크립트 수업이 진행 중일 때 진행하였다.
- 어드민 페이지

두 번째 프로젝트는, 내가 프론트지만, 백엔드의 데이터베이스, 백엔드의 서버 정도는 직접 만들어보고, 직접 쿠키를 보내서 직접 서버를 구축해보고자 진행했던 어드민 페이지 프로젝트다. 프로젝트 자체는 별거 없는 프로젝트였다. 그냥 투두리스트가 존재하고 투두리스트에 로그인 기능이 있고, 어드민 계정으로 접속할 경우 전체 투두 사용자와 사용자 데이터를 조회할 수 있는 기능이 있는 페이지였다.
하지만 진짜 어려웠다! 여태 해봤던 모든 프로젝트 중 가장 어렵다고 단언할 수 있겠다. docker
와 mysql
, node.js
를 개념적으로만 이해하고 있지 직접 사용해본 적은 없었기 때문에 머리를 엄청 싸매면서 끙끙 앓으면서 새벽까지 코딩했었다. 이때 강의는 이제 막 react
의 useEffect
를 배우고 있는 시점이었지만, 나는 항상 향상심을 가지고 현재 위치에 안주하지 않고 남들보다 많은 것을 배우고자 노력했었다.
이때의 지식이 내가 aws
인프라 구축, 백엔드와의 API 통신에 대한 핵심적인 이해를 잡고, 내가 팀장을 하는 데 있어서 중요한 역할을 했다고 생각한다. 이때부터 실력이 조금씩 일취월장하게 되었다.
- 블로그 프로젝트
현재 여러분이 보고 있는 블로그는 나의 세 번째 블로그다. 이전에는 다른 블로그도 있었다.
첫 번째 블로그
두 번째 블로그
첫 번째 블로그는 Jekyll
을 사용한 루비 기반의 블로그 템플릿이었다. 디자인적으로는 만족했지만, 우선 이게 과연 프론트엔드로서의 블로그가 맞는가? 라는 질문에는 항상 아니었던 것 같다.
두 번째 블로그는 Nextra
를 활용한 Next.js 기반의 블로그 템플릿이었는데, 이 또한 내가 만든 블로그라기보다, 남이 다 만들고, 나는 글만 올려 쓰는 느낌이 강하게 들었다.
그래서 나는 내가 직접 블로그를 반드시 만들어야겠다고 마음을 먹고, 블로그를 만들게 되었었다.
현재 이 블로그는 약 1달 정도의 개발 기간을 거쳐 next.js 14+ app router
기반의 내가 직접 전부 개발한 블로그다.
가장 보람찬 결과물이고, next.js
를 반드시 다뤄보고 말겠다는 마음가짐의 증거물이다.
끝내면서
많은 우여곡절이 있었고 많은 프로젝트 경험, 많은 노력을 한 게시글에 담아보고자 했는데 약간 주저리주저리 작성하게 된 것 같다. 내가 핵심적으로 하고 싶은 말은 환경은 부트캠프에서 만들어주는 게 아니라 내가 만들어 나가는 것이다.
가장 중요한 부분이다. 다른 사람들에게 OZ 코딩스쿨
을 추천하겠냐고 묻는다면 나는 추천할 수 있겠다고 이야기할 수 있다. 단, 부트캠프에 들어간다고 거기서 이야기해주는 모든 과정을 이행한다고 내가 개발자가 되는 게 아니다.
진짜 개발자가 되고자 한다면 열심히 부딪혀보자.
오즈 코딩스쿨 3기 FE 대표로 선정되어 강의하게 된 나
이 자리를 빌어서 항상 나에게 도움이 되어주신 조교님들과 매니저님, 그리고 백엔드에서 일하고 있는 욕쟁이 친구 성결대학교 17학번 주영민에게 감사의 말씀 올립니다. 정말 감사드립니다.
댓글은 포스팅에 도움이됩니다. 적극적인 의견 감사드립니다.