안녕하세요! 그냥 지나가려다 몇 가지 궁금하기도 해서 답변 남깁니다:) 스프링과 자바를 구별하면서 배운다면 더 도움이 될 것 같아요. 무작정 하다보면 소위 말하는 '스프링 개발자'에 그치는 상황이
안녕하세요! 그냥 지나가려다 몇 가지 궁금하기도 해서 답변 남깁니다:) 스프링과 자바를 구별하면서 배운다면 더 도움이 될 것 같아요. 무작정 하다보면 소위 말하는 '스프링 개발자'에 그치는 상황이 옵니다. 사실 더 말하고 싶지만 질문 주신 공부의 방향성에 대해서 답하기에 앞서서 알아야 되고, 알고 싶은 것들이 더 있어요. 대학교를 다니는 동안 혼자 프로젝트를 해본 적이 없고 얕은 지식 뿐인데도 '백엔드 개발자'를 지망하게 된 계기가 있나요? 혹시 3학년 이라는 무게가 결정하게 만든 것은 아닌지 의심됩니다. 대학교는 말 그대로 배우는 공간이니까 스스로 얕은 지식이라고 말하는 것들을 잘 배우는 게 전부인 곳이 맞습니다. 그러나 취업을 앞두고 긴장하게 되는 이유는, 아무래도 학교에서 배운 지식으로는 실제 개발에 직접적인 영향을 주지 못한다고 느껴지기 때문이겠죠. 그러니 이를 얕은 지식이라고 표현하고 실제 개발을 배우고자 하게 됐을 것 같아요. 근데 저는 그 '얕은 지식'이 더 중요하다고 느낍니다. 오히려 실제 개발자가 되었을 때는 그 '얕은 지식'을 다시 배울 시간이 없어서 그 때 제대로 할 걸이라는 생각을 갖고 있거나, 늦게라도 스터디를 시작하는 개발자들이 많아요. 미래의 것을 앞당겨서 하려는 것보다는 지금 하는 것을 제대로 하는 것이 더 중요합니다. 자료구조, 네트워크, 알고리즘, 객체지향 등 기본에 집중해주세요. 실제로 신입의 면접에서는 CS 지식을 체크하는 경우도 많기 때문에 직접적인 도움도 될겁니다. 그리고 '백엔드' 개발자가 되기로 결정한 특정 계기가 없다면 아직은 그냥 개발자가 되는 데에 충실하는 게 좋을 것 같아요. 프론트엔드 개발자라고 해서 서버에 대해 몰라도 되는 것은 아니고, 반대로 서버 개발을 한다고 해서 UI/UX 에 대해 아예 몰라도 된다는 등의 억지 이론은 존재하지 않습니다. 적어도 도태되지 않은 개발자중에는 그런 사람은 없을거라 믿습니다. 그냥 IT기업처럼 한 서비스가 출시되기 까지 전체 사이클을 겪어보는게 좋아요! 그 중에서 중점적으로 맡은 역할이 백엔드 개발이다 정도로 생각하면 베스트겠네요. 혼자 프로젝트를 해본 적이 없다고 하셨지만, 사실 앞으로도 혼자 프로젝트 할 일은 없을(?)거에요. 굳이 혼자할 필요가 있을까요? 지금이라도 동아리나 대회 등을 함께 준비하면서 말씀 드린 전체 사이클을 경험한다면 더 좋은 이력이 될 것 같습니다! 게다가 간단히 만들겠다는 프론트가 React 라는 것은 이상합니다. 리액트.. 많이 어렵고 전문적인 프론트엔드의 영역입니다. 정말 백엔드 개발자가 간단히 화면을 짠다고 하면 JSP부터 시작해서 타임리프에 이르기까지 더 현명한 방법들이 있으니 굳이 혼자 프로젝트를 한다고 하면 이 방법을 더 추천드립니다. 알고리즘 공부를 한다는 건, 당연하게도 유명 기업들을 목표로 한다는 것일텐데 그럴 수록 커뮤니티는 더욱 중요합니다. 마지막으로, 제가 3학년이라면 CS공부를 게을리하지 않으며 우테코 등의 부트캠프에 참여해서 실패 없는 전체 사이클을 경험하고 그 안에서 배운 것들로 서비스 배포 및 운영까지 도전한 뒤에 백엔드로 참가했었지만 어떤 게 나에게 더 적합한 직군인지 고민해서 깊게 파보는 것까지. 이렇게 움직일 것 같습니다:)