본문 바로가기
기술 면접

한 길만 걷자 (제로베이스 백엔드취업 스쿨 14기 수강 후기)

by JayAlex07 2024. 2. 4.

 

한 길만 걷자 (제로베이스 백엔드 취업 스쿨 14기)

 

- 백엔드 스쿨?

- 제로베이스

- 프로젝트!

- 성장!

- 마무리

 

 

 백엔드 스쿨? 

 

비전공자로서 풀스택 개발 국비를 들으면서, 내 자신이 성장을 하고 있다는 것을 처음으로 느꼈다.

알고리즘 문제를 풀며, 내가 생각하며 만든 어플리케이션을 보며, 정말 많은 성취감을 느꼈고, 개발자를 하면 지속적으로 성장을 할 수 있을 것이라고 생각했다.

그래서, 나는 내 자신을 레벨업하기 위해 개발자로 커리어 전환하기 결심을 했다.

 

"IT 기획자가 되기 위해 어떤 노력을 하셨나요?"

취업 준비를 하며 자신감이 완전 바닥을 치고 있을 때에, 면접에서 들었던 질문이었다.

개발자로서 취업이 너무 안 되다 보니, 전에 1년 반 동안 기획자로 일 했던 경험을 살려 IT 기획자로도 지원을 했다.

그 와중에 한 회사에서 면접관이 저 질문을 했을 때, 머리에 종이 울렸다.

나는 비개발자로서 풀스택 개발을 들으면서, 프론트 엔드, 백엔드 모두 매력이 있다고 생각했다.

그래서 정말 취업 준비를 했을 때, 백엔드, 프론트 엔드, 심지어 데이터분석까지 가릴 것 없이 지원을 했다.

길을 못 잡고 있을 때, 길을 잡아준 질문이었던 것 같다.

 

하지만, 처음에는 개발자로서 취업을 하는 것이 어렵다고 느껴 PM 스쿨을 알아보면서 제로베이스를 알게 되었다.

그러다, 아빠와 상담을 하다가, 그래도 개발 시작한거 한 번 더 도전 해보라고 하셨다.

'개발자'로서 취업을 준비 하였을 때에는, 백엔드 공고는 Java가 정말 많았다.

풀스택 개발 과정을 들었을 때에는 Python을 기반으로 과정을 수료했기 때문에, 쓸 수 있었던 곳이 많이 한정적이었다.

그래서 아빠의 조언과, 제로베이스에서도 백엔드 스쿨이 있고, Java, Spring을 배울 수 있어, 지원하게 되었다.

 

 

제로베이스를 선택한 이유

  1. 최종 프로젝트 때에 프론트 엔드 수강생과의 협업 - 백엔드 개발자로서 정말 필요한 경험이라고 생각했다
  2. ZES 시스템과 맞춤형 학습 - 지속적으로 내 자신에게 동기부여를 할 수 있을 것이라고 생각했다 
  3. 취업 못 하면 환불 ㅎㅎ - 내 목표는 취업이었고, 제로베이스의 '자신감'을 믿어보고 싶었다

 

 


 

 

 제로베이스 

위에 제로베이스를 선택한 이유처럼, 정말 과정을 들으면서 내 자신을 동기부여할 것들이 많았다.

일단 제로베이스를 들어온 제일 중요한 목표였던 프론트 엔드 수강생과 협업을 하기 위해 우수 수강생이 되어야 했다.

그래서 우수 수강생으로 뽑히기 위해, 정말 열심히 했다.

ZES 시스템을 통해 나의 백엔드 개발자로서의 점수를 볼 수 있었고, 그 점수를 보며 내 자신을 동기부여 시켰다.

결국 ZES 시스템의 점수를 토대로 우수 수강생을 가렸다.

확실히 전에 국비를 다니면서, 남들이 '너 잘하잖아' 라고 듣는 것보다, 점수로 내 위치를 보니 자신감도 생기기 시작했다.

 

프로젝트를 하면서 현업에 계신 멘토분들의 멘토링도 너무 좋았다.

국비를 하면서는, 알고리즘 문제를 풀었던 코드에 대한 리뷰만 있었지, 프로젝트에 대한 코드 리뷰는 별로 없었다.

그런 점에서, 현업에 계신 멘토분들이 '나의 코드'를 보며 직접 리뷰를 남겨주신 점이 더 전문성이 있었다.

이렇게 전문성이 있다보니, 더 많은 것을 배우게 되었다.

 

 

프로젝트를 하면서 다양한 것을 시도할 수 있었다.

풀스택 개발 과정을 들으면서, 프론트부터 백엔드까지 모두 신경을 써야 했던 점에서, 완전 새로운 기술보다 CRUD 위주로 프로젝트를 했던 것 같다. (이건 풀스택 개발 과정을 들어서 그랬던 점이 컸던 것 같다)

최종 프로젝트 때에, 프론트 엔드 수강생분과 협업을 하면서 프론트와 백엔드 분업화가 잘 이루어졌다.

그런 점에서, 백엔드 기능 구현을 할 때에, 새로운 시도를 더 많이 할 수 있었다.

 

 

확실히 SpringBoot Framework를 사용하면서, 더 많은 기능들을 구현해보았다.

디테일 적으로 신경을 써야할 부분이 Django에 비해 훨씬 많은 것 같다.

Django를 배울 때는 'Rest API'가 너무 햇깔렸다. (심지어 강사님한테 물어봤을 때, 'Rest API는 Rest API죠' 라는 대답을 들었다...) 그래서 Django Rest Framework를 따로 공부를 해야 한다고 들었을 때, 조금 거부감이 있었던 것 같다.

근데 Springboot를 사용하며 @RestController와 @Controller 차이를 알게 되었다.

그러다 보니, 자연스럽게 Django와 Django Rest Framework의 차이점도 알게 되었다. (국비에서 DRF를 혼자서 공부하라는 것보다, 조금이라도 제대로 설명해줬으면 좋았을 것 같다...)

 

 


 

 

 프로젝트! 

 

알고리즘, CS는 자신이 없어도, 프로젝트는 자신이 있었다.

국비를 들으면서 최종 프로젝트 때 최우수상을 받았던 경험이 있었다.

그리고 협업 또한, 경험이 있어 협업은 매우 자신이 있었다.

 

제로베이스를 하면서 프론트 엔드 수강생들과의 협업을 위해, 처음부터 끝까지 열심히 공부했다.

ZES 시스템에 신경을 많이 썼던 이유도 위와 같았다.

 

다행히도, 우수 수강생으로 뽑혀서, 프론트 엔드 수강생과 협업을 하게 되었다.

 

USports

우리 조는 3명의 백엔드 수강생과 2명의 프론트 엔드 수강생이 참여를 했다. (중간에 프론트 엔드 수강생이 나가셔서, 사실상 4명으로 진행을 했다)

원활한 소통을 위해, 매일 ZEP 이라는 매타버스 플랫폼에 접속을 하여, 서로 업데이트를 하고, 어려운 것이 있으면 서로 물어보았다.

그리고 서로, 역할을 잘 분배하여 어플리케이션을 만들어갔다.

 

어플리케이션은, 스포츠를 하는 인구를 위해 인스타그램처럼 운동 기록을 올리고, 그리고 운동 모임 모집 기능을 통해, 함께 운동을 할 수 있도록 플랫폼을 제공해주었다.

개인적으로는 한번도 회원가입을 제대로 해본적이 없어서, 회원가입을 메인으로 구현을 했다.

그리고 Websocket을 이용한 실시간 채팅 기능도 구현을 하며, 새로운 도전을 많이 했다.

 

어플리케이션 DB를 설계할 때, 바로 전 개인 프로젝트에서 멘토님이 하신 말씀을 많이 생각하며 설계를 했다.

특히 쿼리를 많이 사용할 수록, JOIN 을 많이 사용할 수 있어, 추후에 유저가 많아지면, DB에 과부하가 걸릴 수 있는 확률이 높다고 하셨다.

그래서 JOIN을 줄이기 위하여, 테이블을 최소화 시키려고 노력했다.

그리고 DB 보안을 위해 Entity를 직접 사용하기 보다는 DTO를 사용하려고 노력했다.

그 외에도, 변수 이름 같이, 이름이 길어도 다른 사람들이 볼 때, 바로 이해할 수 있도록 변수 이름을 작성했다.

 

개인적으로 여러 협업을 통해, 소통의 중요성을 많이 느끼게 되었다.

다행이, 우리 팀원들도 소통을 중요시 하였고, ZEP에 들어와서, 온라인이지만 옆에서 같이 개발을 하고 있는 것처럼 협업을 하였다. 

매일매일 회의를 하며, 그 날 무엇을 할지 계획을 얘기하고, 서로 힘들어하고 있는 기능에 대해서 얘기를 나누었다.

그렇게 서로 무엇을 하는 것을 알고 있어, 충돌이 안 생겼고, 서로 도움을 주면서 빠르게 기능을 구현할 수 있었다.

 

결과적으로, 국비에서 최종 프로젝트 최우수상을 이어 백엔드 스쿨 우수작으로 뽑히게 되었다!

소통의 힘은 정말 큰 것 같다 😀😀😀

 

 

 

 

https://jejoonlee.tistory.com/category/%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8/USports

 

'프로젝트/USports' 카테고리의 글 목록

개발 & 축구

jejoonlee.tistory.com

 

 


 

 성장! 

 

나는 내 자신이 성장할 때마다 기분이 너무 좋다.

제로베이스 강의를 들으면서, '내가 정말 성장을 하고 있나?' 라는 고민을 정말 많이 했다.

그냥 강의를 보면서 무작정 코드를 따라 쓰기만 하다보니, 의심이 들기 시작했다.

 

하지만, 역시 반복 학습은 도움이 되었다!

 

최종 프로젝트를 하기 전에 두 번의 개인 프로젝트를 진행한다.

첫 번째 개인 프로젝트에서는 단순한 CRUD 어플리케이션을 만드는 것이고, 주제가 확실하게 주어진다.

그렇게 첫 개인 프로젝트를 하면서, '그 동안 무작정 코드를 따라 쓰던게 효과적이었구나'라는 것을 느꼈다.

전의 강의를 보면서 복습을 하면서 하긴 했어도, 전에는 무작적 코드를 따라 썼으면, 첫 프로젝트는 생각을 하면서 코드를 작성했다.

그렇게, 답답함은 없어지고 SpringBoot를 사용할 수 있다는 자신감이 조금씩 생기기 시작했다.

 

반복 학습을 통해, 성장을 했고, 첫 번째 프로젝트를 통해 자신감을 얻어 두 번째와 최종 프로젝트를 진행했다.

특히 두 번째와 최종 프로젝트는, 내가 한번도 사용해보지 못 한 기능들을 구현하는 도전도 했다.

(Elasticsearch, JWT Token, Websocket, STOMP 등)

 

 

 


 

 마무리! 

제로베이스 백엔드 스쿨 14기를 수강하면서, 첫 부트캠프보다 더 깊은 지식을 쌓을 수 있었던 것 같다.

특히, 프로젝트를 통해, 새로운 것을 많이 시도하면서, '백엔드' 대해서 더 많이 배우고 경험할 수 있었던 기회였던 것 같다.

국비 때도 그랬지만, 이번에 제로베이스 백엔드 스쿨 최종 프로젝트도 좋은 결과로 마무리 지은 만큼, 자신감을 많이 쌓은 것 같다.

이 자신감을 가지고, 빠르게 취업해서, 백엔드 개발자로서 직무 경험을 쌓고 성장을 하고 싶다.

 

 

2024 백엔드 개발자 100% 취업보장 {백엔드 취업 스쿨} | zero-base

 

2024 백엔드 개발자 100% 취업보장 {백엔드 취업 스쿨} | zero-base

비전공자도 2024년 백엔드 개발자 취업을 100% 보장합니다.

zero-base.co.kr

 

*해당 게시글은 소정의 지원금을 받고 작성되었습니다.

'기술 면접' 카테고리의 다른 글

스터디 질문 20240214  (0) 2024.02.14
Java vs Python  (2) 2024.01.31
Java vs Python  (0) 2024.01.29