도림.로그

Tags

Series

About

학습 계획 2022

2022. 02. 20.


    개요

    2022년이 되어 백엔드 직무 공부를 시작하는데, 내가 모르는 부분이 너무나도 많고 하고 싶은 공부도 너무나도 많은 것을 깨달았다. 이대로면 흐지부지 어영부영 아무것도 챙기지 못할 가능성이 있는 듯 해서 미리 정리를 해 두려고 한다.

    정리를 하는 의미도 있지만, 공수표를 던지면 조금 더 신경써서 자주 확인하고 또 이것을 마일스톤 삼아 올해 회고를 쓰는 데에 도움이 되지 않을까 싶기도 하다.

    뭐 할거?

    일단 공부해야겠다고(혹은 읽어야 겠다고) 생각하는 것들은 다음과 같다.

    • Java Spring
    • SQL, DB 설계
    • Effective Java
    • 객체지향에 대한 사실과 오해
    • 자바스크립트 디자인 패턴 바이블
    • Effective Typescript
    • Golang
    • 클린 코드
    • Docker, docker-compose, Kubernetes
    • MSA
    • Apache Kafka
    • Istio

    전반적으로 백엔드와 MSA 관련한 부분들을 신경써서 공부해보려고 한다. Java Spring을 중심으로 학습을 하되, 내가 좋아하는 node.js와 Golang에 대한 공부도 놓지 않으려고 한다.

    왜?

    웹에 대해서는 아무것도 모르던 2019년까지를 뒤로 하고, 2020년부터 2021년까지 프론트엔드 개발과 백엔드 개발 중 하고 싶은 것을 찾기 위해 방황을 조금 길게 했더니 이것저것 아는데 제대로 할 줄 아는 것은 하나도 없는 놈이 되어버렸다. 일단 이 상황을 좀 타개할 방법을 찾아야 한다고 생각했다.

    나는 공부를 할 때 설레고 재밌는 것은 열심히 하는데, 지루한 것은 열심히 하지 않는 편식쟁이다. 그래서 고등학교까지 입시 공부에 크게 흥미를 붙이고 열심히 공부하지 못했다. 그리고 처참한 수능 성적으로 고배를 마셨고, 대한민국의 수시 정책에 편승해 운 좋은 입시를 치뤘다. 그리고 원하던 과에 와서 거의 처음으로 (그 전까지는 해봐야 중학생 때 안드로이드 폰에 커스텀롬을 쿠킹해서 빌드하는, 설정값 몇개를 깔짝여봤을 뿐이었다.) 내가 하고싶은 공부를 했다. 그리고, 고등학교 입시 공부에서는 느끼지 못하뎐 설렘을 느낄 수 있었다. 그리고 그 설렘을 원동력삼아 집중을 길게 하지 못하고 매사 빨리 질리는 치명적 단점을 딛고 그나마 꾸준히 지금까지 공부를 지속해왔다.

    2019년, 웹 개발을 생활코딩 영상을 보며 입문했을 때, 정말 몇 줄 안되는 CSS와 JS로 브라우저 상에서 나타나는 형태들이 휘릭휘릭 변하는 것을 봤을 때 지금껏 해오던 코딩과는 다른 설렘을 느꼈다. 이거로 뭐라도 만들 수 있겠다는, 내가 생각만 하던 것들을 느리지만 그리고 서툴지만 화면 상으로 표현해낼 수 있다는 기대감이 그 설렘이었던 것 같다. 그리고 이것이 나에게 있어, 그리고 내가 생각하는 프론트엔드 개발의 설렘이다.

    2020년, 군대에서 김민준(velopert)님의 React 책을 보며 사지방에서 코딩을 하다가 처음으로 멀쩡한 기능이 있는 node.js 서버를 작성하는 경험을 하게 되었다. 어떤 요청을 받아서 올바른 형태로 돌려주는 서버는 사실 그 자체로는 크게 설레지 않았다. 그 후 조금이 지나, 지금은 Archive 상태이지만, 군대에서 풀스택으로 스터디 기록을 위한 단체 Markdown 노트 어플리케이션을 개발할 때, 서버를 개발하면서 mongoDB와 연동하고 그것을 AWS에 배포해서 안정적으로 돌아가고 있는 모습을 보니 또 갑자기 마음이 설레였다. 그 당시엔 백엔드 개발이 재미없고 지루하다고 생각하던차였기에 조금 놀라기도 했지만 이내 느꼈다. 요청을 보냈을 때 그것에 반응하고, 데이터를 저장하고 그 안에서 여기저기 소통해가며 잘 동작하고 있음을 확인할 때의 그 즐거움, 그것이 나에게 있어 백엔드 개발의 설렘이라는 것을 말이다.

    2021년, 복학을 하고 정신없이 학기의 과제량과 프로젝트, 그리고 잠깐이나마 꾸었던 딥러닝(아, 참고로 딥러닝에는 그닥 설레지 않더라. 학우들보다 높은 정확도를 달성할 때 빼고는) 학습량을 쳐내던 차에 LINE에서 Kafka를 사용하는 방법 - 1편이라는 글을 보게 되었다. 글의 내용을 완전히 이해할 만큼 내 력(?)이 쌓이진 않았지만 Producer - Comsumer를 처리하는 Kafka의 모델, 그리고 이를 사내 모든 서비스와 시스템에서 사용할 수 있는 범용적인 플랫폼으로 구축해서 사용한다는 LINE의 글은 내 호기심을 잔뜩 자극했고, 이내 MSA라는 새로운 무언가에 관심을 가지게 했다. 하지만 MSA라는 것에 대한 얕은 지식만 얻을 수 있었고, 그렇게 어영부영 2021년은 기다려주지 않고 멀리 떠나가버렸다.

    그리고 2022년이 되었다. 프론트엔드에도 설렘을 느끼고 백엔드에도 설렘을 느끼는 나도 이제는 결정을 할 때가 되었다. 조금 더 나은 결정을 내리고 싶어서 1월에는 React 코드들을 직접 작성해서 이 블로그를 만들었고, 2월에는 사이드 프로젝트에 참여할 기회를 얻게 되어 백엔드 코드 일부와 배포를 맡아서 서버를 구축하고 배포했다. 이 두 가지 경험을 통해 결국 지금의 나는 코드를 통해 화면 상에 내가 원하는 모습의 무언가가 나타나는 설렘보다는 내가 배포한 서비스가 안정적으로 동작하고, 사용자의 데이터를 받고 다시 필요한 데이터를 돌려줄 수 있는 것을 확인하는 설렘에 더 크게 반응하는 것 같다고 생각했다.

    그리고 뭐… 위의 것들을 공부해야겠다는 마음을 먹었고, 한번 즐겁게 공부를 해보고자 한다. 과연 이 큰 계획이 어떤 실천과 결과로 돌아올지, 기대 반 걱정 반이 된다. 그래도 나는 아직 이 공부에 설레니까, 큰 걱정은 하지 않고 내 학습적 모멘텀을 믿는 것이 좋을 것 같다. 열심히 해봐야지.

    끝.

    #plan#java#spring#node#golang#msa

    © 2024, Built with Gatsby