Weekly I Learned/2022's(7. ~ 12.) WIL

2022년 7월 1주차(7/4 ~ 7/8) Weekly I Learned "마스터즈 코스 수료 이후의 첫 번째 주간"

ikjo 2022. 7. 11. 06:10

지난 한 주 되돌아보기

코드스쿼드 2022 마스터즈 코스를 수료한지도 벌써 1주일이 지났다. 사실 수료한 이후로는 당분간 회고글은 작성하지 않으려고 했었으나, 마스터즈 코스 간 회고글을 작성하던 것이 여러모로 많은 도움이 되었기 때문에 다시 작성하게 되었다. 다만, 마스터즈 코스 때처럼 하루에 하나씩 작성하기 보다는 한 주를 되돌아보는 차원에서 WIL(Weekly I Learned)를 작성하고자 한다.

 

수료 직후 정신없었던 주말

7월 1일 수료하고나서는 당분간 놀고 싶은 마음이 있었지만 수료 회고글 작성연이은 주말 코딩테스트(원티드 주관 쇼미더코드, 프로그래머스 주관 데브매칭)로 인해 수료 직후 주말에는 나름 정신이 없었다. 

 

수료 회고글을 코드스쿼드 슬랙과 같은 기수 디스코드에 공유했었는데, 정말 많은 분들께서 따뜻한 격려와 위로의 말씀을 주신 덕에 많은 힘을 얻을 수 있었다. 개인적으로는 이번 수료 회고글을 작성하면서 마스터즈 코스 시작 전 보다 글쓰기 능력이 많이 향상된 기분을 받았다. 아무래도 120일간 일일 회고를 꾸준히 썼던 경험이 많은 도움이 되지 않았을까 싶었다.

 

코딩테스트의 경우는 개인적으로 아쉬움이 많았기에, 수료도 했겠다 앞으로 코딩테스트에 좀 더 많은 신경을 써야겠다는 생각이 들었다. (사실 코딩테스트가 아니더라도 마스터즈 코스 이후에 알고리즘 문제 좀 많이 풀어보고 싶다는 생각은 했었다.) 그래도 마스터즈 코스 과정 동안 알고리즘 스터디를 해서 이정도 풀었다고 생각한다. (알고리즘 스터디마저 안했었다면...😂) 

 

알고리즘 이제는 본격적으로!

마스터즈 코스를 수료하면 알고리즘 문제를 많이 풀어보고 싶다는 마음과 함께 앞서 코딩테스트에서 아쉬움을 많이 느꼈기에 이번 한 주는 알고리즘 문제를 하루에 1~2문제 정도 풀어보는 시간을 가졌다.

 

그래도 확실히 알고리즘 스터디 덕에 마스터즈 코스 이전 보다는 알고리즘 역량(?)이 많이 늘었다는 기분은 든다. 특히 깊이 우선 탐색과 너비 우선 탐색 문제에 대해서는 자신감이 생겼다. 물론 부족한 부분도 많다는 걸 느낀다. 대표적으로 그리디, 다이나믹 프로그래밍, 스택/큐 등에 대해 좀 더 연습이 필요하다는 생각이 들었다.

 

일단 당장의 목표는 프로그래머스 레벨 2의 문제들을 전부 풀어보는 것이다. 그래도 알고리즘 스터디를 하면서 어느 정도는 풀어놨지만, 아직도 20문제 넘게 남아있는 상태이다. 😂 2022년의 목표는 프로그래머스 레벨 3까지 다 푸는 것이기 때문에 앞으로 갈 길이 멀다.

 

이제는 CS 공부 좀 해볼까..?

마스터즈 코스 하는 동안 CS에 너무 소홀히 했었다. 처음 CS 10 과정에서는 그래도 프로세스, 스레드 등 일부 CS를 다루는 내용이 있었기에 조금은 학습했었지만 웹 백엔드 과정, 팀 프로젝트 과정에서는 CS 관련해서 공부했었던 게 거의 전무 했다.

 

일단 당장의 목표는 운영체제에 대해 공부하는 것이다. 운영체제와 관련해서 유명한 서적을 찾던 중 조성호님이 지으신 "쉽게 배우는 운영체제"라는 책을 발견하게 되어 이 책을 통해 운영체제 기초를 학습하기로 했다. 마침 최근 조성호님께서 운영하고 계신 유튜브 채널 "널널한 개발자"를 통해 어려운 내용을 굉장히 쉽게 배울 수 있었는데, 이 책을 발견하니 무척 반가웠다.

 

또한 마스터즈 코스 과정 중에 가장 읽어보고싶었던 책인 "그림으로 공부하는 IT 인프라 구조"를 정독해보기로 했다. 사실 이 책을 작년도 9월에 구매한 후 읽었을 때는 도무지 내용 이해가 안됐었는데, 마스터즈 코스를 수료한 지금 보니 내용 이해가 쏙쏙되서 나름 뿌듯했다.

 

SOP, SameSite, XSS, CSRF, Https

웹 보안과 관련된 내용인데, 지난 마스터즈 코스 팀 프로젝트 시 JWT 토큰을 통한 로그인 검증을 처리할 때 자주 접했던 키워드들이다. 사실 어렴풋이는 알고있는 내용이긴 하지만, 누군가에게 설명을 하라고 한다면 제대로 설명할 자신이 없었기에 시간 내어 꼭 학습해보고싶었다. 또한 해당 기술이 생겨난 배경, 동작 원리가 무척 궁금했다.

 

이와 관련하여 유튜브 채널 "인조이버그" 영상이 학습하는데 정말 많은 도움이 되었다. 해당 채널의 운영자께선 보안 엔지니어이시기에 해당 기술을 정말 쉽고 명쾌하게 설명해주셨는데, 뭔가 그동안의 묵은 때가 벗겨진 기분이다.

 

쿠키, 세션 개념 정리하기

쿠키, 세션에 대해서는 마스터즈 코스 이전에도 어느 정도 안다고 생각했었다. 하지만 마스터즈 코스를 하면서 내가 알고있었던 게 잘못 이해하고 있었다는 것을 깨달을 수 있었다..😂

 

그래서 이전에 쿠키, 세션에 대해서 정리했던 기술 블로그 글을 갈아 엎어 새롭게 작성하는 시간을 가졌다. 그래도 이번 마스터즈 코스를 통해 쿠키, 세션에 대해서는 나름대로 제대로 이해하게 된 것 같아 보람있었다.

 

 

상태유지기술, 쿠키(Cookie)와 세션(Session)

무상태(Stateless) 프로토콜, HTTP 웹 브라우저와 웹 서버는 HTTP를 통해 데이터를 주고받으며, 웹 브라우저는 데이터 요청자로서, 웹 서버는 데이터 응답자로서 클라이언트/서버 구조를 이룬다.

ikjo.tistory.com

 

기술 블로그 기존 콘텐츠(글) 및 이력서 유지보수

그동안 개발자를 준비하면서 소스 코드에 대한 유지보수만 생각했었는데, 막상 기술 블로그를 운영하다보니 기존 글에 대해서도 유지보수가 필요하다는 생각이 들었다..😂 내가 마스터즈 코스 이전 및 극초기에 작성했었던 대부분의 글들의 경우 가독성면에서나 내용면에서 부족한 점이 너무 많았다는 생각이 들었다.

 

소스 코드도 시간이 지날수록 레거시가 된다는 말이 있는데, 이 글이라는 것도 어느정도 일맥상통한 것 같다. 당시의 나의 수준으로는 나름대로 최선을 다해 작성한 것이지만, 현재 나의 시선으로 볼 때 부족한 부분들이 너무나도 많이 보인다. (앞서 쿠키와 세션에 대해 정리했던 글도 마찬가지였다.) 그래서 당분간은 예전에 작성했었던 글들에 대해 재정비를 해야겠다는 필요성이 들었다.

 

예전에 첫 회고 글로 작성했었던 "공기업을 퇴사하고 개발자를 준비하게 된 이유"라는 글을 이제 보니 문맥이 너무 부자연스러워 그동안 이게 오픈되있었다는 게 민망할 정도였다. 이에 대해서도 다시 글을 재정비하는 시간을 가졌다.

 

 

공기업을 퇴사하고 개발자를 준비하게 된 이유

첫 회고를 작성하면서... 2021년 10월 17일 기술 블로그를 운영하기 시작하면서 처음으로 회고 글을 작성하게 되었습니다. 제가 처음으로 작성하기로 한 회고 글은 "왜 공기업을 퇴사하고 개발자를

ikjo.tistory.com

 

이력서 역시 예전에 작성한 것이 있긴 했는데, 지금 봐보니 너무 쓸데없이 장황하고 보는 사람 입장에서 제대로 쓰여지지 않아 보였다. 이력서 역시 기술블로그 글처럼 꾸준한 유지보수가 필요하다는 생각이 들었다.

 

오랜만에 만끽하는 여유 🥂

취업준비생 신분인 나에게 있어 사치스러울 수도 있겠지만 수료 직후 주말을 제외한 이번 한 주(월~금)는 그래도 나름대로 여유를 만끽했다. 그동안 보지 못했었던 친구를 오랜만에 만나 6시간 내내 수다를 나누기도 했고, 찐 개발자처럼 산발이 된 머리를 잘랐고, 수료증을 받기 위해 그동안 한 번도 가지 못했었던 코드스쿼드를 방문하여 호눅스께 인사도 드리고 사진도 찍을 수 있었다. (집 ~ 코드스쿼드 왕복 3시간 30분 😂) 또한 그동안 보고싶었던 영화들(탑건 1, 그린북 등)을 섭렵하는 시간을 가졌다.

 

지난 한 주간 학습을 아에 안 했던 것은 아니지만 심적으로 여유가 있다보니 하루 학습 비중은 마스터즈 코스 때와 대비하여 월등히 낮아졌다. 민망하게도 다음 주에도 그동안 보지 못했던 친구들과의 약속이 잡혀있는데, 취업준비생으로서 뭔가 이래도 되나 싶긴 하다..😅 그래도 지난 6개월간 나름대로 최선을 다했으니 나에 대한 보상이라고 생각하며 마음의 위안을 얻어 본다. 🤣