코딩 부트캠프 추천 : 항해99 코스 소개

항해99첫 취업 개발자 양성 프로그램부터 현직자 이직 및 역량강화 코스가 개설되는 코딩 부트캠프 과정입니다.

코딩 부트캠프 : 부족한 개발자 수요를 충당하기 위해서 실리콘밸리에서 비전공자를 단기간에 실전에 바로 투입 가능한 주니어 개발자로 양성하기 위한 훈련 방식입니다. 이론 최소화 및 실전 팀 프로젝트 제작 중심으로 단기간에 하드 트레이닝으로 개발자 양성을 하는데 사용됩니다.
  1. 항해 개발자 코스 : 첫 개발자 취업
  2. 항해 취업 리부트 코스 : 코딩 배경지식 있는 취준생 재취업 도전
  3. 항해 플러스 백엔드 : 4년차 이하 백엔드 개발자 이직 부트캠프

 

1.항해 개발자 코스 : 첫 개발자 취업 부트캠프

1)개요

항해 개발자 코스생애 첫 개발자 취업을 도전하는 취업 준비생을 대상으로 진행되는 코딩 부트캠프입니다. 비전공자도 수강 가능합니다.

프론트엔드 혹은 백엔드 개발자 취업을 목표로 수업이 진행되며, 코딩 신입 개발자로 첫 취업을 준비하는 과정이기 때문에 나이는 30대까지로 제한됩니다.

프론트/백엔드 개발자 : 프론트엔드 개발자는 주로 웹브라우저 및 모바일 앱의 인터페이스와 외관을 다루며, 사용자와 상호작용을 하는 작업을 하게 됩니다. 백엔드 개발자는 가장 많은 구직 수요가 있으며, 주로 기업의 서버와 데이터베이스를 관리하고, 서버의 로직과 아키텍처를 구현해서 API, 보안 등을 다루게 됩니다.

아침 9시부터 저녁 9시까지 하루 12시간주 6일(월 ~ 토)로 99일(15주)간 거의 다른 부트캠프의 두 배에 가까운 시간으로 강도 높은 부트캠프가 진행됩니다.

100% 온라인 수업이라 지리적 장벽이 없는 대신 팀 프로젝트 제작 중심이기 때문에 사실상 동기들과 계속 붙어서 수업을 진행하는 협업 문제해결방식으로 진행됩니다.

 

2)커리큘럼

개발자 코스의 커리큘럼은 기수가 진행될 때 마다 업데이트 되며 최신성을 유지하고 있습니다. 글 작성 시점의 코스는 아래와 같습니다.

1주차 웹개발 기초 : 개강 전 웹개발 기초 학습을 진행합니다. Flask 기반의 웹 미니 팀 프로젝트를 진행하고, 실제 개강을 위한 입학 시험을 진행하며 피드백을 받습니다.

Flask : 파이썬 기반 프레임워크로 파이썬을 배운 이후 간단한 앱 개발을 하는데 유용합니다. 데이터베이스 연동 등 부가 기능을 확장 프로그램으로 쉽게 할 수 있어서 미니 프로젝트에서 교육생들이 직접 결과물을 보고 빠르게 수정하는데 효과적인 프로그램입니다.

2 ~ 3주차 프로그래밍 기초 : 백엔드 개발자의 기본 언어인 자바 또는 프론트엔드 개발자의 기본 언어인 자바스크립트 기초를 학습합니다. 관련 알고리즘 문제를 풀며, 과제를 제작합니다.

자바 or 자바스크립트 : 자바는 가장 많은 취업 수요가 있는 백엔드 개발자 취업에 사용되는 베이스 언어 중 하나입니다. 주로 대기업, 금융, 보험사, 대형 소프트웨어 같은 대형 프로젝트나 시스템 개발에 사용됩니다. 이후 Spring 등 프레임워크로 연동이 됩니다. 자바스크립트는 웹브라우저에서 바로 구현되어 상대적으로 쉽고, 시각적으로 결과를 볼 수 있어 학습 만족도가 있습니다. 주로 최신 기술을 사용하는 스타트업에서 수요가 많습니다. 이후 프론트엔드 개발의 React.js나 백엔드 개발의 Node.js로 연동이 됩니다.

4 ~ 6주차 주특기 훈련 : 실제로 취업의 핵심 언어인 React.js, Node.js 그리고 Spring 중에서 1개를 선택해서 주특기로 설정하게 됩니다.

리액트, 노드JS, 스프링 : React.js는 자바스크립트 기반 프론트엔드 라이브러리로 대규모 어플리케이션 UI 관리를 할 수 있습니다. 현대 웹개발에서 상당수 프로젝트로 리액트를 사용하므로 스타트업부터 대기업까지 웹개발 프론트엔드 개발자로써 많은 취업 기회가 있습니다.  Node.js는 자바스크립트 기반 백엔드 프로그램으로 스타트업 같은 최신 웹서비스 기업에서 서버 로직 구현, API, 실시간 처리 등의 업무를 담당하게 됩니다. Spring은 자바 기반의 백엔드 프로그램으로 주로 안정성을 강조하며 대규모 개발 형태가 많은 대기업, 금융사, 보험사 등을 취업 목표로 할 때 적합한 과정입니다.

주특기를 설정하고 장기적으로 각 주특기를 기반으로 3 ~ 5개의 프로젝트를 다양하게 진행하면서 한정된 부트캠프 시간을 최대한 효율적으로 사용하게 됩니다.

국비지원 코딩 학원 단점 : 일반적인 국비지원 코딩 교육은 처음부터 하나씩 가르쳐준다는 장점이 있는 대신 모든 지식을 다 방대하게 가르치기 때문에 속도가 빨라서 겉핥기식의 교육이 많다는 점입니다. 코딩 부트캠프는 주특기를 설정해서 좁은 분야를 연마하는 방식이라 같은 시간 대비 좀 더 숙련도를 높일 수 있습니다. 그만큼 코딩 부트캠프는 완전 비전공자는 베이스 지식이 요구될 수 있습니다.

7주차 백/프론트 프로젝트 : 백엔드 수강생프론트엔드 수강생이 팀을 이뤄서 팀 프로젝트를 제작하게 됩니다.

※팀 프로젝트의 구성 : React 수강생은 사용자 인터페이스를 구축하여 프론트엔드 영역을 담당하게 됩니다. Spring 및 Node.js의 어떤 백엔드 언어와도 융합이 가능합니다. 백엔드 수강생의 경우 Spring과 Node.js는 각각 다른 팀이 될 수도 있고, 뭉쳐서 분리된 서비스를 설계할 수도 있습니다. Spring 수강생의 경우 좀 더 복잡한 서버 로직이나 대규모 서비스, 보안, 트랜잭션 관리 등을 맡게 됩니다. Node.js 수강생은 실시간 처리, 간단한 API 서비스 등의 백엔드 영역을 맡게 됩니다.

8주차 클론 코딩 프로젝트 : 클론 팀 프로젝트로 만들어보고 싶었던 서비스를 100% 똑같이 구현해서 자신의 주특기가 현업에서 어떻게 작동하는지 체크할 수 있습니다.

※클론 코딩 : 인기있는 실제 서비스를 모방하여 개발 연습하는 훈련입니다. 여러 요소들이 상호작용하는 원리를 배울 수 있습니다. 특히 모방을 해도 오류가 발생하는 것을 경험하여 문제해결방법이나 코딩의 꽃인 디버깅 능력을 배울 수 있습니다. 팀원과 같이 개발을 하면서 Git 으로 버전 관리를 하고 실전처럼 팀원과 문제를 함께 해결하는 법을 배웁니다. 클론 코딩 프로젝트는 실제 포트폴리오로도 활용 가능합니다.

9 ~ 14주차 실전 프로젝트 : 실제 프로젝트 런칭을 목표로 제작합니다. 마케팅 예산도 받아서 광고도 집행해보고, 디자이너도 같이 협업을 합니다. MVP 개발, UT사용성 테스트 등 실제 현업 개발처럼 기획부터 발행까지 진행하며, 문제를 깊은 수준까지 파고들면서 제품을 개선합니다. 끝으로 항해99 협력사 앞에서 프로젝트 발표회를 진행합니다.

MVP 개발 : 최소 기능 제품(Minimum Viable Product) 전략으로 시장에서 요구하는 최소한의 조건을 충족시키면서 제품의 핵심 기능을 출시해서 개발할 상품이 시장 가치가 있는지 사전 검증을 하는데 효율적인 개발 방식입니다.

15주차 이력서/면접 코칭 : 현업 탑클래스 개발자 세션을 통한 이력서 작성 및 면접 코칭을 조언받게 됩니다. 항해99 채용 연계(연계 취업률 50%)를 통해서 기업 미팅도 가능하며, 모의 기술 면접코딩 테스트 준비도 하게 됩니다.

부트캠프의 취업 : 보통 국비지원 코딩학원의 경우 무료에 진입장벽이 낮은 만큼 주로 SI 업체 위주로 취업을 하게 됩니다. 부트캠프 방식의 경우 가격이 비싼 대신 스타트업, 중견 이상을 노리고 취업을 준비하게 됩니다. 항해99의 경우 홈페이지 표기상에서는 수료자의 3%만 SI 업체에 취업을 하고 스타트업, 중견기업, 대기업에 주로 취업이 된다고 이야기를 하고 있습니다. 취업자 평균 초봉은 3650만원으로 명시하고 있습니다. 단, 국비지원이든 부트캠프이든 취업률에는 약간의 함정이 있습니다. 둘 다 취업률이 높은 것은 사실이지만 중도 포기율이 높은 편입니다. 그래서 끝까지 수료를 해야 높은 취업률의 통계에 들 수 있기 때문에 끝까지 포기를 하지 않을 적성이 있는지도 체크하는 것이 좋습니다.

16주 ~ 수료 이후 : 월간 취업 지원 프로그램에 참여를 할 수 있습니다. 6년차 이상 현직 개발자 멘토와 기술 면접 준비를 할 수 있습니다. 유니콘 기업 채용 공고를 분석해서 취업 대비 스터디 참여, 코딩 테스트 및 기술 면접 준비 그리고 해당 기업 재직자와 취업 세션 참여 등 다양한 취업 지원 서비스에 참여 가능합니다.

 

4)장점

현업과 유사한 팀 프로젝트 경험 : 현업에서 시니어 개발자, 동료를 선택할 수 없는 상황에서 프로젝트를 진행해야하는 환경인것 처럼 부트캠프 프로젝트도 유사합니다. 그 상황에서 팀장, 부팀장 등으로 직책도 현업처럼 결정되고 책임감을 가지며, 서로 불완전한 상황에서 커뮤니케이션과 문제해결력을 통해서 프로젝트를 헤쳐나가는 능력을 학습할 수 있습니다. 일반 코딩 국비지원에서는 거의 불가능하지만 개발자 코스에서는 디자이너, 프론트엔드 개발자, 백엔드 개발자가 나눠져서 현업처럼 계속 팀 프로젝트를 진행하므로 팀 경험을 충분히 얻을 수 있습니다.

주특기 설정 : 제한된 시간 안에 학습을 해야 하므로 주특기를 설정해야 하는데 사전 스터디를 통해서 팀원과 프로젝트를 만들면서 프론트엔드가 뭐고, 백엔드가 뭔지 직접 몸으로 느낄 수 있습니다. 그래서 주특기 설정을 하는데 큰 어려움이 없습니다.

전공무관 취업 : 고졸이든 비전공자 출신이든 기술 실력이 있고, 팀원과 소통할 수 있는 능력만 증명이 된다면 수료 후 취업이 가능하다는 것이 장점입니다.

심도있는 수업 내용 : 코딩 국비지원에서는 전체를 방대하게 다루기 때문에 특히 최신 기술을 깊이 있게 다루기 어렵습니다. 반면 개발자 코스에서는 전체를 다 다루지 못하는 대신 주특기 범위를 좁혀서 프로젝트를 계속 생산하므로 좀 더 고급 기술을 익힐 수 있습니다.

동료 : 국비지원 코딩과 부트캠프는 수료 포기자의 비중이 높은 대신 최종 수료자에 들면 인간관계가 오래 지속된다는 장점이 있습니다. 항해99 개발자 코스는 하루 12시간 주 6일 100일이기 때문에 취업 후에도 교류 가능한 관계로 이어지며, 서로 취업도 소개해주고, 이직할 때 다시 소개해주거나 진로 고민 등 오랜 기간 유지되는 경우가 많다는 평이 많습니다. 이는 대부분 국비나 부트캠프 과정이 최종 수료에 들고 취업에 성공한 경우 비슷합니다.

문제해결사고법 : 장점이자 단점이 될 수 있는 섹터로 장점 관점에서 설명을 한다면, 질문을 제대로 하는 법을 배울 수 있습니다. 부트캠프 과정에서는 모르는 것이 투성이이지만 멘토링에서 질문을 해도 바로 해결책을 주는 것이 아니라 ‘질문 하는법’이나 ‘문제 해결과정에서의 고민’을 유도하려고 합니다. 왜냐하면 현업에 가면 모르는 것이 더 많지만, 모든 의문을 시니어 개발자에게 질문하는 것이 불가능해서 스스로 해결해야 되는 것이 많기 때문입니다. 현업에서의 문제해결사고법을 부트캠프 단계에서 습관을 들이는 연습을 할 수 있습니다.

 

5)단점

중도 하차 : 개발자 코스를 비롯한 대부분 부트캠프의 문제는 중도 하차에 있습니다. 부트캠프는 특성상 팀 프로젝트 중심으로 돌아가는데 미니 프로젝트, 클론 프로젝트, 실전 프로젝트 등 난이도가 어려워질수록 이탈자가 크게 증가합니다. 적성 실력 문제, 진로 변경,스터디 중심의 학습에 대한 불만 등으로 이탈하는 경우가 많습니다. 파이널 프로젝트에서는 6명의 팀원에서 2명만 남는 등 인원 보충이 힘들다는 단점이 있습니다.

국비 및 부트캠프의 수료율 : 국비지원 코딩이나 코딩 부트캠프는 졸업자의 취업률은 매우 높지만, 중도포기자가 많기 때문에 입학생의 전체 취업률은 그렇게 높은 편은 아닙니다.

자기주도학습의 어려움 : 개발자 코스 과정은 공부양과 강의 듣는 시간을 본인이 직접 결정해서 자율적으로 학습하는 과정이 사람에 따라서 안맞을 수 있습니다.

방대한 학습양 : 정규 수업 과정이 하루 12시간 주 6일인 것은 실제 수강을 하면 그 이상을 해야될 정도로 수업양이 많다는 것을 의미합니다. 양이 너무 많아서 힘들었다는 평이 있습니다. 아무래도 전공자가 4년 배울 지식을 3 ~ 9개월내로 압축해서 배우기 때문에 쉽지 않은 과정입니다.

비전공자 어려움 : 개발자 코스는 비전공자도 수강이 가능한 코스이고 실제로 고졸이나 비전공자분들이 취업한 케이스도 있지만, 사전지식이 없는 사람에게는 꽤 어렵다는 평이 많습니다.

부트캠프 단점 : 비전공자 입장에서 국비지원 코딩 수업은 난이도는 높지 않지만, 익숙하지 않은 전공지식의 방대한 내용을 빠르게 넘어가야 하므로 수업 속도가 빨라서 벅차다면, 부트캠프 수업은 좁은 분야를 연마하는 대신 기초 내용이 대거 생략된 자기주도학습 중심이라 난이도 측면에서 어렵습니다. 많은 부트캠프가 비전공자도 수강이 가능함을 명시하고 있지만, 생활코딩이나 각종 5주 과정 무료 국비 과정(K-Digital-Training 스파르타코딩클럽 등)으로 기초 지식을 미리 듣고 가시는 것을 추천합니다.

 

6)가격

개발자 코스 가격선납형(450만원)과 후납형(550만원)으로 나눠집니다. 선납형은 100만원 더 저렴한대신 미리 돈을 지불하게 됩니다. 할부의 경우 12개월 월 37.5만원으로 분납이 가능합니다.

후납형의 경우 선납으로 150만원 혹은 12개월 할부로 월 12.5만원을 지불하고, 취업 후 400만원을 결제하는 방식이 있습니다.

선납형 혼합형
지불 합계 450만원 550만원
  선납금 일시불 450만원 150만원
할부 월 37.5만원
12개월
월 12.5만원
12개월
  후납금 일시불 X 400만원(취업후)
부트캠프 종류 : 국비지원 코딩 교육은 전액 무료라는 가성비가 있는 대신 주로 SI 업체에 취업하게 되므로 초봉은 높지 않습니다.(대신 일단 취업을 하면 이직으로 연봉을 올릴 기회는 많습니다.) 코딩 부트캠프는 스타트업 이상을 목표로 하는 수업 난이도가 있는 편이라 사전지식이 어느 정도 있어야 좋습니다. 유료 부트캠프의 경우 200 ~ 1000만원 등 비교적 고가입니다. 무료 부트캠프는 보통 대기업, 유니콘 스타트업, 정부 지자체 등에서 지원을 하는 대신 입학 시험, 나이 및 전공 제한, 적은 티오 등 입학조건이 까다로워서 플랜 B로 생각하면 효율적입니다.

 

2.항해 취업 리부트 코스 : 재취업 도전 선행지식 보유자용

1)개요

항해 취업 리부트 코스는 개발 공부 경험이 있지만 서류 및 면접 탈락으로 재취업 실력 상승이 필요한 수강생을 대상으로 진행되는 후불형 코딩 부트캠프입니다.

3 ~ 6개월 이상 개발 공부를 한 기타 국비 및 부트캠프 수료생 등을 대상으로 자료구조와 알고리즘개인 프로젝트 제작 중심으로 수업이 진행됩니다.

요구 지식 : 프론트엔드 개발자 취업 준비생의 경우 자바스크립트 및 리액트 기본 지식에 로그인 연동이나 API, 결제 SDK 연동 경험 등이 선호되며, 백엔드 개발자 지원생은 자바, 스프링 지식에 CRUD 및 ERD 설계 경험이 선호됩니다.

만 18 ~ 36세 나이 제한으로 10주의 교육기간에 월 ~ 토 매주 6일간 하루 12시간 09:00 ~ 21:00의 강행군으로 단기 취업 준비가 진행됩니다.

 

2)커리큘럼

OT 주차 역량 평가 & 학습 상담 : 수강 전 역량 평가를 통해서 기초 언어 구현력, 관련 프레임워크 활용도, 그리고 자료구조와 알고리즘에 대한 이해도를 체크받습니다.

자료구조와 알고리즘 : 유니콘 스타트업이나 구글, 아마존 같은 대기업에서는 단순하게 코드가 작동되는 것을 넘어 시스템 성능 최적화를 요구하기 때문에 구직자가 회사의 복잡한 소프트웨어의 문제를 해결할 수 있도록 자료구조와 알고리즘 능력을 엄격하게 평가합니다. 또한 취업을 넘어 자료구조와 알고리즘의 원리를 이해하면, 고급 개발 업무, 아키텍쳐 설계, 시스템 엔지니어링 등 더 복잡한 기술 역할 수행을 할 수 있습니다.

역량 평가 기반으로 매니저와 상담을 통해 향후 10주간의 학습 방향성을 계획하게 됩니다.

1주차 이력서 업그레이드 : 현직 개발자 서면 3회 피드백 및 1:1 이력서 코칭을 통해서 기존 프로젝트를 복기하고 이력서 기본 템플릿을 제공받습니다. 이력서 작성 및 직무 분석에 대한 실시간 특강도 제공됩니다.

2 ~ 4주차 자료구조 & 알고리즘 : 파이썬이나 자바를 선택해서 자료구조와 알고리즘 공부를 하게 됩니다. 오전에는 백준 실버 ~ 골드 급의 난이도별 문제를 4 ~ 6개를 풀고, 오후에는 팀원과 스터디를 통해서 1문제씩 맡아서 풀이 방법을 설명하며 공유합니다. 야간에는 현직 개발자 멘토가 주 3회 피드백을 통해서 최적의 자료구조 및 알고리즘 해결법을 교정해줍니다. 그 밖에 팀 스터디대기업 코딩 테스트를 준비합니다.

자료구조와 알고리즘 수업은 3주로 구성되며 각 주차별 수업에서 배울 개념은 아래와 같습니다.

2주차 기본 자료구조 : 큐/스택/연결 리스트/그래프

큐, 스택, 연결 리스트, 그래프 : 큐(Queue)는 먼저 들어온 데이터가 먼저 나가는 FIFO 방식으로 주문을 먼저 한 고객의 상품이 먼저 배송되도록 하는 등에 사용됩니다. 스택(Stack)은 나중에 들어온 데이터가 먼저 나가는 LILO 방식으로 쇼핑몰에서 고객이 여러 페이지를 방문할 때 각 페이지는 스택에 저장되며, 고객이 뒤로 가기 버튼을 누르면, 가장 최근의 페이지가 먼저 보여지게 됩니다. 연결 리스트(Linked List)는 배열 처럼 나열된 자료 구조로 데이터를 추가하거나 삭제가 쉬워 뉴스 피드 등에서 피드를 삭제하거나 추가하는 작업 등에 사용됩니다. 그래프(Graph)는 노드가 서로 연결된 자료 구조로 쇼핑몰의 상품 추천 알고리즘처럼 사용자 취향에 맞는 맞춤형 콘텐츠 제작에 활용될 수 있습니다.

3주차 자료구조 심화 : 그래프 탐색 BFS/DFS, 이진트리

그래프 탐색, 이진트리 : 그래프 탐색 BFS(너비 우선 탐색)는 그래프 노드에서 가장 가까운 노드부터 최단 경로를 찾습니다. SNS 라면 나와 관계도가 높은 친구부터 추천을 하게 됩니다. DFS(깊이 우선 탐색)는 그래프 노드에서 최대한 멀리 연결된 곳까지 가서 다시 돌아옵니다. 예를 들어 설계한 아키텍쳐 모음에서 특정 모듈이 오류가 났을 경우 해당 오류에 영향을 받는 모든 모듈을 파악해서 오류 범위를 찾는데 사용할 수 있습니다. 이진트리(Binary Tree)는 백엔드 개발의 핵심 데이터 관리 시스템으로 데이터를 이진으로 정렬해서 검색 속도를 높여 금융, 의료, 보험 등 대규모 서비스에서 사용되는 시스템의 정확성과 성능을 높여줍니다.

4주차 기타 빈출 알고리즘 심화 : 정렬, 이진탐색, 최단 경로

정렬, 이진탐색, 최단 경로 : 정렬(Sorting)은 자료구조에 있는 데이터를 정렬하는 법으로 버블, 삽입, 퀵, 병럴 등 여러 방법이 사용됩니다. 예를 들어 API 요청이 있을 대 가격별, 평점별 방식으로 제품 목록을 정렬해서 API로 제공 가능합니다. 이진탐색(Binary Search)은 탐색 범위를 반으로 줄여 대규모 시스템에서 선형 검색보다 빠르면서도 서버 부하를 줄일 수 있는 데이터 탐색 기술입니다. 최단 경로(Shortest Path)는 두 노드간 최단 경로를 찾습니다. 예를 들어 증권사의 HTS에서 최단 경로 알고리즘으로 가장 빠른 경로로 거래를 성사시킵니다.

5 ~ 8주차 대기업 시나리오 프로젝트 : 팀 프로젝트 포트폴리오의 단점은 자신의 기여도를 증명하기 힘들기 때문에 1인 프로젝트를 제작해서 기여도 100%를 증명할 수 있도록 합니다. 백엔드 또는 프론트엔드 프로젝트를 골라서 제작하게 됩니다.

백엔드 프로젝트Spring을 기반으로 4주차의 구간 구성은 아래와 같습니다.

백엔드 프로젝트 1주차 개발 요구사항 정리, 기초 서버 구축

대규모 트래픽 처리 : Spring 기반 프레임워크의 프로젝트는 대부분 금융, 보험사, 대형 소프트웨어 같이 많은 사용자로부터 동시에 발생하는 요청을 효율적으로 처리할 수 있는 시스템 능력이 필요한 대규모 트래픽 처리를 다루게 됩니다. 그래서 프로젝트의 요구 사항도 대규모 트래픽 처리를 염두해두고 기본 서버 구조를 설계하게 됩니다. 또한 대규모 트래픽이 발생하는 서비스는 안정성과 정보의 정확성이 요구되기 때문에 다양한 테스팅 기법을 통해서 초기 코드의 견고함을 증명하는 설계를 하게 됩니다.

백엔드 프로젝트 2주차 마이크로서비스 아키텍쳐 학습 및 구축

마이크로서비스 아키텍쳐와 API 게이트웨이 : Spring 기반의 대형 금융, 보험사 들의 서비스는 부분 고장으로 전체가 멈추면 안되기 때문에 레고 블록처럼 일부 서비스가 고장이 나더라도 지장이 없도록 각 요소들이 독립적으로 작동 및 배포가 가능한 마이크로 서비스 아키텍쳐로 구성되었습니다.  동시에 각 로그인 관리, 결제, 송금 등 서비스들이 느슨한 결합으로 연결되며, 서로 연결이 될 때 API 게이트웨이를 이용해서 정보를 주고 받습니다.

백엔드 프로젝트 3 ~ 4주차 프로젝트 고도화, 부하테스트 서비스 응답속도 개선, 단일/통합 테스트로 개선

오류 대처 및 테스트 : 대형 트래픽을 부담하는 서비스는 필히 오류 상황이 발생하기 때문에 다양한 오류 상황에 대한 대처가 회복탄력성으로 필요합니다. 써킷브레이커는 주식 시장의 주가 급락시 거래정지처럼 일정 기준 이상 요청이 실패되면 각 서비스 호출을 일시 차단해서 시스템을 안정화시킵니다. Retry는 요청이 실패한 경우 자동으로 다시 요청을 시도합니다. Bulkhead는 시스템 일부에 문제가 생겨도 다른 부분에 문제가 생기지 않도록 해당 요소를 격리시킵니다. Rate/Time Limiter는 서비스 요청 비율 제한, 요청 처리 시간 제한 등으로 시스템 과부하를 방지합니다. 개별 서비스는 단일 테스트를 하고, 마이크로 서비스의 여러 통합 기능은 종합으로 테스트를 하게 됩니다.

프론트엔드 프로젝트React를 기반으로 4주차의 구간 구성은 아래와 같습니다.

프론트엔드 프로젝트 1주차 기본 개발 요구사항 정리, Firebase 서버 구축

파이어베이스 : 구글 클라우드에서 제공하는 서버리스 아키텍쳐로 백엔드 서버의 복잡한 관리없이도 데이터베이스, 사용자 인증, 파일 저장, 배포를 위한 호스팅, CDN, SSL 인증 등을 쉽게 구현할 수 있습니다.

Optimistic Update 구축

Optimistic Update : 고객의 요청이 서버에서 처리되기 이전에 마치 처리가된 것처럼 UI에서 먼저 구현을 해서 사용자 경험을 높입니다. 예를 들어 유튜브의 좋아요 버튼을 클릭하면, 서버는 해당 반영사항을 여전히 백그라운드에서 요청을 처리중이지만, 고객 입장에서는 숫자가 바로 올라가면서 좋아요 신호가 실시간으로 반영된것으로 보입니다. 쇼핑몰 장바구니 넣기, 커뮤니티 댓글 시스템, SNS 실시간 채팅 등도 모두 비슷한 원리로 고객의 요청은 실시간으로 선반영해주고, 서버와의 실제 데이터 교환은 백그라운드에서 돌려서 사용자 경험을 높여줍니다.

Vite 기반 개발

Vite : 개발 초기 단계에 즉시 사용 가능한 개발 서버를 제공하여 코드 변경 사항을 실시간으로 브라우저에 반영해서 즉각적인 피드백으로 작업 효율을 증가시킵니다.

프론트엔드 프로젝트 2~ 3주차 와이어프레임과 유저 플로우 설계 및 개발 시작

와이어프레임과 유저 플로우 : 와이어프레임은 앱의 구조를 도식화하여 페이지 레이아웃, 기능의 위치 등을 설정합니다. 유저 플로우는 고객의 앱 사용 과정을 시각화로 표현하여 사용자 경험 및 앱 상호작용을 설계하는 UI 작업을 도와줍니다.

시나리오에 따른 결제 SDK 작업

결제 SDK : SDK(Software Development Kit)는 결제 시스템을 구현할 때 결제 방식 통합, 보안 등을 쉽게 구현할 수 있는 도구 모음입니다. 결제에 필요한 기능이 API, 샘플 코드 등으로 지원되어 결제 시스템 제작시 작업 능률을 높일 수 있습니다.

또는 다수의 멀티미디어 기능이 반영된 서비스 개발

Lazy Loading : 동영상 스트리밍, 사진 공유 플랫폼, 웹기반 게임 등 멀티미디어 서비스를 운영할 때 성능을 높입니다. 특히 모바일 기기처럼 하드웨어 성능이 제한된 상황에서 요청을 할 때 고객이 필요로 하는 순간에만 자원을 로드해서 초기 로딩 속도를 높여서 사용자 경험을 높이고, 사용 리소스를 최소화해서 자원 낭비를 줄여서 성능을 높입니다.

Taliwind CSS로 사용자 정의 디자인 구현

Taliwind CSS : 현대 CSS 프레임워크로 레이아웃, 글자, 버튼, 그리드, 반응형 디자인 등을 좀 더 빠르고 일관된 디자인으로 구현하게 합니다.

Pre-fetching 구현

pre-fetching : 사용자가 다음 링크를 클릭하기전 해당 리소스를 미리 가져와서 웹 어플리케이션의 성능을 향상시키고 사용자 경험을 개선시킵니다. 예를 들어 유튜브에서 임의의 동영상을 보고 있을 때, 하단에 나오는 추천 동영상에 대한 여러 링크가 있다면, 미리 리소스를 불러와서 사용자가 관련 링크를 클릭해도 즉각 반응할 수 있도록 하는 작업입니다.

프론트엔드 프로젝트 4주차 테스트 코드 작성 후 테스트 커버리지 높이는 작업, Cypress로 테스트 자동화

테스트 커버리지와 자동화 : 테스트 커버리지는 작성한 코드에서 테스트가 완료된 비중을 나타냅니다. 코드가 복잡해질수록 작은 단위의 코드 부터 여러 단위의 통합까지 테스트가 필요하며, 이렇게 테스트가 완료된 커버리지를 높이는 작업이 필요합니다. Cypress를 이용하면 테스트 자동화를 설정해서 버튼 클릭, 폼 입력 등이 자동 테스트되어 작동 유무를 실시간으로 점검해서 프론트엔드 측면에서 서비스 품질을 향상시킬 수 있는 중요한 작업이 됩니다.

9 ~ 10주차 취업 지원 : 완성한 백엔드 또는 프론트엔드 개인 프로젝트를 반영하여 취업용 이력서를 다시 업그레이드합니다. 또한 개인 프로젝트에서 사용한 기술 및 개념을 숙지해서 면접 질문을 대비합니다. 빈출 면접 개념을 공부하며, 모의 면접 개인 코칭으로 면접 피드백을 받습니다.

수료 이후 취업 지원 프로그램 참여 : 취업 후 1년 이내 취업을 못하면 수강료를 지불하지 않기 때문에 취업이 될 때까지 취업 지원을 받게 됩니다. 취업 지원 프로그램에 참여를 하여 이력서 재작성, 기술 모의 면접, 코딩 테스트 대비 등을 준비합니다. 기업 면접이 잡히면 예상 질문을 공부하며, 현직 시니어 개발자채용 담당자1:1 모의 면접을 통해서 구체적인 면접을 대비합니다.

 

3)장점

강제 발표형 공부 : 자료구조와 알고리즘 공부를 할 때 오전에는 쉬운 문제어려운 문제를 섞어서 풀고, 오후에는 조원과 해당 문제를 어떻게 풀었는지 1문제씩 맡아서 설명을 발표해야 합니다. 설명을 해야 하므로 강제로 공부를 하게 되고, 야간에는 멘토가 가장 효율적인 코드를 골라서 피드백해주기 때문에 강제 발표형 공부로 자료구조와 알고리즘 실력을 쌓을 수 있습니다.

개인 프로젝트 제작 : 국비 코딩이나 일반 부트캠프의 단점은 팀 프로젝트로 면접시 포트폴리오내 자기 기여도를 증명하기 어렵고, 중간에 조원들이 나가면, 소수 인원이 프로젝트를 끌고 나가거나 와해되는 경우가 있다는 점입니다. 하지만 개인 기여도 100% 프로젝트로 자기 실력을 증명할 수 있고, 매주 구현되는 과제로 주차별 구체적인 작업이 가능합니다.

데드라인 : 실무처럼 프로젝트 제작 마감이 각각 주어져서 매니저들의 지속적인 압박으로 강제로 프로젝트 제작을 하며 문제를 해결하는 습관을 들일 수 있습니다.

멘토링 : 개인 멘토링은 물론이고, 기술 매니저가 있어 기술 문제도 계속 질문을 할 수 있습니다. 자료 구조와 알고리즘은 팀원들끼리 스터디를 하고, 문제 해결법을 공유한 다음에 가장 실력이 좋은 현직자 멘토가 주 3회 스터디에 참여해서 더 좋은 자료구조나 알고리즘을 추천해서 클린 코드를 작성할 수 있게 공부할 수 있습니다.

동료 : 국비지원 코딩이나 부트캠프의 장점입니다. 최종 수료 비율은 높지 않지만, 최종 수료에 들게 되면 취업이 간절해서 온 사람들이 많아서 하루 12시간 같은 문제를 가지고 고민을 하다 보면 친해져서 취업 이후에도 계속 관계를 이어나가기 쉽고, 별도의 스터디를 만들면서 건설적인 관계를 얻을 수 있는 기회를 찾을 수 있습니다.

 

4)단점

자기주도형 공부의 한계 : 수업 자체가 개발 경험이 있는 사람이지만 그 만큼 난이도가 높기 때문에 모르는 내용이 많이 등장합니다. 실무에서 사수가 있더라도 모든 문제를 바로 물어볼 수 없고, 혼자서 충분히 해결을 한 다음에 질문을 할 수 있는 것은 사실입니다. 그래서 이런 부트캠프도 수업은 최소한의 강의만 제공하고, 방치형이라 코드에 에러가 발생해도 디버깅을 스스로 해야 합니다. 자료구조와 알고리즘은 팀원 스터디 및 현직자 멘토의 피드백으로 오류 피드백이 가능하지만, 실제 개인 프로젝트 단계에서는 코드 리뷰가 없기 때문에 내가 작성한 코드가 맞는지 확인이 어렵다는 아쉬움의 평이 있습니다.

 

5)가격

보증금 5만원을 제외하면, 후불형 결제 방식으로 수료 후 1년 이내에 취업에 성공하면, 175만원을 후납하시면 됩니다.

교육비
보증금 ₩50,000(개강일 환급)
취업 후 결제 ₩1,750,000
지불조건 수료 후 1년 내 취업

 

3.항해 플러스 백엔드 부트캠프 : TDD 클린코드, 자동화/모니터링, 주말반

항해 플러스 백엔드 과정은 TDD 기반 클린 코드와 현업에서 사용 가능한 자동화, 모니터링, 대용량 처리, 장애 대응 기술을 배우며, 주말반으로 직장을 다니면서도 이직 준비 병행이 가능한 경력자용 부트캠프입니다.

첫째, TDD 기반 클린 코드로 서버 구축을 진행합니다.테스트 주도 개발(TDD)로 코드를 작성해서 개발 초기 단계부터 코드 오류를 줄이며, 소프트웨어별 독립적 계층 구조(레이어드 아키텍처)를 만들며, 유지보수와 확장성, 가독성이 좋은 클린 코드로 아키텍처를 설계합니다.TDD와 클린코드 기반에서 자바스크립트 테스트 라이브러리(Jest), 단위 테스트 도구(Unit)로 테스트를 구현하고, 자바 기반의 스프링, Thymeleaf나 타입 스크립트 기반의 NestJS 프레임워크로 실제 서비스를 구현합니다.

둘째, 실제 백엔드 팀에서 중요한 역할을 할 수 있도록 자동화 프로세스, 모니터링 시스템, 대용량 트래픽과 데이터 처리, 그리고 장애 대응 등을 구현합니다.

자동화 프로세스 구축에서는 CI(코드 변경 지속적 통합) 및 CD(코드 변경 지속적 배포)를 통해서 자동 통합, 테스트, 배포로 개발 과정 효율성을 극대화시킵니다. 코드 변경 자동 감지 및 테스트(Github Action), 소프트웨어 버전별 업데이트(Semantic Versioning), 컨테이너 기반 애플리케이션 관리 및 자동 확장(Docker-compose&ECS Fargate) 등으로 신속하고 안정적인 소프트웨어 업데이트를 구축합니다.

모니터링 시스템 구축에서는 문제 발생시 신속 대응을 위해 실시간 성능 분석(APM), 에러 로그 관리(Wingston Logger), 서버 리소스 모니터링(아마존 클라우드워치, 엘라스틱서치, 로그스태시, 키바나, 데이터독), 알림 시스템(Slack Webhook), 실시간 에러 트래킹(Sentry) 등을 구현합니다.

대용량 트래픽 및 데이터 처리를 위해 대용량 데이터 고속 처리(Redis), 대용량 트래픽 실시간 처리(Kafka), 캐싱과 데이터 비정합성 설계, 비동기 데이터 처리, 큐 시스템 구현 등을 진행합니다.

장애 대응 훈련에서는 실시간 모니터링에서 서버 장애 체크 및 대응 훈련을 하고, 대응 실패시 리포트 작성법을 배웁니다. 특히 고가용성 설계를 위한 SPOF 분석, 다중화, 로드밸런싱, 서킷 브레이커 적용 등을 훈련합니다.

셋째, 주말반 부트캠프로 직장 다니면서도 이직 준비를 할 수 있어 리스크가 적습니다. 4년차 이하 주니어 개발자를 대상 혹은 그에 준하는 실력을 가진 취업 준비생을 대상으로 매주 토요일 오후에 10주간 진행이 됩니다.

온라인, 오프라인 병행으로 사수가 없는 직장에서 성장을 느끼거나, 반복적인 업무 중심의 SI 업체에서 실력 상승에 한계를 느낀 경우 TDD, CI/CD, 모니터링 시스템 구축, 자동화 시스템, 대용량 트래픽 처리 등의 대형 프로젝트에 자주 사용되는 기술 습득으로 실무 실력을 향상시킬 수 있습니다.

부트캠프 방식이기 때문에 현업 프로젝트 매칭 등 헤드헌터를 통한 취업 연계도 지원됩니다.

단점은 현직자들이 이직 준비를 같이 하다보니 본업이 바빠져서 팀 프로젝트에서 팀원이 빠지게 되는 경우가 생기거나 팀 프로젝트로 야간에 시간 조율시 스케줄 맞추기가 쉽지 않을 수 있습니다.

가격은 일시불 190만원 혹은 12개월 할부 월 16만원씩입니다. 항해99, 내일배움캠프, 정글 등의 수료생의 경우 20만원 할인이 가능합니다.

정리하면, TDD 기반 클린 코드 작성, 실무에 유용한 자동화 프로세스, 모니터링, 대용량 트래픽 처리, 장애 대응 훈련, 그리고 주말 부트캠프로 이직 준비가 필요한 경우 괜찮은 백엔드 부트캠프 과정입니다.