본문 바로가기

일상

개발자하고 싶은데 어떻게 해야해요?


직업이 개발자라고 하면 이런 얘기를 많이 들을 것이다.
개발자 하고 싶은데 어떻게 해야하나요?

부트캠프랑 국비학원, 인강 등에 교육비에 지출이 많은 나로써 할말은 되게 많다.
일단, 내가 서비스 기업에 다니는 사람이 아니기 때문에 조심스럽기는 하다.

하지만 처음 개발의 영역에 들어오는 사람들에게 하고 싶은 말은 많이 있다.
그래서 이러한 글로 정리하는 시간을 가졌다.

1. 국비지원 학원



내일배움카드를 받으면 국가 기관에서 학원비를 지원해준다.
공짜로 학원을 다닐 수 있고, 용돈도 생활비로 30~40만원 정도로 카드로 돈을 넣어주어서 돈이 많이 부족하다 하는 분들께는 이방법을 택하라고 할 수 있다.


수업은 대충 이런 식으로 웹 기반의 수업들이 많습니다.
하지만 6개월안에 저 내용을 전부 배우긴 하는데 수강생들이 이해하기에는 부족한 시간입니다.
하루에 10시간이 넘게 학원에 갇혀서 수업만 듣게 됩니다.

여기 국비지원학원에 단점은 열정이 부족한 수강생들과 비 전문적인 강사님을 만날 수 도 있습니다.
처음에는 수업을 잘 듣다가 몇몇의 사람들은 수업은 듣지도 않고 딴짓하는게 뒷사람들은 보이거든요.
"나는 열심히 하면 되는거 아니야?" 라는 생각이 많을 텐데 이건 일반화의 오류입니다.
이런 전제가 주식이나 도박에도 쓰이고 있죠 ㅎㅎ

특히, 팀프로젝트를 하게 되면 어디든 취업이 목적이지 좁은 목표의식을 가지기 때문에 잘 완성될 수 가 없습니다.


내가 국비 지원 학원을 다니면서 포트폴리오로 만든 것이다.
이정도면 되는거 아니야라고 하는 사람이 있지만 혼자 로그인 부터 여기까지 만들어야 함으로 나까지 열정을 가지지 않으면 포트폴리오 조차 만들지 못할 것이다.

또한, 5개월 동안 학원에서 정해진 대로 공부하다 보니 학원안에서 잘하면 내가 개발 실력이 좋은가? 라는 착각에 빠지기 쉽다.
또, 학원에서만 있다보니 집에가면 아무것도 안하게 된다.
지금 생각해보면 학원에서는 배우고 집에서 1~2시간 정도 복습을 했더라면 이라는 아쉬움이 남긴한다.
나 또한, 학원을 다니면서 ajax를 알지도 못했으며 모든 처리를 MVC처리로 개발하였다.
에러처리? ㅎㅎ 알리가 없었다. try ~ catch 는 왜 쓰는지도 모르고 정상적인 케이스만 작동을 하니 진정 우물안의 개구리 신세였다.

내가 너무 국비학원의 욕을 하였지만, 좋은 국비학원도 굉장히 많다.


자바의 정석의 남궁성님이 진행하시는 교육같은 경우에는 경쟁률이 심한 편이지만 듣게 된다면 다른 곳보다 고퀄리티로 들을 수 있게 된다.


이건 "밑미" CTO님 조은님께서 하시는 말이 있는데, 부산과 서울은 다르다라는 것이다.
사람이 많아지면 경쟁을 하게되고 사교육들이 많이 존재해진다.
그런 점을 보면 서울에 회사들도 많고 개발자 출신 교육자들을 뽑기도 쉬워진다.
부산에도 물론 개발자들도 많지만 유명한 회사 출신 이라는건 서울이 압도적으로 많으니 이건 어쩔수없는 현실이기도 하다



국비 지원이 싫다면 국가기관에서 지원하는 교육도 찾아보는것도 좋다.


"소프트웨어 마에스토로" 나 "BEST OF THE BEST" 같은 보안 교육도 이 중 대표적인 기관이다.


2. 부트캠프

부트캠프는 사교육의 기반한 학원이 많다.

"코드스쿼드" 나 "스파트타코딩클럽", "항해99", "제로베이스" 등은 대표적인 돈이 어느정도 드는 과정이다.
교육과정은 1개월에서 1년까지 다양하게 있다.


부트캠프도 국비학원과 교육컬럼이 비슷하기도 하지만, 하나만 집중한다는 장점이 있다.
하나만 집중한다고?



왼쪽과 오른쪽 사진은 카카오 채용 사이트에서 가져온 지원자격을 캡처한 내용입니다.
왼쪽은 Java, Spring Boot 을 원하고 있고, 오른쪽은 React 즉, JavaScript를 원하는 것이다.
부트캠프는 이것을 집중하는 코스입니다.

국비지원은 이것을 전부 다 교육을 6개월만하여 시간이 많이 부족하다고 느끼는데,
부트캠프는 백엔드, 프론트엔드에 집중을 하니 더욱 그 분야에 전문성이 크다고 느낄 수 있습니다.

하지만 부트캠프에도 단점이 존재합니다.
그건 비전공자와 전공자 사이의 존재하는 "상향평중화"라는 것입니다.
잘하는 사람은 계속 성장하게 되는데 못하는 사람은 중간에 진도를 따라 잡지 못해 낙오가 되는 케이스가 많습니다.
부트캠프는 국비에서 지원이 되지 않는 것들이 많아 돈을 봐서라도 열심히 한 사람만 가게 되고 그 열정있는 사람들이 모여 주변 환경을 만들어 긍정적이 효과를 불어놓는 효과가 있습니다.

대기업에서도 진행하는 교육도 존재합니다


대표적으로 삼성 청년 SW아카데미입니다.
교육 품질이 좋고 만29세 나이 제한이 있습니다.
하지만 월 100만원 교육 지원비도 지원해줍니다
우수 수강생에게는 삼성 연구소 실습 기회까지 가지게 됩니다




대부분 스타트업이나 대형 IT기업에 가는 경우가 많이 있습니다.

돈 때문에 지원하기 좀 그렇다고 한다면 무료로 지원하는 캠프도 있다.
하지만 초반에 면접이나 테스트가 있으니 주의해 주시면 좋겠습니다.


이런 교육도 있지만 내가 신청을 하고 싶을 때 하는게 아니라 1년에 한번 열리는 기회이기 때문에 시기가 맞아야 지원이 가능하다는 단점이 존재하다


3. 인강

인강으로 취업으로 이여지는 경우도 많다.


인프런이나 패스트캠퍼스가 이중에서 대표적인 사이트이다.

여기도 돈이 들고 내가 원하는 강의 듣고 다른 강의도 들어야한다.
개발자로 하고 싶은 분에게는 뭘 들어야 내가 취업이 가능하지? 라는 의문점이 있어 완전 생 기초에게는 추천해드리지 않는다.

개인적으로 인강은 취업을 한 후, 내가 더 공부가 필요하다 라던지 내가 다른 곳으로 이직을 해야 겠다.
라고 생각이 들면 하는 것이 많다.

처음에 시작이라면 멘토가 명확하게 존재하고 자유롭게 질문이 가능한곳이 좋다.


생활 코딩이라는 무료 사이트도 존재하지만 그렇게 깊게 있는 내용은 아니라 기초적인 내용들이 많다.



총평.

개인적으로 목표를 하고자 하는 곳을 정한 후, 가고 싶은 기업을 정했으면 좋겠다.

1. SI / SM 회사


우리가 알고 있는 기업들은 전부 SI/SM 회사이다.
삼성, 현대, LG, SK 등등 생각하면 된다.

SI는 다른 회사들의 시스템을 개발하고 나오는 일이다. 기간은 3개월 ~ 1년 사이 다양하게 있으며, 다양한 경험을 할 수 있다.
SM는 SI가 만든 프로젝트를 버그가 있으면 고치고 새로운 기능이 나오면 만들면된다.

여기서 중요한 점은 단가는 "정보처리기사" 를 딴 후 몇년의 개발경력이 있는가? 라는 걸로 나뉘게 되어 처음 시작할 때는 그렇게 많이 받지는 못한다.
그리고 회사 동료들보다 프리랜서라는 사람들이 핵심인력이 되고, 파견을 나가는 일이 많다.

여기는 국비지원학원으로 가는 경우가 많다.

2. 금융권

SI / SM 에 속하지만 더 전문하게 되어 금융권 경력을 가지게 되면 여기서 쭉 이게 되는 일이 많다.


여신, 대출, 예금, 송금, 결제 등 돈과 관련된 일을 하게 되며 회사 컴퓨터에 인터넷이 안되는 일이 많다.
오픈소스? 못쓴다.. 보안이 강해 회사에서 정해진것 말고는 쓸일 없다고 보면 된다.
하지만 돈과 관련된 일이다 보니 돈을 많이 준다.
금융권이나 공공기관(보험공사, 주택공사 등등) 일할꺼면 경력을 KOSA로 등록을 꼭 해줘야 한다.


여기도 국비지원 학원으로 충분히 갈 수 있는 곳이다.


3. 게임업계


게임업계는 학원을 C, C++, C# 같은 계열 또는 유니티, 언리얼 엔진과 같은 걸로 수업을 들어야 한다.

일단 SI, 금융권은 이력서 -> 면접 순으로 다른 기업과 같지만 여기는 포트폴리오라는 것이 거의 필수이다.
그렇기 때문에 포트폴리오에 집중하는 것이 좋다.
포트폴리오를 소스나 PDF, PPT로 내는 것도 좋지만, 앱스토어나 플레이스토어에 올려 보여주는 것이 합격의 지름길이다.



4. 보안


운영체제에 대해 잘 알아야 한다.
C계열 언어를 잘 알아야 하고 모의 해킹 쪽으로 나갈 것이면 칼리리눅스나 버프스위트 툴을 알아야 하며, 네트워크도 중요시 한다.
정보보안자격증(CISSP, CISA, 정보보안기사 등) 및 사업 관리 자격증(PMP) 등 같은 것을 따면서 시작하는 것을 추천한다.

하는 일은 취약점이락고하는 것을 찾아 나쁜 목적으로 친입하는 것을 차단을 하는 일이다.
어쩔때는 웹에 대해서 어느때는 악성코드를 잡기 위해 리버싱이라는 것도 공부해야 한다.
요즘은 python으로도 많이 사용한다.


5. 스타트업


스타트업은 스크립트 기반의 언어와 신기술들이 오고 가는 기업이다.
요즘은 대기업에서 잘 하시는 분들이 퇴사하고 스타트업으로 옮겨서 CTO같은 직책을 받고 일을 하는 일이 엄청 많다.
스타트업에 가게 된다면 거래량이 많은 곳은 java같은 컴파일 언어를 써야 겠지만,
거의 React, vue.js, node.js , Ruby , php , python(Django, Flask, fast API) 스크립트 기반언어 것을 많이 쓴다.

여기서 부터 프론트엔드, 백엔드 부분으로 나뉘어 전문성이 드러나야 하는 부분이 많다.
일반적으로 서버는 IDC방식(큰 컴퓨터를 넣고 쓰는 방식) 이 아닌 클라우드 (AWS, Azure, google) 등 장소비용이나 서버 비용을 아낄려고 하고, 회사도 공용 오피스텔인 곳을 많이 사용한다.

취업을 하기 위해서는 사전과제 (웹 메인페이지 만들기) 나 코딩테스트로 들어가야한다.
또한 포트폴리오 관리로 github나 기술블로그(티스토리, velog, 미디움, 노션) 같은것을 많이 사용한다.

6. 대형 IT 기업



요즘 개발자 하면 다 여기를 생각한다.


이런 기사들 때문에 많은 오해들이 쌓이고 스타트업들도 어쩔수 없이 돈을 쓰는 추세이다.
대형 IT기업하면 연봉도 쎄고, 복지도 좋고, 재택근무 + 주 40시간을 내건곳도 많다.

SI/SM 이나 스타트업과 기술 스택은 비슷하나 리팩토링이나 클린코딩 등 코딩에 대해 정말 많이 고민한 흔적이 있어야 들어가는 곳이다.
들어가기 위해서는 코딩테스트도 열심히 해야하고 컴퓨터 관련 지식도 여쭤보기 때문에 운영체제, 자료구조 등 공부를 해야 한다.

예전에는 java로 사용을 많이 했지만 kotlin으로 전환하는 추세가 많다.