난생 처음 공개적으로 작성해보는 회고록.
2021 회고록이 아닌 그동안의 회고록인 이유는 취준부터 지금까지의 시간을 되돌아보기 위해서이다.
나는 어떤 사람인가? 한마디로 정의내린다면 위와 같을 것 같다.
그동안의 일일커밋 기록
CS 전공이지만 개발자가 아닌 다른 진로를 생각하다 개발자로 취업을 준비하게되어 2018년에 개발 공부를 제대로 처음 시작하게 되었다.
그동안은 전공 공부 정도로만 개발을 공부했다면 2018년에는 처음으로 Spring
을 공부하며 동시에 프로젝트를 진행했다. C나 Java 정도는 공부했지만 실질적으로 개발에 제로 베이스였던 내가 공부를 시작하며 동시에 프로젝트를 시작할 수 있었던 것은 함께 프로젝트를 진행한 친구가 개발을 어느정도 할 줄 알았고 메인으로 프로젝트를 끌고가 주어서 가능했다.
그 당시 Spring 공부
와 프로젝트
, 23학점
의 수업, 졸업요건을 위한 봉사활동
, 교내 아르바이트
까지 동시에 진행을 했고, 정말 잠을 제대로 자지 못할 정도로 시간이 부족했다.
거의 매일 열람실과 동아리 방에서 밤을 세워 공부하다 다음날 아르바이트를 하러 갔고 모든 남는 시간은 부족한 개발 공부와 프로젝트를 하는데 사용했다. 너무 스트레스 받고 피곤할 때는 의자에서 쪽잠을 자거나 우쿨렐레
를 쳤다.
(지금 생각해보니 지켜보는 사람이 있었다면 얼마나 내가 웃겨보였을까 개발을 열심히 하다가 갑자기 우쿨렐레를 미친 듯이 치고 다시 개발하다가 치고..)
그리고 나는 프로젝트를 성공적으로 완료하고, 당시 목표였던 성적 4.3을 받았다.
누군가 인생에서 가장 열심히 살았을 때가 언제니? 라고 묻는다면 망설임 없이 2018년이라 대답할 수 있을 것이다.
2018년의 하반기부터는 취준의 연속이었다.
프론트 엔드 친구와 두번째 프로젝트를 시작하고 서버 개발부터 배포 까지 온전히 혼자만의 힘으로 진행을 하게 되었다. 부가적으로 Effective Java
와 자바 ORM 표준 JPA 프로그래밍
공부, 그리고 AWS로 CI/CD 배포하기
를 진행했다.
그 당시에도 그렇고 지금도 그렇고 나에겐 멘토
가 없었다. 이 다음엔 어떤 방향으로 나아가야하는지, 취업 준비는 어떻게 하는지 정보가 전혀 없었다. 그래서 당시에는 인터넷의 도움을 많이 받았다. 구글이 나의 멘토였다.
해당 시기 진행한 프로젝트는 창천향로님의 스프링 부트와 AWS로 혼자 구현하는 웹 서비스 시리즈 도움을 많이 받았다.
나처럼 전공자임에도 정보를 얻을 수 있는 네트워크가 없던 사람, 또는 아예 새로 시작하는 비전공자 등 어떻게든 지푸라기라도 잡고 싶은 주니어들에게 양질의 개발 글을 작성해주는 개발자분들이 있어 멘토가 없이도 성장할 수 있었다. 참 감사하다.
지금도 그렇지만 당시에 가장 어려웠던 것은 방향 설정
이었다. 열심히는 할 수 있다. 하지만 어떻게 해야하는가? 많은 주니어 개발자들의 고민 또한 이것일 것이라고 생각한다.
그때까지의 나는 계속 소규모 개발을 해왔기에, IT 동아리 활동을 도전했다. 동아리 활동에서 기획자와 디자이너와 협업을 어떻게 하는지. 한 프로덕트가 나오기 위해서 어떤 과정을 거치는지 회사에 가기 전에 미리 배운 것 같다. 그리고 다른 백엔드 개발자와 협업을 하며 PM의 역할도 간단히 해보았다.
어떻게 어떤 방향으로 성장하는게 좋을지는 아직도 고민하고 답을 찾고 있는 문제다. 그래서 그 때도 지금도 답을 외부에서 찾아보는 중이고, 당시의 동아리 활동은 그 헤맴의 일환이었다.
취준 회고를 너무 늦게 작성해서, 지금 트렌드와 조금 다르게 포트폴리오가 화려하지 않아도 원하는 회사에 취업에 성공했다.
(정확한 방향은 정하지 못했지만 내가 원했던 회사는 SI가 아니며 자체 IT 서비스가 있으며 대규모 트래픽이 발생하는 회사였다.)
내가 그동안 진행한 것은 소규모 프로젝트 2개 그리고 IT 동아리에서 진행한 프로젝트 1개였다.
그 당시는(?) 내 정보 부족일 수 있지만, 지금처럼 부트캠프나 학원이 성행할 때가 아니었고 1일 1커밋도 슬슬 알려지기 시작할 때라 많이 하고 있지 않은 상황이었다.
그래서인지 당시에 면접보러 다니던 회사 중 한 곳에서는 1일 1커밋의 성실함과 학원을 다니지 않은 것을 자신감이 있어보인다며 좋게 보기도 했다.
(지금은 워낙 1일 1커밋이 흔하고 화려한 포트폴리오가 많아서 지금 같은 포트폴리오로 신입을 도전한다면 좋게 볼지는 잘 모르겠다. )
한 가지 아쉬운 점은 계속해서 달려오느라 지쳐서, 너무 쉽게 만족해버린 것. 현재 회사에 최종 합격을 했어도 조금 더 다양한 회사에 지원을 좀 더 넣었으면 좋지 않았을까 생각은 든다.
취업을 하고 정말 많은 일들이 있었다.
그 중 나에게 가장 많은 영향을 끼친 일은 홀로 살아남게 된 일
이다.
사수의 퇴사는 뒤따라오는 Side-Effect
가 많았다.
우선 팀 내 거의 유일하게 학습과 성장에 적극적인 분이었다는 점.
따라서 그 분의 퇴사로 팀내 이런 분위기는 침체되어 버렸다. 그리고 그 분이 맡던 서비스를 떠맡게 된 것. 그리고 그 분이 남겨 놓은 똥과 내 똥이 합쳐져 빅똥이 되어 장애가 난 것. 그 장애의 뒤처리. 나도 모르는데 나한테 들어오는 모든 것들. 생각보다 엉망진창인 코드와 생각보다 심각한 팀내 레거시 등
이 과정을 홀로 헤쳐나와야 했다.
최-신-식 기술
을 넣어서 다 뜯어 고치는게 꼭 정답일까회사는 리팩토링할 시간을 주지 않는다
고 들었다.더닝 크루거 곡선에서의 절망의 계곡
사수의 Side-Effect를 헤치고 나온 나에게 주어진 다음 일은 밥 하는 일
이었다.
그런데 밥 하는건 좋은데 밭갈고 농사부터 하게 될 줄이야..?
마치 농사를 처음 짓는데, 1등급 쌀을 지어서 임금님께 바치세요 같은 느낌이었다. 하지만 팀 내 아무도 1등급 쌀을 수확하는 농사법은 모르는 상황이었다.
입사 전 소박한 Monolithic Architecture를 만들던 나는 갑자기 MSA의 시스템 설계를 하고, 개발하게 되었다. 그것도 혼자.
농사를 짓는 건 어렵지 않았다. 하지만 정답이 없는 1등급의 쌀을 지어야하는 것이 어려웠고 큰 부담이었다.
그 당시 공부를 하면 할수록, 사내 문서, 공식 문서, 구글링, 한국 공식 기술 모임, 온갖 세미나 영상, 이름 모를 오래된 Blog 등
을 찾아볼수록 더 어려웠다. 말 그대로 절망의 계곡이었다.
학습에 관한 글 중 개인적으로 좋아하는 글이 있다.
의도적 수련
과 성장
에 관한 글이다.
간략하게 요약하자면 사람은 너무 쉬우면 지루하고, 너무 어려우면 불안함을 느낀다. 그 모든건 몰입을 방해하는 요소이며 제자리 걸음을 걷게 하는 요소이다. 성장하기 위해서는 몰입 영역에 들어가기 위한 의도적 수련이 필요하다는 요지이다. 너무 어려운 경우 나의 실력을 높이거나, 업무의 난이도를 낮춰서 몰입할 수 있도록 해야한다.
나는 이 기간에 많이 성장했지만 그럼에도 불구하고 많은 불안감과 초조함을 느꼈던 것 같다.
사람은 생각보다 의지보다 환경의 영향
을 많이 받는다. 모든 일은 노-오-력
만으로 되지 않기도 한다. 성장하는 환경
또한 마찬가지이다.
얼마전에 본 토크 콘서트에서도 비슷한 이야기가 나왔다. 창의적인 인재란 "얼마나 창의적인 생각을 해낼 수 있냐"보다 "얼마나 창의적인 상황에 자신을 던질 수 있는지"가 중요하다고 말이다.
이 내용을 성장에 빗대어 본다면, 나는 얼마나 성장할 수 있는 환경에 나를 던질 수 있는지 생각해보게 된다.
그동안은 현재 팀이 의식적으로
성장하는 환경이 아니라는 생각에 외부
로 눈을 돌렸다. 주로 인프런 등의 강의를 들었고 Next Step의 TDD 수업도 들었다. 특히 여기서 슬럼프 극복에 도움이 된 것은 Next Step의 TDD 수업이었다.
그리고 지금은 내부
로 시선을 돌려 팀을 성장하는 환경을 만들기 위해 소소하게 나마 내가 할 수 있는 선에서 행동하고 있다.
그동안
등의 이유로 팀 내 코드리뷰가 거의 이루어지지 않았는데, TDD 수업에서 배운 것을 기반으로 소소하게 팀 내 코드리뷰를 시작했다.
작은 시도지만 다른 분들도 코드리뷰를 조금씩 하기 시작하는 등의 변화가 일어나는 것이 눈에 보인다.
그리고 개인적으로는, 랜선 모각코를 들어갔다.
업무에 집중하기 위해 사이드 프로젝트나 IT 동아리 활동을 하기 보다는 회사일과 관련된 공부를 꾸준히 하고 싶었다. 기존에는 오프라인으로 친구들과 만나 공부했지만 코로나로 인해 이전과 같이 할 수 없어 랜선에서의 모임을 찾아봤다. 열심히 공부하는 사람들 사이에 나를 던져 놓아 성장하는 환경을 만들었다.
지속 가능한 개발, 지속 가능한 공부를 위해서는 자기 자신과의 약속을 지키고 스스로에게 보상을 확실히 주어야한다. 그런 의미에서 일일커밋을 다시 시작했다.
일일커밋에 대해 부정적으로 또는 긍정적으로 보는 상반된 의견이 있는 것으로 알지만 내 일일커밋은 개인적인 동기부여이다. 초록색을 채우는게 마치 RPG 게임의 경험치 바를 채우는 느낌이 들고 눈에 보이는 지표이기 때문이다.
억지로 커밋을 하지는 않을 것이다. 가급적 하루에 간단한 코드 한줄이라도 짜보자
는 느낌으로 가볍게 시작해보려고 한다.
그리고 마지막으로,
잘 지내보자 2022 !
당연하지 않은 것들이 당연하게 자리 잡혀있어서 고통 받으신 모습이 담겨 있군요..