
왜 로드맵을 두 개나 만들었나
작년 말부터 다시 공부를 시작하면서 고민이 하나 생겼다.
강의만 들을까, 책을 읽을까. 둘 다 장단점이 있었다.
강의는 개념을 빠르게 이해할 수 있고 코드를 직접 보며 따라 칠 수 있다는 장점이 있다.
특히 김영한 선생님 강의는 실습 위주라 손에 익히기 좋다.
하지만 깊이 있는 내용은 책만한 게 없더라.
특히 Real MySQL이나 이펙티브 자바 같은 책은 실무에서 막힐 때마다 찾아보는 레퍼런스가 되었다.
그래서 두 개를 만들었다.
강의 중심 로드맵: 빠르게 실무 감각을 익히고 싶을 때
책+강의 로드맵: 제대로 깊게 공부하고 싶을 때
강의 로드맵 (21개 코스)
이건 순수하게 강의만으로 구성했다.
인프런에서 김영한 선생님 강의를 중심으로 Java 기초부터 Spring 고급까지 단계별로 쭉 이어진다.
실제로 내가 듣고 있는 순서
- Java 기초 다지기 - 나도코딩 + 김영한 자바 시리즈
- 웹의 이해 - HTTP 웹 기본 지식
- Spring 핵심 - 입문 → 핵심 원리 → MVC
- DB와 JPA - Spring DB + JPA 기본편
- 고급 개념 - 자바 고급 시리즈, Spring 고급편
- 실무 스킬 - 알고리즘, AI 활용, 이력서 작성법
지금은 Java 고급편을 듣고 있다.
I/O와 네트워크를 다루는데, 레거시 시스템 다루면서 자주 마주치는 문제들이라 바로바로 적용하고 있다.
강의의 가장 큰 장점은 속도다.
빠르게 개념을 잡고 코드로 구현하면서 체화할 수 있다.
시간이 부족한 직장인에게 딱이다.
책+강의 로드맵 (50개 코스)
이건 좀 더 욕심을 부린 버전이다.
강의로 빠르게 개념을 잡고, 책으로 깊이를 더하는 방식이다.
그리고 추천한 책들 중 2~3개 정도 빼곤 다 실제 갖고있는 책 이기도 하다.
(강의도 그렇고 책도 그렇고 뭐든 사두고 필요할때만 보는 . . . 🤔)
단계별 구성
입문 단계 (4권)
- 자바의 정석, Git 교과서, 객체지향의 사실과 오해 등
- 특히 객체지향의 사실과 오해는 정말 여러 번 읽었다.
코드 작성 전에 객체지향 사고방식을 먼저 익히는게 중요하더라.
초급 단계 (6권)
- CS 기초, HTTP 완벽 가이드, 주니어 백엔드 실무 지식 등
- 주니어 백엔드 개발자가 반드시 알아야 할 실무 지식은 진짜 실무에서 자주 마주치는 문제들이 다 나온다.
커넥션 풀, 트랜잭션, 동시성 문제 등.
중급 단계 (11권)
- 이펙티브 자바, Clean Code, Real MySQL, 토비의 스프링 등
- 여기가 진짜 핵심이다. Real MySQL 8.0은 쿼리 튜닝할 때마다 꺼내본다.
이펙티브 자바는 코드 리뷰 받을 때 자주 언급되는 책.
고급 단계 (7권)
- 오브젝트, 디자인 패턴, 클린 아키텍처 등
- 레거시 코드 활용 전략은 현재 프로젝트에서 딱 필요한 책이었다.
테스트 없는 레거시 코드를 어떻게 안전하게 수정할지 나와있다.
전문가 단계 (7권)
- DDD, 마이크로서비스, Docker/Kubernetes, AWS 등
- 아직 여기까진 손도 못 대고 있다. 나중에 천천히.
강의와 책을 함께 보는 방법
이렇게 조합하면 좋다:
- 김영한 자바 중급 + 자바의 정석 → 개념 이해 + 레퍼런스
- 김영한 HTTP 강의 + HTTP 완벽 가이드 → 실습 + 깊은 이해
- 김영한 JPA 강의 + 자바 ORM 표준 JPA 프로그래밍 → 완벽한 조합 (같은 저자)
- 김영한 Spring DB + Real MySQL 8.0 → 성능 튜닝까지
강의로 먼저 실습하고, 책으로 이론을 보완하면 이해가 더 잘 된다.
어떤 로드맵을 선택할까?
강의 로드맵이 맞는 사람
- 빠르게 실무 감각을 익히고 싶다
- 시간이 부족하다
- 손으로 코드 짜면서 배우는 게 좋다
- 취업 준비나 프로젝트가 급하다
책+강의 로드맵이 맞는 사람
- 제대로 깊게 공부하고 싶다
- 레퍼런스 자료가 필요하다
- 실무에서 자주 참고할 책을 찾고 있다
- 장기적으로 성장하고 싶다
나는 둘 다 병행하고 있다. 급할 땐 강의로 빠르게, 깊이가 필요할 땐 책으로.
실제로 공부하면서 느낀 점
완벽하게 다 볼 필요는 없다
처음엔 모든 강의, 모든 책을 다 봐야 한다는 강박이 있었다.
하지만 실무하면서 필요한 것부터 찾아보게 되더라.
예를 들어 JPA N+1 문제가 생기면 → JPA 강의 해당 부분 다시 보고 → 책에서 상세 내용 찾아보는 식이다.
강의와 책의 조합이 최고다
강의만 보면 이해는 되는데 깊이가 부족하다.
책만 보면 이론은 아는데 실제로 어떻게 쓰는지 감이 안 온다.
둘을 섞으면 완벽하다.
김영한 선생님 강의는 진짜다
별명이 '영한신'인 이유가 있다.
개념을 이렇게 쉽고 명확하게 설명하는 강의는 처음이었다.
특히 실습 위주라 손에 바로 익는다.
책은 레퍼런스로 활용한다
모든 책을 처음부터 끝까지 읽을 필요는 없다.
필요한 챕터만 발췌해서 읽어도 된다.
Real MySQL은 인덱스 챕터만 3번 읽었다.
앞으로의 계획
현재는 Java 고급편을 듣고, 이펙티브 자바를 천천히 읽고 있다.
레거시 마이그레이션 프로젝트가 한창이라 레거시 코드 활용 전략도 틈틈이 본다.
다음엔 Spring 핵심 원리 고급편 듣고, 오브젝트를 읽을 예정이다.
설계와 아키텍처 부분을 좀 더 공부하고 싶다.
로드맵은 계속 업데이트할 것이다.
새로운 강의나 책을 발견하면 추가하고, 실무에서 필요 없다고 느낀 건 빼면서 계속 다듬어갈 예정이다.
마치며
이 로드맵들은 완벽하지 않다. 지극히 내 상황에 맞춰 만든 거라 모든 사람에게 맞진 않을 것이다.
하지만 비슷한 고민을 하는 동료 개발자들에게 작은 참고가 되었으면 한다.
특히 "뭐부터 공부해야 하지?"라고 막막해하는 주니어 개발자분들께.
공부는 정답이 없다. 본인에게 맞는 방법을 찾아가는 게 중요하다.
나도 여전히 찾아가는 중이다.
함께 성장해요! 🙌
로드맵 링크
피드백 환영합니다
추가하면 좋을 강의나 책이 있다면 댓글로 알려주세요!
현실 중소/자바 백엔드 개발자의 지극히 개인적인 강의 로드맵 로드맵 - 인프런
Java, Spring 스킬을 학습할 수 있는 로드맵을 인프런에서 만나보세요.
www.inflearn.com
현실 중소/자바 백엔드 개발자의 지극히 개인적인 필독서 로드맵 로드맵 - 인프런
Java, Spring 스킬을 학습할 수 있는 로드맵을 인프런에서 만나보세요.
www.inflearn.com
'☃︎ 𝐃𝐢𝐚𝐫𝐲' 카테고리의 다른 글
| 2024년 정보처리기사 실기 2회차 후기 (0) | 2024.07.28 |
|---|---|
| 2024년 1월 ~ 3월 구직기간이야기, 첫 출근을 앞두고 쓰는 이야기 (0) | 2024.04.12 |
| What did you do today? (Feat. 구직 어린이의 요즘이야기) (0) | 2024.03.28 |
| 멀고도 험난한 포트폴리오 만들기 (0) | 2024.01.31 |
| 그대의 Git은 안전한가요 ? (1) | 2024.01.31 |