💪 Study 참여/코드리뷰 스터디

[ Study ] 실무와 가까워지는 백엔드 개발 스터디.세션_#1

반응형

 

이번에 프로그래머스에서 스터디를 참여하게 되었다!

https://programmers.co.kr/learn/courses/13562#introduction

 

[스터디/4기] 실무와 가까워지는 Node.js 백엔드 개발(feat.TypeScript)

⏰아쉽지만 4기는 마감되었습니다. 이번 기수 일정이 맞지 않다면 오픈 알림 신청하고 최저가에 수강하세요! 오픈 알림 신청 🚨스터디 참여 비용 전액 지원 받자! 임팩트캠퍼스 지원 조건(미취

programmers.co.kr

위의 스터디 4기로 참여하게 되었다.

프로그래머스를 자주 드나들던 나는, 당시 위의 모집글을 우연히 보게 되었고

스터디 비용을 전액 지원받을 수 있는 임팩트 캠퍼스 지원 조건을 살펴보던 중

본인 소득 기준, 기준 중위 소득 130% 이하인 청년에 속해서 지원을 하게 되었다!

 

우선 아래와 같이 총 3가지의 질문에 대한 나의 경험과 지원 동기에 대해서 작성해야 했다.

 

1. 본 과정의 내용과 관련한 배경지식이 있다면 작성해주세요.
(관련 전공 또는 별도 교육 경험, 독학 경험, 업무 경험, 툴 사용 경험 등 최대한 자세히 작성해 주세요!)

2. JS 또는 TS 기반의 프로젝트를 경험해본 적이 있다면 작성해주세요.
(프로젝트의 주제, 결과물, 본인의 역할, 프로젝트를 통해 배운 점 등 최대한 자세히 작성해 주세요.)

3. 본 과정의 지원동기에 대해서 자세히 적어주세요

 

나는 지원서에 실제로 내가 경험했던 것들을 위주로 적었고, 내가 느꼈던 점과 아쉬웠던 점 등을 적었던 것 같았다.

지원서를 접수하고 난 뒤, 임팩트 캠퍼스에서 스터디 측에서 먼저 결과 메일이 도착하였고 합격할 수 있었다.

 

 

첫 OT는 임팩트 캠퍼스에서 진행하였고 주요 내용으로는, 신청한 스터디를 수료할 시 임팩트 캠퍼스의 커뮤니티를 이용할 수 있고, 

진행 중인 다양한 프로그램과 서비스를 사용할 수 있다고 하였다. 

과정 1개를 수료하면 프리 캠퍼, 2개 이상은 캠퍼라고 한다.

무튼 혜택이 있으니 반드시 수료해서 들어가 보려고 한다! (사이드 프로젝트도 지원한다고 함!)

OT에서는 임팩트 캠퍼스에서 지원하여 같이 이 과정을 참여하게 된 스터디 동기(10명)들과 인사를 나누는 시간을 가졌었다.

 

 

이후에는 프로그래머스측에서 메일이 도착했고, 프로그래머스 스쿨 링크와 슬랙 링크가 주어졌다.

내가 참여한 교육 과정은 3/24(목) ~ 4/21(목)으로 주 1회 온라인 세션을 진행하며 프로그래머스 스쿨과 줌 그리고 슬랙을 활용하여

리더님과 4기 동기들이 같이 의사소통할 수 있는 공간이 있다.

스터디를 진행하면서 필요한 정보와 코드 리뷰를 받을 수 있는 공간이라고 한다!

 

그렇게 설레는 마음을 갖고 지난 목요일 첫 세션에 참여하게 되었다.

우선 시작하기에 앞서 스터디 교육 매니저님께서 간단히 안내를 해주시고, 수업을 진행하였다.

수업 초기에 중요한 말씀을 해주셔서 메모해 두었다!

 

어떤 문제를 해결하기 위해서는 꼭 진리의 서비스가 있는 것만은 아니다.
서비스가 아닌 다른 방식으로도 충분히 문제를 해결할 수 있다.
따라서, 각자가 생각하는 방식으로 문제를 해결할 수 있다는 점!


매우 좋은 말이다! 항상 해결책이 하나만 있는 것은 아니기 때문!  (모로 가도 서울로!)

리더님께서는 이번 스터디에서 배울 내용에 대해서 소개를 해주셨고,

어떤 프레임워크를 사용할건지에 대해서 말씀해주셨다.

프로젝트의 주제로는 리더님의 경험에서 우러나온 불편함을 해결하고자 하는 것에 대한 서비스였고,

Nextjs와 Node.js (typescript)를 사용해서 만들 예정이라고 하셨다.

그리고 각 프레임 워크의 특징과 차이점에 대해서 알려주셨다.

구분 Express.js Next.js
focus Backend Frontend
Dynamic Routing O O
Use Middleware O O(Beta)
Routing Method Method register File based

Nest.js를 사용하는 이유로는 Express보다 활발한 업데이트가 이루어지고 있으며 View와 관련된 코드들을 한 서버에서 모두 다 처리가 가능하다고 한다.

그리고 Nest.js의 라우팅 방법이 눈에 띄었다.

파일 기반으로 라우팅을 한다는 의미인데, 예를들어 어떤 요청이 아래와 같다고 해보자.

localhost:{PORT}/events/create

그러면 프로젝트 내부의 파일 구조는 아래와 같다.

여기서 내가 공부했던 Nest.js도 라우팅 방식이 파일 기반과 비슷하지 않나 생각했다.

파일 기반의 라우팅 처리 방식의 이점으로는 어떤 신입이 처음 들어오더라도 요청에 대한 처리 부분을 쉽게 찾을 수 있다는 이점이 존재한다는 것이다.

 

그리고 어떤 DB를 사용할지 정형 데이터베이스와 비정형 데이터베이스의 차이점은 무엇인지 설명해주셨다.

관계형 데이터베이스는 데이터를 표에 관리를 하고, SQL이라는 문법을 통해 우리가 원하는 데이터를 쉽게 뽑아 쓸 수 있다.

반대로 비정형 데이터베이스는 표 구조가 아닌 Key, Value 방식으로 데이터를 저장하며 구조가 덜 빡빡하다.

또한 SQL 문법이 없어 NoSQL 이라고 불린다.

 

이번 프로젝트에서는 Firebase의 Firestore라는 것을 사용하려고 하는데 그 이유는

Document를 필요한 시점에만 꺼낼 수 있다. 즉, 자주 쓰는 정보는 먼저 꺼내고 필요한 시점에만 꺼내야 하는 collection은 또 원하는 시점에 접근할 수 있다는 특징이 있다.

무엇보다도 어느정도의 쿼리 사용이 가능하다고 하였다. 그리고 Firebase에서 제공하는 인증 처리를 사용하기 위함이다.

또 다른 Firestore의 특징으로는 Document(문서)안에 또 다른 Collections이 들어갈 수 있다는 점이다.

 

좋았던 점으로는 실시간 세션 중간 중간에 있는 질의응답 시간이다.

리더님께서 설명하시다가 바로바로 질문이나 궁금한 점이 생기면 질문을 남기라고 하셨고,

그 질문에 대한 답변을 바로바로 해주신다는 점이 매우 좋았던 것 같다.

그리고, 무엇보다도 첫 시간임에도 불구하고 별로 어색하지 않게 수업을 진행했던 것 같았다.

생각보다 활발하게 진행되었고, 스터디 동기생분들이 질문하는 것을 두려워하지 않는 것 같았다.

이번 시간에는 질문을 하지 못했지만 앞으로 남은 시간에는 한 질문씩 남겨볼까 한다!

마지막 시간에는 리더님께서 추첨을 통해 선물을 주셨는데 0 ~ 9까지 숫자 하나를 선택하고 돌림판을 돌렸다!

나는 그냥 뭔가 숫자 " 6 " 이 끌려서 쳤는데 1 / 10 확률을 뚫고 당첨되었다..!

바로 스터디 끝나고 야무지게 햄버거 세트를 먹으며 하루를 마무리 했던 것 같았다.

앞으로 남은 스터디 활동도 잘 기록해보려고 한다! 끝!

 

 

 

반응형