개발 일기
개발자가 되기 위한 공부 본문
작년 말쯤 개발자가 되려는 마음을 잡고 현재인 3월 19일까지 짧은시간이지만 100일이 넘는 시간동안 나름 열심히 공부를 해왔다. 요즘 집중도 잘 안되고 뭔가 초심이 많이 흐려진 기분이 들어 부끄럽지만 한번 지금까지는 어떻게 했는지 앞으로는 어떻게 할것인지 생각을 정리해보기로 했다.
처음 개발자가 되기로 한 이유
사실 작년까지는 개발자라는 직업에 대해서 진지하게 생각해 본적이 없었다. 학교에서 C++, C를 배운적은 있어도 개발자가 되기 위한 과정 보다는 간단한 프로그래밍을 배우는 느낌으로 배운게 전부였다고 생각했다. 그러다 우연히 지인이 python강의를 배우는데 (지인은 비전공자였다.) 도와줄 수 있냐는 부탁을 받았고 python 강의를 듣는내내 충격을 받았다.
내가 들었던 수업은 타 대학의 수업이었고 비전공자를 위한 수업이었기에 우선 코딩에 대한 관심을 이끌어내는것부터 수업이 시작되었다. 그리고 내가 배웠던 딱딱한 원서를 읽으며 문법 하나하나를 이해하기를 강요하는 수업이 아니라 반복문과 조건문을 통한 간단한 게임 만들어보는 등의 흥미 유발을 통해 접근하는 방식이었다. 장단점은 있었다. 당연히 깊이를 기대할 수는 없었고 이 코드를 사용했을때는 어떤 문제가 일어날 수 있겠다는 설명은 없었던것 같다.
원래 나는 코딩이 재밌었다. 뭔가 멋있어보이기도 하고 내 생각대로 움직이는 모터같은 것들을 보면 내가 뭔가 하나 해냈다는 성취감도 좋았던것 같다. 하지만 그다지 특출나지는 않았다. 캡스톤 디자인 과목이나 마이크로 프로세서 수업에서 대부분의 코딩을 내가 맡아 진행했을 정도로 못하지는 않았다고 생각하지만 엄청난 흥미도 실력도 없었다. 다만 재밌어 하기는 했던것 같다. 한줄한줄 추가될때마다 눈으로 확인되는 성취도가 좋았던것 같다.
다시 수업으로 돌아와서 대학에서 배운 C와 C++외의 언어는 처음이었지만 python을 배우는데는 처음 C라는 과목을 배울때보다 훨씬 쉬웠고 새로운 언어를 배우는데 두려움을 많이 줄여줬던것 같다. 이 무렵 나는 콘티넨탈이라는 자동차 전장 회사에서 인턴쉽을 하고 있었는데 당시 코딩에 재미를 처음 붙이고 소프트웨어팀 인턴 N양에게 이것저것 물어보며 개발자라는 직군에 처음 눈독을 들이기 시작했다.
프론트엔드, 백엔드라는 말은 들어본적도 없었고 웹개발자, PM(projectmanager), SRE, DevOps, Data Engineer 등등 개발자라는 직업은 엄청나게 포괄적인 단어였다. 내가 뭘 할 수 있을까 어떤 종류의 개발자들이 있고 무슨일을 하는지에 대해서 조사하는데만 2달정도의 시간이 걸렸던것 같다. 이렇게 오래 걸린 이유는 내 주변에 단 한명의 개발자도 없었기 때문이다. 회사에서 일을하며 틈틈히 찾아서 정리하고 모르는게 있으면 구글링과 유튜브를 통해 조사해봤지만 php, java가 뭐가 다른지도 모르는 사람이 처음 듣는 직군을 한번에 이해하기는 그만큼 어려웠다. 그리고 웹개발자 중에서도 백엔드를 선택하게 되었다. 사실 처음에는 감히 풀스택이 되고 싶었지만 미적감각도 없는 내가 프론트를 할 수 있을까 하는 생각도 들었고 백엔드가 마치 전자기기에 회로처럼 안보이는 데이터를 다룬다는 것이 더욱 매력적으로 다가왔기 때문이다.
백엔드? 어디부터 해야 하지?
그렇게 백엔드 개발자가 되기로 결심을 한게 2020년 12월 정도였던것 같다. 구글에 백엔드 개발자가 되는법이라고 검색을 하고 닥치는대로 정보를 모으기 시작했다. 어떤 언어와 프레임워크를 배워라 이런 정도의 말들만 있을뿐 구체적인 방법이 없었다. 애초에 기대도 하지 않았지만 생각보다 더욱 정보가 없어 당황스러웠던 기억이 난다. 그러다 github에 backend 2021 roadmap이라는 글이 있는것을 발견했다.
차라리 정보가 없었던때가 그리웠다. 이게 인간이 다 공부할 수 있는 양인가 싶은 생각이 먼저 들었고 기본지식도 없는 내가 개발자가 될 수 있을지 두려움이 밀려왔다. 위에 사진에 내가 아는 단어가 몇단어나 있을까...... 하지만 포기하기보다는 태어나서 처음으로 내가 하고싶은 일이 생겼고 목표로 가기위한 구체적인 로드맵이 생긴데에 감사하며 하나씩 준비해보자 라고 마음을 먹었다. 그리고 독학을 시작했다.
jump to python의 처음부터 끝까지 모든 코드를 손으로 다시 타이핑해보고 django도 배워보고 웹서버가 뭔지 nginx가 뭔지 인터넷에 대한 기본적인 지식도 쌓아보고 모든게 새로웠기에 어렵지만 그만큼 재미있었다. 그리고 공부를 하면서 이길이 내 길이 맞는지 확신이 들기 시작했다.
초심을 유지하기가 어렵다.
3달에서 4달정도가 지났다. 사실 뭐 하나 배우기도 짧은 시간이었지만 내 나름 많은것을 공부했다고 자부할 수 있다. 하루 8시간씩 일을 하며(사정상 4월까지는 일을 계속 해야 한다.) 짬나는 시간마다 또 잠을 줄여가며 공부를 했고 3월중순부터 이렇게 블로그도 만들어 관리하기 시작했다. 하나 후회되는 점이라면 그동안 했던 모든것들을 그때그때 블로그에 올리지 않았다는 점이지만 앞으로 할게 저렇게 많은데 조금 못한것 정도는 괜찮다고 생각한다. 하지만 문제는 체력이다. 아니 정신력인가? 잘모르겠다.
분명 지금은 처음보다 많은 지식이 쌓였고 이제 본격적으로 속도가 붙어야 할 타이밍인데 이상하게 요 몇일간 정말 집중이 되지 않는다. 지금까지의 내 몸 상황을 봤을때 어딘가 나사하나가 빠진것 같았다. 오늘만 쉴까 그동안 열심히 했잖아 라는 생각이 언젠가부터 머리속에 들기 시작하면서 점점 몸을 좀먹고 있는것 같다. 고작 3개월 4개월좀 했다고 이래도 되는걸까 하는 죄책감이 머리속에 떠나질 않고 쉬어도 쉬는것 같지가 않고 오히려 자는 시간은 늘어났는데 더 피곤한것 같다. 하루 14시간씩 일을 해도 짬내며 공부했던 당장 저번주만 해도 이러지 않았던것같은데...... 이건 정신상태 문제라는게 내 결론이다. 정신차리자. 늦게 시작한건 죄가 아니지만 오늘일을 내일로 미루는건 죄다. 그만좀 미뤄라 인간아.
오늘은 그냥 이런 의미없는 글을 쓰며 마음을 다잡기로 했다. 내일부터 하루에 하나씩 포스팅을 하는걸 목표로 다시 열심히 달려봐야 겠다.
앞으로는?
최근 comento라는 비대면 강의를 들으며 공부방법에 대해 깨달은 바가 있다. 일주일 단위로 목표를 세우고 그 목표는 반드시 끝내야 한다. 아주 간단한 방법 같지만 말처럼 간단하지는 않다. 프레임워크 하나를 한주만에 끝낼수 있다면 좋겠지만 불가능하다는것은 나도 알고있다.(난그렇다.) 하지만 효과는 정말 좋았다. 그래서 앞으로 한주한주 계획을 세우고 챌리저스라는 챌린지 어플을 통해서 계획을 강제로 이행해야 겠다. 나는 그게 제일 효과적인 인간인것 같다. 뭔가 앞으로 거창한걸 하겠다고 말할것처럼 써놓고 이렇게 써놓고 보니 뭐지 했지만 무슨상관인가 그냥 내 마음 다잡는 글인데.
'강의 정리' 카테고리의 다른 글
[IT/SW] comento 후기 feat.파이썬으로 배우는 백엔드 개발 실무 : API 개발, 구현, 배포 등 (0) | 2021.03.22 |
---|