작년 9월 전역해서 이번에 복학한 컴공 2학년 복학생입니다. 이번 학기를 마치고 돌아보니 도저히 방학을 허송세월 보낼 수 없어서 이렇게 글을 적습니다.
1학년 때는 전공 과목이라고 해봐야 c/c++ 정도가 다였는데 이번에 본격적으로 전공 공부를 하다보니까 참 어렵더라고요..ㅠ
(이번 학기에 컴퓨터 구조, 자료구조, 운영체제, Java를 배웠습니다.) 그래서 방학 때 공부를 좀 하고 싶은데 무슨 공부를 어떻게 해야될지 모르겠습니다..
지금 생각은 C랑 Java를 까먹지 않기 위해서 매일 매일 프로그래밍 문제를 풀고, 컴구조, 자료구조, 운영체제를 방학동안 다시 복습해 볼까 하는데 선배님들은 어떻게 하셨는지, 아니면 어떤 공부를 하셨는지 궁금해서 조언을 듣고 싶습니다.
연차와 상관없이 전공지식 중 기본에 대한
이해가 없는 부분들이 안타까웠어요.
원리에 대한 이해없이 기술에 대한
단순 암기를 하는 느낌이랄까.
컴구나 운영체제 이론이 어찌보면 따분한데
실제 개발이나 시스템 장애 발생 시에
문제 해결의 사고를 넓혀줄 수 있거든요
좀 더 근본적인 해결방법을 도출할 수도 있다고 보고요.
새로운 기술들도 결국 기존 기술에서
개선되는 부분인 만큼 구조가 어떤 방식으로
발전했나를 한번 더 보면 좋았으리라 생각합니다.
물론 이론과 함께 알고리즘에 대한 준비도 추천드려요.
핫한 개발 프레임워크는 어차피 유행주기가 있기에
필요할때 배우면 된다고 생각합니다.
그게 또 취향에 안 맞으면
단순한 미니 프로젝트를 구성하고
거기에 알고리즘을 붙여보는 식으로 해보세요.
100% 완성 하면 좋지만 시도하는 것으로도
충분히 의미가 있습니다.
어차피 실제 프로젝트에서는 대부분 분업을 하게되니까요.
이런 책이나 leetcode 사이트에서 풀어보는 게 좋을까요?
http://m.yes24.com/Goods/Detail/8006522YES24
이후 진로에 대해 고민해보세요
회사마다 중요하게 여기는 부분이 있는데
메이저 회사들은 주로 알고리즘 시험을 보게되니
책은 직접 보시고 자기한테 맞는거 사셔요
설명 스타일이 천차만별이라서. ^^
링크주신 책은 그런 유형 중의 하나가 맞습니다.
이번 취업 시장에서 느낀건... 일단 인턴이나 스타트업 등 괜찮은 기회, 시간이 있다면 일을 해보는 게 좋아보입니다. (그것도 사실상 코딩하는 업무가 아니면 딱히.. 취업에 도움은 안되는 것 같고..)
개인적으로 느낀 괜찮은 기업 합격자는... 그냥 경력보다 잘 할 것 같은(?) 신입을 뽑아요. 그리고 그 신입들은 예상외로 (인턴, 스타트업 등으로)경력이 있었다..? 싶은.. 물론 무료/최저임금이하 봉사는 하지 말아야 합니다.
프로그래밍 문제는 프로그래머스와 백준 문제집 위주로 풀면 될 거 같고(경력직과 달리 공채는 대개 프로그래머스에서 하기 때문에...), 언급하신 알고문제 해결전략 보심될 거 같구요.
그 회사들이 필요로하는거 공부하세요. 요즘 인터넷 검색하면 면접 후기 많아요.
코딩테스트는 매일 최소 1문제 이상 푸시구요. 릿코드에서 top100 문제 먼저 도전하세요.
그러고 프로젝트 깃허브에 올릴 정도로 준비하시고요. 인맥도 쌓으시구요.
저도 제대로 못한 것들이네요.. 그래도 열심히 준비하셔서 좋은데 가세요.
진짜 중소들어가서 초기 몇년은 나중에 격차 줄이기 힘듭니다. 경험담입니다.
그러고 실제 하는 일도 중소랑 별 차이 안납니다. 오히려 쉬울 수도 있어요.
중소만 다닐 땐 전혀 몰랐으나 대기업 가니 왜 대기업 대기업하는지 알겠더라구요.
없으면 장학금에 도전
만들고 싶은거나 하고싶은 분야가 있다면 그 분야에 맞는 기술스택을 쌓고 혼자(혹은 그룹으로) 개인 프로젝트를 꾸준히 오랫동안 진행해보면 포트폴리오에 많은 도움이 됩니다.
IT기술직에서 신입들 면접볼때 다 같지는 않겠지만 제기준에서 (일반적이라고 생각합니다)
1차는 서류 (기본적으로 학생때 뭘 해봤는지.. 뭐에 관심이 있는지..)
2차는 기본적인 알고리즘
3차는 대면면접을 통해 진짜로 아는게 뭐고 해본게 뭔가, 관심있는게 뭔가..... +인성(팀워크에 중요)
이렇게 주로 보는것 같습니다.
대기업이나 대기업계열사는 여기에 학부성적도 보겟죠... (신입의경우)
중소기업이나 IT전문 대기업들 (네이버,카카오) 은 학부성적도 별로 참고 안하고
저 같은 경우도 안봅니다.
연봉이나 복지,처우는 일부 극상위 대기업빼고는 중소기업도 좋은곳 많구요...
(물론 안 좋은 환경이 더 많긴 합니다)
실제로 제 주위에서는 직장생활중 본인 노력에 따라 작은 중소기업부터 시작해서 대기업이나 글로벌회사에 가는 케이스도 왕왕있네요.... 저도 비슷..
요점 정리해보자면.
1. 하고싶은걸(목표) 생각하고.. 거기에 뭐가 필요한지 점검해보세요.
2. 언어는 1개만 깊이해도 충분하지만 다른 종류의 언어(동적언어들)도 관심은 가져보세요.
3. 관심있는 분야에 개인 프로젝트를 꾸준히 해서 관련 경험과 시야를 넓히고 포트폴리오로 활용하세요.
4. 신입에게 기본적인 알고리즘 공부는 중요합니다.
포트폴리오는 기본입니다.
그 다음은 언어로 작은 것이라도 무언가를 조금씩 만들어 보는 것입니다
학부에서 엄청 잘하는 분도 있으시겠지만, 보통 업무를 이해하고 적응할 수 있는 수준이면 됩니다.
대기업, 중소기업, 스타트업에 따라 다 요구하는 레벨이나 수준이 다르니 목표를 결정하고 잘 준비해보세요