백엔드 개발자가 되려는 사람의 2021년 회고

명아주·2021년 12월 31일
0

힘들었지만 많은 발전이 있었던 2021년

공부와 인턴, 기존에 하던 일(LabVIEW), 취업준비 등 매우 바쁜 1년이었습니다. 기존에 LabVIEW 개발자라는 경력을 포기하고 웹 백엔드 개발자가 되고 싶어서 공부를 시작했고, 국비교육이 끝남과 동시에 LabVIEW 프리랜서 일을 맡게되어 일을 하다가, 인턴을 하고, 인턴이 끝나고 다시 일하면서 취업준비를 하는 생활을 1년을 보냈습니다.
갈수록 좀 지쳐서 루즈해졌던 것 같은 자신을 반성하고 내년엔 다시 불태우며 공부하고 취업준비를 도전해보겠습니다.

1월 ~ 4월

2020년 11월부터 4월까지 비트캠프를 통해 국비교육을 수료했습니다. 그전엔 주말 유료 세미나를 통해 두달 정도 Java를 공부해본게 전부였지만, 수업을 따라가는 데 큰 도움이 되었습니다.
국비교육을 거치며 Java, Oracle, HTML, CSS, Javascript, Servlet, JSP, Spring 등을 배웠고 3번의 팀프로젝트를 거쳐 익숙해질 수 있었습니다. Servlet, JSP를 이용한 2번째 프로젝트나 Spring을 이용한 3번째 프로젝트에서 점점 개발을 따라가지 못하는 팀원들이 보였고, 열심히 알려주며 진행했지만 중도 포기한 몇 명은 많이 아쉬웠습니다. 그 분들은 다시 자기 분야에서 잘 하시겠지만.
나름 국비교육에서 앞서나가며 여러 사람들에게 질문을 받고 고민하고 해결하며 스스로의 실력을 더 쌓을 수 있었습니다.
국비교육을 진행하며 가장 만족했던 프로젝트는 1달간 진행했던 새늘봄 이라는 프로젝트였는데 Spring의 설정과 클라우드, Docker 등 인프라적인 부분도 많이 접해볼 기회를 얻었고 Dependency Injection을 통한 IoC 컨테이너의 편리함에 빠졌습니다.

5월 ~ 6월

국비교육 중 전에 다니던 회사에서 연락이 와서 프로젝트를 진행해야하는데 도와달라는 요청을 받았습니다. 사실 전 LabVIEW를 떠나고 웹 개발자로 집중하고 싶었지만, 삼고초려를 떠올리게 하는 전 사장님의 도움요청을 거절하기가 너무 힘들었고 참여하겠다고 답변했었습니다. 그래서 5 ~ 6월 LabVIEW를 이용해 데이터 분석 프로그램의 2달간 중간 완료버전을 개발했습니다.
동시에, 우아한 테크캠프에 지원하고 조금씩 절차를 밟아나갔고 운 좋게도 합격하게 되었습니다.

7 ~ 8월

중간 완료버전 제출 후, 약 두달의 여유시간이 생겼었는데 시기적절하게도 우아한 테크캠프에 집중할 수 있는 시간을 얻을 수 있었습니다.
우아한 테크캠프는 프론트엔드 기반의 풀스택 과정이라고 볼 수 있는데, 중점은 프론트엔드였습니다. 저는 백엔드 개발자로 커리어를 쌓아나가고 싶지만 그래도 우아한 형제들에 입사시도를 해볼 수 있는 기회이기도 했고 그 회사에서 일하는 방식과 문화를 경험해보고 싶어서 지원했었습니다.
두 달간 거의 모든게 새로워서 힘들기도 했지만, 막연했던 프론트엔드 분야와 리액트를 사용해볼 수 있던 경험이 좋았고, Node.js를 이용한 백엔드를 경험해볼 수 있었습니다. 이 때의 경험덕분에 지금 Node.js 백엔드 개발자 모집 공고에도 자신있게 지원하는 것 같습니다.
특히, Node.js자체가 완전 처음이었는데 좋은 팀원들을 만나 express 부터 배우면서 프로젝트를 진행할 수 있었고 짬을 내서 TypeDI 같은 라이브러리를 활용해 Spring 과 비슷한 구조를 만들어보려고 노력해보기도하고, 최종 프로젝트에서는 Nest.js를 사용해서 좀더 비즈니스 로직에 집중하고자 시도해봤습니다.
기술 외적으로도 gather town에서의 메타버스 협업경험, 슬랙을 활용한 소통, 활발한 풀리퀘와 코드 리뷰, 페어프로그래밍 등 여러 기술문화를 체험해볼 수 있어서 개발자 인생에 뜻깊은 시간이었습니다.
항상 개발 분야에서 비슷한 시간을 투자한 사람들 중에는 탑을 놓치지 않았었는데, 우아한 테크캠프를 진행하는 동안은 뒤에서 따라가기 벅찼던 것 같습니다. 얼마나 더 많은 시간과 노력을 들여야할지 좀 막막하기도 했었습니다.

9 ~ 12월

우아한 형제들 입사 전형에 실패했습니다. 우아한 테크캠프는 프론트엔드 개발자 직무로만 지원할 수 있는데, 아무래도 그 분야의 전문성이 많이 떨어졌던 것 같습니다.
다른 회사들을 계속 알아보면서 LabVIEW 프로젝트를 병행했습니다. 웹개발을 하면서 배웠던 디자인 패턴이나 아키텍쳐를 LabVIEW 프로젝트에도 적용하면서 더 좋은 구조를 만드려고 노력하며 개발했고 11월 말에 개발을 완료했지만, 미처 생각하지 못했던 버그나 추가 요구사항의 개발을 진행하느라 12월 30일 어제 마지막 실행파일과 설치파일을 보냈습니다.

이제 내년은?

개발 분야에 대해 공부할 것

  • 데이터베이스 처리를 TDD로 개발하는 것에 항상 어려움을 겪고 있습니다. Mock Data와 Transaction 등의 처리를 어떻게 할지 고민하고 좋은 개발방법을 숙달하고 싶습니다.
  • JPA, Hibernate에 대해 공부할 것. Jdbc, Mybatis를 이용한 개발도 좋지만 Node.js에서 TypeORM을 썼던 경험이 너무 좋아서, Java에서도 ORM을 활용한 개발을 진행하고 싶기에 이 부분에 대해 공부할 필요가 있습니다.
  • 면접에서 자주 나오는 멀티쓰레드에 대해 공부해보고 실제 프로젝트에 적용해보고 싶습니다. 실무에서 멀티 쓰레드 코딩을 많이 하는 것 같은데 Java에서는 채팅방 구현해보는 실습 외에 아직 써본적이 없습니다. 웹에서 어떤 부분에 멀티쓰레드를 이용하는지 고민해보고 공부해보겠습니다.
  • Effective Java와 Clean Code 읽기. 이제 프로젝트도 다 끝났으니, 여유를 가지고 읽어보려고 합니다. 더 클린한 코드와 객체지향적인 코드를 위해 노력해보겠습니다.
  • 밀린 강의 수강하기. 인프런, 패스트캠퍼스에 약 70만원 가량의 강의들이 잠자고 있습니다. 1월부터는 틈틈히 강의들을 보면서 공부해나가겠습니다.
  • 위의 것들을 망라한 작지만 탄탄한 토이프로젝트 진행해보기. 전체 규모는 작더라도 여러 기술들을 잘 활용해볼 수 있는 토이 프로젝트를 진행해볼 것입니다.

개발 외로는?

  • 운동과 식이요법으로 꼭 전성기로 돌아가기
  • 좋은 회사에 취직해서 좋은 인연을 쌓아나가고 싶습니다.
profile
풀스택 개발자 꿈나무

0개의 댓글