현재 서울시립대학교 통계학과에 입학을 앞두고, 후에 어떤 개발자가 되면 좋을지에 대해 정말 오랜 기간 고민했다. 큰 틀에서는 현재 하고 있는 프론트엔드에 대해 더 깊이 공부할 것이냐, 백엔드 개발자라는 꿈을 갖고 새로운 공부를 시작할 것이냐 선택하는 것이었다. 결론부터 말하자면, 백엔드 개발자를 목표로 두고 공부를 시작하기로 마음먹었다.
이유가 대단하게 있는 것은 아니다. 프론트엔드 분야 개발도 나에게는 매우 흥미 있는 분야였다. 하지만 현실적으로 취업을 고려했을 때, 자바를 배우는 것이 내가 먹고 사는데에 좀 더 도움이 될거라고 생각했다. 왜냐하면 프론트엔드 개발자 포지션이 백엔드 개발자 포지션보다 ai에게 더 빠르게 대체될 것이라고 생각했다. 그리고 프론트엔드 개발자는 백엔드 개발자보다 비교적 진입 난이도가 낮기 때문에 경쟁은 더욱 치열해질 것이라고 생각했다.
내가 고등학교 3학년 때 학교에서 데이터베이스 과목을 가르치시던 선생님께서는 우리에게 항상 말했다. "대한민국에서 개발자를 하려면 자바를 배워야한다. 자바는 무료로 배울 수 있다면 정말 감사한 것이고, 돈을 내서라도 배워야한다." 이 말을 들었을 때는 틀린 말은 아니라고 생각했지만, 뭔가 찜찜함이 남았다. 그 때는 내가 백엔드 분야는 고려조차 하지 않고 프론트엔드 개발자를 꿈꾸고 있었기 때문이었던 것 같다. 하지만 점차 그 말이 맞는 것 같다는 생각이 들고있다.
그래서 올해 백엔드 공부를 어떻게 하면 좋을지 많이 고민해보고 찾아보기도 했다. 그 중 디시인사이드 백엔드 갤러리에서 현직 백엔드 개발자 분이 작성하신 로드맵을 참고하여 로드맵을 짜보았다.
우선 공부 순서는 다음과 같다.
로드맵
- 운영체제, 자료구조, 네트워크, 데이터베이스
- 자바, 방법론/개념
- 스프링, JPA
1-a. 운영체제
1-b. 자료구조
1-c. 네트워크
1-d. 데이터베이스
- [도서] Real MySQL 8.0 (1권) 27,000원
- [도서] Real MySQL 8.0 (2권) 28,800원
- 참고: [정보] 취준용 “Reac MySQL 8.0” 학습 필터
2-a. 자바
2-b. 방법론/개념
3-a. 스프링
- [강의] 토비의 스프링 6 - 이해와 원리 121,000원 (현재 84,700원)
- [도서] 토비의 스프링 3.1 세트 67,500원
- [도서] 스프링 시큐리티 인 액션 31,500원
- 참고: 김영한의 스프링 로드맵
3-b. JPA
4. 추가적인 공부
위 로드맵을 수립하고, 조금 더 고민해보았는데, 우선 입학 전까지 자바와 자료구조를 중심적으로 공부해보고 싶기 때문에, 김영한의 실전 자바 - 입문편과 김영한의 실전 자바 - 기본편을 먼저 수강한 뒤에 코딩테스트 강의로 자료구조를 학습하고 이후 로드맵을 따라가기로 결정했다. 추가로 올해 프로그래밍기능사 실기와 토익을 같이 준비해야한다. 올해 위 로드맵 중 얼마나 학교 공부와 병행할 수 있을지는 모르겠지만, 최선을 다해 공부해서 1년 뒤에는 좀 더 성장해있었으면 한다.