Retrospect

개발자를 꿈꾸는 대학생의 2020년 회고

백엔드 규니 2021. 1. 3. 03:35
728x90
반응형

회고를 처음 써보기에 어떻게 쓸까, 언제부터 회고를 해볼까란 생각이 듭니다. 주 내용은 2020년의 회고이지만, 2016년 부터 회고를 하면서 시작해볼까 합니다.

 

 

대학교에 입학하다.(16년 - 1학기)

고3 ~ 재수를 하는 기간에 나름 공부를 열심히(?) 했지만 입시에 실패했습니다. 공부를 안하고 결과가 좋지 않았다면 그러려니 했겠지만, 나름 공부를 열심히 했다고 생각했는데 결과가 공부를 안한 사람과 거의 같은 수준이었습니다. (그래서 엄청나게 자존감도 떨어지고 속상했던 기억이 납니다. 하는 척만 했나....)

 

다시 수능을 봐야하나 생각을 하다가 저의 지식의 한계와 현실을 받아들이고 그냥 성적에 맞는 대학교를 가야겠다고 생각을 했습니다. 당시에는 학교의 이름만을 생각했기에 과는 많이 신경쓰지 않았습니다. 그럼에도 그나마 정보통신학부가 막연하게 미래가 밝아보여서 지원을 했고, 2016년에 정보통신학부로 대학교에 입학하게 되었습니다. 그 당시의 저는 코딩이라는 단어의 의미도  잘 몰랐고 컴퓨터로는 게임밖에 안해봤기에 컴퓨터에 대한 지식이 전혀 없었습니다.

 

그렇게 1학년 1학기가 시작되었고 C언어, 컴퓨터공학개론이라는 전공 과목을 배웠습니다.  역시나.. 갑자기 컴퓨터 지식을 배우려니.. 잘 이해가 가지 않았고, 공부도 하는 둥 마는 둥 했습니다. 학교를 열심히 다녀보려 했지만 이 과가 내 길이 맞을까?, 여기 학교를 계속 다니는게 맞을까? 라는 생각을 많이 하면서 현재 대학 생활에 집중하지 못했습니다. (신입생 때 재밌게 놀기라도 했어야 했는데.. 노는 것도 아니고 공부한 것도 아니었던,,,) 그렇게 그냥 현실에 대한 한탄을 하면서 수능에 대한 미련을 버리지 못하고 한 학기가 허무하게 끝났습니다.

 

 

군대를 가다(16.09.05 ~ 18.06.04)

수능을 다시 봐도 결과는 똑같을 것이라 생각했고, 쓸데 없는 고민을 하는 것 보다는 군대에 빨리 다녀오는게 낫겠다고 생각했습니다. 그래서 한 학기만 마치고 신나게 놀다가 군대를 갔습니다. (재수를 해서 빨리 간 것은 아니지만, 한 학기만 하고 바로 군대를 갔던건 지금 생각해도 잘했던 것 같습니다.) 군대에서 공부는 거의 하지 않았지만 신입생 때 했던 여러가지 생각들의 정리를 할 수 있었던 시간이었습니다.

 

 

복학을 하다(18년 - 2학기)

그렇게 전역을 했고, 이제는 학교 이름에 대한 미련을 가지고 과거에 얽매이기 보다는 현재에 집중하고 앞으로 전공 공부를 열심히 해야겠다는 생각을 하면서 복학을 했습니다. 코딩을 배운지 2년이나 지나 기억나는게 없었지만, 복학생의 패기로 학과 1등을 해보겠다는 목표를 정했습니다. 전공 수업은 C++을 들었고, 열심히 수업을 들으면서 복습하고 공부했습니다. 그러다 보니 예전에는 이해가 가지 않던 개념들(배열, 변수, swap, 포인터, 함수...)이 조금씩 이해가 되면서 코딩에 대해서 흥미가 조금씩 생겼습니다.

#include<iostream>
Using namespace std;
void main() {
    int a = 10, b = 20, c = 30;
    int *p[3] = {&a, &b, &c};

    cout<<"\n  *p[0] : "<<*p[0];
    cout<<"\n  *p[1] : "<<*p[1];
    cout<<"\n  *p[2] : "<<*p[2];
}

위의 코드는 당시에 작성했던 코드인데 지금 보니 감회가 새롭습니다. (지금은 C++을 모르지만..)

 

그렇게 코딩 공부를 열심히 하다 보니 한 학기가 금방 끝났고(복학 한 후에 혼자 학교 다니면서 공부 했더니 금방 시간이 지나간..), 성적이 나왔을 때는 되게 기뻤습니다. 학점이 4.44가 나왔기 때문입니다.(대박~~) 4.5는 아니었기에 복학할 때 목표했던 학과 1등은 아니었지만, 학년 1등의 목표는 이루었습니다.(기독교 과목이 A0가 나왔던!)

 

 

19년도가 시작되다

학점을 잘 받아 코딩에 대한 흥미와 열정, 의지가 더욱 생겼습니다. 하지만.. 겨울 방학 때는 공부 한번 안하고 놀다가 19년의 새 학기를 시작하게 됩니다. 저번 학기에 학년 1등을 했기에 이번에도 한번 더 해보자는 마음을 먹었습니다. 이번에는 2학년이라 확실히 1학년 보다는 전공 과목이 늘어서 쉽지가 않았지만,,, (유닉스, 자료구조, 이산수학, 자바, 시스템 분석설계)

학기 내내 학교 수업을 열심히 들었고, 수업이 끝나면 바로 도서관 가서 배운 내용을 복습했습니다. 주말에도 학교 공부만을 하면서 보냈습니다.(다시 한번 1등을 하겠다는 학점에 집착을 하는 학기 였던 것 같습니다.)

 

그렇게 열심히 한 결과로 19-1 학기도 학점 4.42를 맞고 한번 더 학년 1등을 하게 됩니다. 이번에도 학년 1등을 해서 너무 기뻤지만, 한 가지 채워지지 않는 아쉬움이 있었습니다. 학교에서는 자료구조를 배워도 한 학기동안 스택, , 연결리스트 앞 부분 배우는게 전부 였습니다. 그리고 다른 과목들도 도움이 안되지는 않았지만 뭔가 스스로 만들어 보고 개발할 수 있는 능력을 키워주지 못한다고 생각했습니다.(고등학교 때 학교시험, 모의고사의 관계랄까..) 그래서 학교 수업도 중요하지만 틈틈히 개인 공부를 많이 해야 발전할 수 있겠다라고 생각했습니다.

 

그렇게 19-1이 끝났고 여름 방학에는 자료구조 나머지 부분을 혼자 조금씩 공부를 했습니다. 하지만 아무래도 방학에 혼자 공부하는 거다 보니 열심히 하지는 못했습니다. 의지 부족 ㅠㅠ)(이 때 항상 느꼈던건 C언어-자료구조 공부하는 것도 좋지만 프로젝트를 하면서 무엇가 만들어 보고 싶은데 도대체 어떻게 해야하는건지.. 누가 스스로 도약할 수 있을 정도만 도와줬으면 좋겠다라는 생각을 했던 것 같습니다.

 

계속 채워지지 않는 아쉬움을 가지고 다시 19-2가 시작됐습니다. 이번에 마음을 먹었던 것은 학교 공부만 하면서 우물안 개구리가 되지 말고 외부 활동을 하면서 이 분야에 대해 넓은 시야를 가지자는 것이었습니다. 이 때는 개발에 어떤 분야가 있는지도 몰랐고 (프론트엔드, 백엔드 라는 용어도 몰랐습니다.) 어떤 분야를 하고 싶다라는 것도 몰랐습니다. 어떤 언어를 하면 어떤 프레임워크를 쓸 수 있고 어떤 분야들을 할 수 있고 등등 전혀 몰랐습니다.  그래서 최대한 외부 컨퍼런스들도 알아보고 한번씩 다녀오고, 다른 학교의 사람들도 조금씩 만나면서 시야를 넓히고 배우려고 노력했습니다. 그러다 보니 어느정도 개발에는 이러한 분야들이 있고 어떠한 안목을 가져야 하는지 정도의 감을 조금은 잡았던 거 같습니다.

 

그렇게 또 다시 한 학기가 끝났고 이번에는 학점 4.25를 맞게 됩니다 (교양이 B+이.....)

 

학교 내에서는 학점이 잘 나오니까 순간 아 나 코딩 좀 하는거 같은데.. 라는 생각을 하기도 했습니다. 이러한 생각들이 자만이며, 우물안 개구리 였는데 말이죠,,,

 

이 때 학점은 높은데 아는 것과 할 줄 아는 것이 없다는 것에 많은 회의감을 느꼈습니다.(익숙한 언어도 없었고 그나마 공부했던 자료구조를 잘 하는 것도 아니고...) 그래서 19년도 말에는 아래와 같은 고민생각을 많이 했던 거 같습니다.

  • 공부는 정말 하고 싶은데 어떻게 해야 아쉬운 부분을 채우면서 공부할 수 있을까?
  • 나는 어떤 분야를 시작해서 어떻게 공부를 시작해야 할까?
  • 이대로 가도 내가 좋은 곳에 취업할 수 있을까?
  • Java, JavaScript, Python 어떤 언어가 좋을까?
  • Spring, NodeJs, Django, react 등등 어떤 것을 내가 흥미를 느낄까?

 

 그러면서 나의 미래는 잘 될 수 있을까? 라는 생각과 걱정만 했던 거 같네요. (공부를 하긴 했지만...)

 

지금 생각해보면 그냥 생각만 하지 말고 하나를 정해서 공부 해봐야 흥미가 있는지 없는지 알텐데 그 당시에는 어떻게 시작해야 할 지를 잘 모르겠다는 핑계로 시도하기를 두려워 했습니다. 하고자 하는 열정은 있는데 돌아가기는 싫었고 계속 올바른 방향만을 원했습니다. 정답은 해봐야 알텐데 말이죠

 

그렇게 많은 고민을 하면서 20년도의 목표는 아래와 같이 막연하게 생각했습니다.

  • 백엔드 개발에 대해서 공부해보기(Java-Spring)
  • 프로젝트 하면서 성장하기
  • 1일 1커밋 하기
  • 기술 블로그 운영하기

 

아는 것이 없다 보니 막연하게 이정도만 목표를 잡았습니다.

 

 

2020년이 되다.

방학 동안 공부를 많이 하기로 마음 먹었던 저는 이 때 자바(Java) 공부를 시작했습니다. 19-1 때 자바를 배우긴 했지만 너무 대충 공부했고 시간도 오래되었기에 기억이 잘 나지 않았습니다. 그래서 Scanner로 입력 받는 법, IDE에서 클래스 만드는 법.. 부터 공부를 시작했던 것 같습니다. 그럼에도 책을 보면서 하나씩 공부해보니 학기 중에 진짜 어렵고 이해가 가지 않는 부분들이 이해가 되면서 자바에 대해 조금이나마 익숙해질 수 있었습니다.(물론 어렵고 어색한 부분도 많았지만)

 

그리고 이 때 백준이라는 알고리즘을 풀 수 있는 사이트에서 쉬운 문제를 찾아서 하나씩 알고리즘 공부도 시작했습니다.(자바로 풀어보는데 자바가 아직 어색해서 풀기가 쉽지 않았던 기억도 나네요) 그리고 아는 분의 도움으로 JSP, JDBC를 가볍게 공부하면서 서버 공부라는걸 처음으로 한 것 같습니다. 이 때 Tomcat이라는 것도 처음 들어보고 이게 도대체 뭔가 하면서 공부했던 기억도 나네요 (그리고 톰캣 설치하고 실행한 것만으로도 되게 기뻤습니다 ㅋㅋㅋ)

 

그러다가 2월 정도가 되었을 때 게시판을 만들어 보라는 조언을 듣고 CRUD를 처음으로 해보기 시작했습니다.(DB 연동도 처음이라.. 쿼리 공부도 처음 하면서 했던 기억이...)


그 프로젝트가 게시판 만들기(깃헙레포) 인데요. 아는 분의 도움을 받으면서 꾸역꾸역 일단 만들어 보는 것을 목표로 하면서 만들었던 기억이 납니다.(제대로 이해하지 못하고 코드를 대충 끼워 넣었던 게 많았고 지금 다시 보니 부족함이 많네요)

 

그 다음에는 Spring framework에 대해서 공부도 했는데 (지금 생각해보면 스프링 공부를 했다기 보다 그냥 스프링 부트로 프로젝트 만들고 어노테이션 사용법 몇 개 배우고, 어떻게 동작하는지만 외워서 기계적으로 사용했던 거 같습니다. 그러면서 스프링 공부했다고 했었네요...) 이걸 기반으로 같은 게시판을 하나 더 만들었습니다. Spring Boot CRUD(깃헙 레포) 이렇게 어찌어찌 CRUD가 가능한 게시판을 한번 더 만들었습니다. (이 때는 GET / POST 방식의 차이를 모르고 그냥 되는대로 아무거나 쓰면서 했던 거 같습니다.. 단순히 뷰를 보면서 CRUD 하는거에 신났던 거 같네요 ㅋㅋㅋ)

 

간단한거라도 만들어보니 학교 공부만 하면서 느꼈던 아쉬움의 느낌들이 조금씩은 해소가 되었지만, 그럼에도 완전히 해소가 되지는 않았습니다. 왜냐하면 저는 저보다 많이 잘하는 사람과 자주 비교를 했고 제가 앞으로 가야 할 단계들과 현재에 해야할 일은 잊어버리고 그 사람들의 위치로 빨리 가고 싶다는 조급함을 느꼈기 때문에 그랬던 거 같습니다.(현재도 이러고 있는,,) 지금까지의 경험으로 다시 생각해봐도 현재 해야 할 것을 건너 뛰고 나의 속도로 가지 못하고 남의 속도에 맞추고 다른 사람의 수준으로 하려고 하다 보면 분명 기반이 단단하지 못해 쉽게 무너지는 것 같습니다. 하지만 마음을 달래는게 쉽지 않습니다.

 

 

SOPT IT 창업 동아리

그렇게 뭔가 협업을 해보고 싶으면서 아직도 아쉬움이 채워지지 않을 때, 3월 정도에 SOPT IT 창업 동아리에서 모집을 한다는 글을 보게 됩니다. 그 전에도 들어는 본 적이 있었고 막연하게 하고 싶다는 생각을 갖고 있었기에 지원을 해볼까 했습니다. 그런데 실력 좋은 사람만 뽑지 않을까?, 여기 가면 NodeJS를 한다는데 자바-스프링 공부한 나에게 도움이 될까? 이런 고민들을 했습니다. 하지만 Spring을 쓰나 NodeJS를 쓰나 서버의 개념(쿼리 짜기, HTTP, JWT 등등)이라는 것은 똑같기 때문에 충분히 도움이 되고 많은 발전이 있을 것이라는 확신에 지원을 하게 되었습니다.

 

이 때 정말 하고 싶다는 생각으로 서류를 열심히 검토하고 썼습니다. 열정이 서류에서 느껴졌을까,,  SOPT 26기 서류 합격을 하고 면접을 보게 됐습니다.(대박~~) 그 때 당시에는 면접에서 서류에서 쓴 거 위주로만 물어볼거라 생각을 했고, 기술 질문은 많이 안할거라는 생각을 하고 면접을 봤습니다. 하지만? 서버 파트장님께서는 기술 질문을 꽤나 하셨습니다...

  • Restful API를 아는지?
  • 클라우드 사용해본 적이 있는지? (클라우드가 무엇인지에 설명도..)
  • LEFT JOIN과 RIGHT JOIN의 차이가 무엇인지?
  • 트랜잭션이 무엇인지?
  • MVC가 무엇인지?
  • Git을 협업할 때 브랜치 몇 개까지 만들어봐서 사용해봤는지?

 

이 때 REST API가 무엇인지 면접 날 아침에 잠깐 봤는데.. 막상 또 질문 받으니 뭔지 잘 몰랐던 거 같습니다... 트랜잭션도 처음 들어봤고.. Git 사용법도 add, commit, push 정도를 제외하고는 몰랐습니다. (클라우드도 사용해본 적 없고.. )

이거 말고도 더 질문을 받았던 거 같은데 기억이 잘 안나네요... 하여간 정말 면접이 끝났을 때는 떨어진 줄 알았지만(정말 면접 마지막에 질문을 받은게 아니었음에도,, 마지막으로 각오? 아필? 한마디 하고 끝내겠다는 말을 먼저 하려다가 참았습니다...) 그런데 ! ! 결과는 다행히 합격이었습니다. 너무 기뻤습니다 😄 (솝트는 정말 열정만 있다면 합격할 수 있는 것 같습니다! )

 

그렇게 SOPT 26기가 시작되었고 세미나를 통해서 아래의 것들을 배울 수 있었습니다.

  • JavaScript, NodeJS-Express
  • AWS(EC2, RDS, S3)
  • REST API
  • JWT
  • MySQL
  • GIt 사용법
  • 등등 여러가지 서버 개념..

 

JavaScript, NodeJs-Express를 처음 배우니까 너무 어려웠고(세미나 주제들이 처음이다 보니 다 어려웠습니다...), 그러다 보니 세미나에서 배운 내용을 복습도 안하고 대충 공부 했던거 같습니다... (어떤 것을 배우던 열심히 하고 하는 것에 최선을 다해야 하지만,  난 자바 스프링이 더 좋은데.. 하면서 하기 싫어했습니다. 바보 같은 생각이었네요 ㅠㅠ)

 

하지만 그럼에도 이런식으로 서버 설계를 하는구나, 다른 파트와는 이렇게 협업을 하는거구나의 느낌은 충분히 세미나를 통해서 배울 수 있었습니다. (AWS도 사용해보고, Git도 조금씩 써보고~  열정적인 사람들 사이에 있으니 너무 재밌었습니다.) 

 

 

앱잼(App Jam)의 시작

그렇게 SOPT의 꽃이라고 할 수 있는 마지막 행사인 앱잼을 하게 되었습니다. 앱잼은 기획, 디자인, 서버, 안드, iOS 각 파트의 사람들이 한 팀이 되어 하나의 앱을 3주동안 개발하는 행사입니다.

당시에는 앱잼을 한다는 것에 너무나 설레는 감정을 가져서 그런가..  앱잼 전에 미리 세미나 복습도 하고 협업에 필요한 준비와 공부를 좀 했으면 좋았을텐데 거의하지 않고 앱잼에 참여를 했습니다

  • 프로젝트에서 Git 브랜치를 만들어서 하는 것이 어색함
  • 프로젝트에서 Pull Request를 써본 적이 없음 + 협업 시에 Merge Conflict를 해결 해본 적이 없음
  • NodeJS-Express의 개념도 잘 모르고 그냥 세미나 때 배웠던 내용을 대충 받아들이고 썼던 기억이...
  • MySQL query는 그 전에는 아주 간단한 JOIN 정도만 해봤는데 확실히 규모가 있는 프로젝트를 하니.. 쿼리 짜는 능력도 부족하다는 걸 느낌.
  • 테이블 간의 관계(일대일, 다대다, 일대다, 다대일) 설정하는 개념도 잘 모르겠고.. 외래키 개념도 자세히 잘 모름.. (대략 감으로만...)
  • JWT에 대한 개념 부족 (accessToken, refreshToken 이 정확히 뭔지... 배웠는데 앱잼 도중에 안쓰고 있다가 써야한다는 걸 알고 수정했던 기억이 납니다.)
  • HTTP, REST API의 개념도 엄청 부족함. (지금도 그런거 같긴 하지만,, )

 

그러다 보니 앱잼을 하면서도 서버 지식에 대해서 부족함을 많이 느꼈습니다. 

그럼에도 스스로 공부도 하고 팀원들의 도움을 받아 앱잼 중에 최대한 부족한 점을 채우면서 재밌게 개발을 할 수 있었습니다. 그렇게 최고의 팀인 캣푸드 기록 어플(Ounce)에서 아주 재밌는 앱잼을 할 수 있었고, 2주 합숙까지 하면서 개발했던 앱잼은 잘 마무리가 되었습니다. (Ounce 레포)

 

 

앱잼 후 여름방학

이 때는 앱잼을 하면서 스스로 부족했다고 느꼈던 공부를 하려 했고, 이전에 너무 얕게 접해봤던 스프링 프레임워크에 대한 공부를 자세히 해보겠다는 생각을 했습니다. (확실히 뭔가 앱잼을 하면서도 성장을 했지만, 앱잼 끝나고 부족한 부분을 스스로 공부할 때 많은 성장을 했다고 생각합니다.)

 

방학 때 공부를 하면서 정리 했던 레포인데.. 방학 때만 정리하고 그 이후로는 별로 손을 대지 않았네요.. ㅠㅠ 앱잼 전에는 부족한 점이 참 많았는데 앱잼과 방학동안 조금이나마 부족한 부분을 채우면서 공부하다 보니 자신감이 조금 생긴 것 같습니다.

 

그러던 중에 같이 앱잼을 했던 팀원들이 공모전을 같이 나가자는 제안을 하였고, 나름의 자신감이 생겨서 인지 흔쾌히 서버 파트로 참여하겠다고 동의를 했습니다. 

 

 

마루(Maru) 프로젝트

그 때 개발했던 앱은 마루(Maru)라는 프로젝트인데요. 코로나로 언택트 시대에서 온라인 독서모임을 하자는 취지로 앱을 만들게 되었습니다.  다른 파트와 이렇게 협업을 하면서 앱을 만들고 실력을 향상 시킬 수 있다는 것에 너무나 좋았지만 또 한편으론 아쉬운 점이 있었습니다. (왜이리 항상 뭐가 아쉬운건지..)

  • 내 코드는 서버를 조금 배운 사람도 짤 수 있을 것 같다. (JS, NodeJS-Express에 대한 이해가 많이 부족한데 그냥 계속 기계적으로 코딩을 하는거 같았습니다.. 다른 비유를 하자면 뭔가 수능 쉬운 수학 3점 짜리 문제만 계속 풀면서 공부한다고 하는 척 하는 느낌이랄까요.)
  • 아직도 ERD 설계, DB에 대한 개념, 쿼리짜는 능력 등등 부족함을 많이 느꼈습니다. (뭔가 이렇게 설계하면 안될 거 같은데 더 좋은 방법이 생각나진 않고 그랬습니다.)
  • 기간에 맞춰서 개발을 하다 보니 공부하면서 하기가 힘들다고 느꼈습니다. 

 

이렇게 실력에 대한 부족함으로 회의감을 느꼈습니다. 지금 내가 이렇게 프로젝트를 하는게 맞는걸까? 물론 프로젝트를 하면서 모르는 걸 찾아보면서 공부를 하는 거고 이번 프로젝트를 통해서 또 발전하기도 했지만(처음 사용해본 FCM(알림), RefreshToken, KAKAO BOOK API 연동 등등) 그래도 나에게 공부가 좀 더 필요하지 않을까? 라는 생각을 했습니다.

 

그래서 마루 프로젝트까지만 하고 잠시 프로젝트를 쉬고 개발에 필요한 부족한 부분의 공부를 해보자고 마음먹었습니다.

 

 

SOPT OB지원 후 활동

앱잼도 끝나고 여름방학 때도 공부를 하고, 프로젝트를 하다 보니 벌써 SOPT 27기 OB를 모집하는 시기가 되었습니다. SOPT를 한번 더 하면 잘 할 수 있을 거 같다는 생각도 들고 부족한 부분을 더 채울 수 있을 거 같다는 생각에 한번 더 지원하게 되었습니다.

 

 

다행히 27기 SOPT OB 면접을 합격할 수 있었고 그렇게 한번 더 활동을 하게 됩니다. 확실히 26기 때 부족했던 부분들을 조금이나마 채운 후에 OB로서 활동을 다시 하니까 여유로움도 생겼습니다.

 

그렇게 활동을 하면서 부족하다 생각했던 개념들을 정리하기 위해 Today I Learned 레포를 만들어 정리하기 시작했습니다. 확실히 이렇게 부족한 부분의 공부와 하고 싶었던 공부들을 하고, 기억 보다는 기록을 이라는 마음 가짐으로(이동욱님 블로그의 주제인..) 공부한 것을 기록 하면서 실력도 늘고 성장을 할 수 있었다고 생각합니다.

  • sequelize ORM 공부 + NodeJS-Express
  • Git 명령어와 Git-Flow, GitKraken 등등 (Git에 대한 사용법이 나름 익숙해진 것 같습니다 ㅎㅎ)
  • DB에 대한 개념 정리(키 개념, 테이블 관계, 트랜잭션 등등)
  • 서버에 도움이 될 법한 개념(JWT, AWS, OAuth, HTTP, REST API 등등 여러가지..)
  • Java, JavaScript 언어에 대한 공부

 

 프로젝트를 쉬는 기간에 이렇게 부족한 부분을 채우면서 많은 성장을 할 수 있었다고 생각합니다. (스스로가 생각할 때....)

 

 

SOPT 해커톤 고래단

SOPT에서 중간에 해커톤(무박 2일동안)을 하는 행사가 있습니다. 여기서 다행히 좋은 팀원들을 만나서 해커톤을 정말 재밌게 했고 3등을 하는 결과도 얻었습니다 (나이스~~) 개발 했던 기획은 앱에서 하루에 한번씩 칭찬 문구를 받아서 주변 사람들에게 칭찬을 하자는 내용입니다.

기획 내용도 좋고 팀원들도 잘 맞고 다들 릴리즈를 해보자는 말에 개발할 게 그리 많지 않고(적어도 서버는..) 가볍게 할 수 있겠다는 생각에 흔쾌히 한다 했습니다! (고래단 레포)

그렇게 고래단 앱을 릴리즈 하고 있고 좋은 경험을 하면서 재밌게 개발하고 있습니다. (겨울 방학 내에 출시가 가능할 듯한.. ?  ?)

 

 

이펙티브 자바 읽기

이펙티브 자바를 사놓고 읽어야지 읽어야지 하면서 안읽고 있었는데 다행히 SOPT에서 알게된 분의 스터디 모집을 통해서 좋은 분들을 만나 드디어.. 거의 다 읽게 되었습니다. 물론 엄청 자세히 이해하면서 읽지는 못했지만..(어렵기 때문에 ㅠㅠ,  한 번 읽고 말 것이 아니기 때문에 가볍게 보았습니다) 한번 다 읽었다는 거에 뿌듯하고 재밌었던 스터디 였습니다! (이펙티브 자바 스터디 레포)

 

 

1일 1커밋

2019년 말에 목표했던 1일 1커밋을 드디어 달성했습니다! 1일 1커밋을 해서 잘하고 대단한 사람이라는 것이 아니라, 하루도 쉬지 않고 코딩을 하려고 했다는 노력과 열정을 보여줬다고 생각합니다. 그렇기에 지금와서 보면 뿌듯하네요.. ㅎㅎ

누구든지, 꼭 1일 1커밋을 시도해보면 좋은 거 같습니다. 저는 주로 알고리즘, TIL 작성, 프로젝트하는 걸로 커밋들을 채웠던 것 같습니다! !

물론 1일 1커밋을 하면서 때로는 공부를 조금한 날도 있었지만, 억지로 대충 README만 수정하고 했다 하진 않았습니다.

(커밋이 주가 되면 안됩니다. 본인이 정말 공부를 한다는 전제에 1일 1커밋 까지 같이 한다면 정말 좋을 거 같습니다. 단순히 보여주기 식으로 대충 커밋만 채우는 것은 안하는 거만 못하다 생각합니다!)  - [My Github]

 

 

 

2021년 공부 목표

좋은 개발자가 되려면 어떤 하나의 언어, 하나의 프레임워크로만 하겠다는 생각보다는 새로운 분야를 하더라도 거부감 없이 도전할 수 있는 마인드가 필요하다고 생각합니다. 이런 마인드를 최대한 가져가면서 2021년에는 Java, Spring에 대한 공부를 좀 많이 해보려 합니다. (현재 가장 흥미를 느끼는 언어와 프레임워크인 것 같습니다. 그렇지만 이것만 하겠다는 마인드는 아닙니다. ㅎㅎ)

  • Java, JS 언어에 대한 기본기 늘리기
  • Spring 기본에 충실하기 (그 외에 여유가 된다면 JPA, Security 조금.. , Spring Batch, QueryDSL)
  • CS(OS, DB, Network) 공부 하기
  • 자료구조, 알고리즘 꾸준히 하기.. (코테를 위하여 ㅠㅠ)
  • 디자인 패턴 공부하기 (꼭 해야지..)
  • 기술블로그, TIL 꾸준히 운영하기 (최대한 내가 이해한 걸 기반으로 나만의 말투로 글 쓰기)

 

대략적으로 하고자 하는 공부는 간략하게 쓴 것이지만 이정도가 될 것 같습니다. 2021년에는 4학년이 되기 때문에 당장 취준에 필요한 공부를 우선적으로 빨리 해야겠다는 생각을 많이 하게 됩니다. 근데 저는 뭔가 어느 기간까지 무엇을 해야하고, 목표를 정한 것을 꼭 이뤄야 한다고 생각하고 공부를 하면 스트레스를 많이 받습니다 ㅠㅠ(공감가는 유재석 영상) 하지만 올해는 취준생이기 때문에 어쩔 수 없이... 취준만 조금 끝나고 여유가 생기면 Java-Spring 외에도 React 라던지 다른 여러 기술들도 많이 접해보고 싶습니다!

 

 

 

2021년 다짐

페이스북 생활코딩의 이고잉님이 쓰신 글을 보고 다짐을 하나 해볼까 합니다. 슬럼프에 관한 글입니다.

 

우리의 능력을 양동이에 담을 수 있는 물의 양이라고 해볼게요. 우리의 목적은 웅덩이에 물을 채우는 것입니다.

물을 처음 부으면 없던 물이 생깁니다. 0이 1이 된 거죠. 엄청난 변화입니다. 혁명입니다.

두번째엔 기존에 있던 물의 양에 비해서 100%의 양이 증가합니다.

세 번째엔 50%가 증가합니다.

네 번째엔 33%가 증가합니다.

천 번째엔 0.1%가 증가합니다.

만 번째엔 0.01%가 증가합니다.

바다가 된 웅덩이에 양동이 한번 물을 붓는다고 양이 늘어난 것처럼 보이진 않습니다. 동시에 양동이 하나만큼 물이 늘어났다는 것은 분명한 사실이기도 합니다.

사람의 능력은 유한하지만 사람이 이룰 수 있는 성취는 무한한 것 같습니다. 슬럼프가 왔다는 것은 정체된 것이 아니라 이미 많은 것을 해냈다는 증거가 아닐까요?

입문자는 물이 채워지는 증가속도에 기뻐하지 않고 양이 적음에 의기소침해 하고,

중급자는 물의 채워진 양에 기뻐하지 않고 증가속도에 절망하기 쉬운 것 같습니다.

의기소침, 절망감... 이런 감정이 나쁜 것이라 생각하지는 않습니다. 부정적인 감정은 앞으로 나아가게 하는 힘이 되어주니까요.

동시에 만족감, 포만감, 성취감, 호기심과 같은 긍정적인 감정은 포기하지 않게 하는 힘이 되어 주는 것 같습니다.

문제는 부정적인 감정은 자연 발생적이지만 긍정적인 감정은 비교적 드문 것 같아요. 수련이 필요한 것 같습니다.

부정적인 감정과 긍정적인 감정을 적재적소에 잘 배치해서 자신에게 유리하게 이용할 수 있다면 좋을 것 같아요. 저도 그러고 싶습니다

 

제가 중급자는 아니지만, 마음만은 위에서 말하는 중급자의 마음인 것 같습니다. 2019년에 비하면 2020년에는 많은 성장을 할 수 있었다고 생각합니다. 하지만 저는 제가 많이 성장했다는 사실에 기뻐하기 보다는 저보다 잘하는 사람과 계속 비교를 하면서 스스로 실력이 모자르다는 생각만 한 것 같습니다. 

그래서 2021년에는 남들과 비교하기 보다는 온전히 스스로와 비교하면서 발전하고 노력하려 합니다. 그리고 앞으로 채워야 할 것만 보지 말고 채워놓은 것에 기뻐할 줄 아는 자세도 가지면 좋을 것 같습니다.

 

 

 

스스로를 믿고 할 수 있다는 생각하기

중학교때까지 수영 선수로 지냈던 적이 있습니다. 제가 수영을 통해 얻은 몇가지가 있는데, 그 중 하나가 경기 도중에 앞을 보는 순간 뒤쳐진다는 겁니다. 수영을 해본 사람들은 아시겠지만, 수영을 할때는 앞을 보면 저항 때문에 속도가 나질 않습니다. 묵묵히 자기 자신을 믿고, 최대한 열심히 수영을 하고 마지막에 도착하는 순간 몇등을 했는지 확인해야 합니다.

 

위의 문구는 아는 분의 블로그를 참고 했습니다. 예전에 수능 공부를 할 때 분명 나름 열심히 공부는 했는데 전혀 공부하지 않는 친구들과 똑같은 성적을 받았던 것이 아직도 영향을 주는 것 같습니다. 그 때의 기억 때문인지 지금도 열심히 하면서도 잘하고 있는게 맞을까? 이렇게 해도 성공할 수 있을까? 또 하는 척만 하는건 아닐까? 라고 스스로에 대해 의심을 할 때가 많았습니다. 이러다 보면 멘탈이 무너질 때가 많았는데 이제는 묵묵히 자신을 믿고 자신만의 길을 가는 가고자 합니다.

 

 

기본에 충실하며 주변에 현혹되지 말기

수능 공부를 할 때도 팔랑귀라 그런지.. 주변에 많이 휘둘렸습니다. 예를들어,

  • 지금 시기면 어디까지 예습이 되어 있어야 한다.
  • 지금 시기에 이 성적이면 수능 성적은 더 낮다고 봐야한다.
  • 나는 앞 부분을 하는데 쟤는 벌써 뒷 부분을 하네? 나도 빨리 저거 해야하는데 ...

 

이랬던 감정들은 개발하는 지금도 느끼고 있습니다.

  • 저 사람은 Docker 쓰고, CI/CD 쓰고, JPA 쓰고 엄청 대단한 기술들을 쓰네..
  • 나는 그냥 단순한 CRUD 프로젝트 인거 같은데 저 사람은 뭐 Redis 쓰고 여러 가지 대단한 기술을 쓰는 것 처럼 보이는 것들을 쓰는구나..

 

이렇게 남들과 비교하면서 현재 내가 당장 해야하는 것들을 잊고 나중에 해야할 것들을 하면서 기본에 충실해야 한다는 것을 잊을 때가 많았습니다. 취준생의 목적지는 결국 어느정도 정해져 있다고 생각합니다.(지하철의 종점역이 있듯이..)  조금 늦더라도, 꾸준히 원칙을 지키며 올바른 방향으로만 갈 수 있다면 도착하는 시간의 차이지 반드시 최종 목적지에 갈 수 있다고 생각합니다. 여유를 가지지 못하고 조급함을 가진다면 내가 너무 느린 거 같다. 남들에 비해 너무 부족하다 라는 생각에 휘둘려서 기반을 잘 쌓지 못하고 금방 무너질 것입니다.  (단계를 하나씩 밟지 않고 건너 뛰어서 빨리 가게 되면 결국 나중에 다시 되돌아와서 다시해야 하는 상황이 생기는 것 같습니다. ㅠㅠ)

하나를 하더라도 하는 척이 아니라 제대로 이해하고 기본에 충실하고 싶습니다.

 

 

 

코드 한줄 한줄 왜 작성했는지 생각해보기

개발을 하면서 코드를 작성하다 보면 예전에 했던 코드를 가져다 쓰면서 조금 커스텀해서 사용하는 경우가 많았습니다. 그냥 기계적으로 코드를 짜고는 했었는데 이제는 많은 생각을 하면서 개발을 해보려 합니다. 단순히 그냥 결과물을 만드는 것을 위해서가 아니라 하나의 서버를 개발하더라도 내가 왜 이렇게 했는지 설명할 수 있고 많은 생각을 하면서 설계했다는 것을 느끼게 해보고 싶더라구요. 

 

 

기술 블로그 + TIL에 나만의 글을 작성하기

블로그를 작성하다 보면 다른 사람들의 글을 참조한 것과 나의 생각을 기반으로 쓰게 되지만, 가끔 쓰다보면 남들의 글을 많이 참조하고 나의 생각은 조금 들어가는 글을 많이 썼던 것 같습니다 ㅠㅠ 올해는 하나의 주제로 포스팅 하겠다고 생각을 하면 그 주제에 대해서 최대한 이해를 한 후에(많은 자료를 참고하면서) 이해한 것을 기반으로 나만의 말투로 글을 써보려 합니다. (이러면 시간이 엄청 오래걸리지만 그만큼 글의질도 높아지고 머리속에도 오래 남는 것 같습니다 ㅎㅎ)

 

 

 

마지막으로

처음으로 회고를 해봤는데 많은 생각을 하면서 글을 쓴 거 같네요.. 2021년에 다짐의 핵심은 조급함을 버리고 여유로움을 가지고, 남들과 비교하지 않고 자신만의 길을 가자. 라고 생각합니다.  2019년에만 해도 모르는 것을 스스로 찾아 보려는 생각보다는 무작정 질문부터 하려는 태도로 혼이 났던 적이 몇번 있었는데(물론 지금도 조금 그러는 거 같지만,,)  이제는 스스로 검색하면서 공부할 수 있는 능력도 생긴 것 같습니다. 정말 많은 성장을 한 건 사실이니 잘하고 있다고 믿고 화이팅 하기를 ! !  

 

그리고 나에게는 멀게 느껴졌던 4학년이 되어 이제는 정말 취준의 길을 걷게 되는 거 같습니다. 언제까지 어느정도 취업 할 준비가 되어야 한다. 포트폴리오가 갖춰져 있어야 한다. 등등의 생각으로 평정심이 흔들리는 경우가 많습니다 ㅠㅠ  수험생으로 비유하자면 수능 전에 9월 모의고사를 볼 때는 수능 볼 준비가 거의 되어 있어야 한다 라는 말 같습니다. (수험생 생각이 많이나서 수능 비유를 많이 하게 되네요...) 남들이 정하는 시기의 기준으로 맞춰서 가는 것 보다는 나만의 속도로 나만의 시기에 맞춰서 한 해를 시작해보고 싶네요~_~

 

작년에 많은 성장을 한 만큼 취준을 하는 올해는 얼마나 더 성장할 수 있을까란 기대도 되는 것 같습니다 ㅎㅎ

 

네카라쿠배 회사를 가는 그날까지 화이팅~~

반응형