• 회원가입
  • 로그인
대학교육 멘토지원
로그인
홈 클래스 LIVE 멘토 콘텐츠
희망 직무 현직자의 취업 꿀팁 받으세요 🍯
직무 투표 시작 →
#IT개발 #스펙

방황하는 컴공 전공자, 어디서부터 능력치를 쌓아야 할까요?

안녕하세요. 지방 소재 대학교에 재학 중인 4학년 멘티입니다. 컴퓨터 공학을 전공했지만, 소프트웨어에 크게 관심이 없어서 이쪽 공부를 열심히 하지 않았습니다. 

 

하지만 졸업이 임박하고 취업 걱정이 시작되니 전공 쪽으로 취업해야 할 것 같습니다. 걱정은 앞서는데 할 줄 아는 게 없으니까요. 소프트웨어 쪽 공부를 해야 할 것 같아서 이런 질문을 드립니다. 


ⓒboyhey

 

취업 전에 많은 것을 배울 수 있을 것 같아 스타트업 인턴을 고려 중입니다. 스스로 능력치가 부족한 것 같아서요. 소프트웨어 쪽으로 입사하기 위해 어떤 분야를 깊게 공부해야 할지 여쭙고 싶습니다.

 

가장 큰 관심사는 안드로이드입니다. 이걸 하려면 자바를 많이 알아야 할 것 같은데, 자바에 관한 정보도 알려주셨으면 합니다. 그리고 웹 쪽이 매우 어려운 분야인지도 알고 싶습니다. 

 

너무 사소한 질문인 것 같아 조금 부끄럽습니다. 멘토님의 답변을 기다리겠습니다. 감사합니다. 

 

멘토의 답변


자바 언어, 안드로이드 개발 실력의 디딤돌이 되어줄 책들

안녕하세요. 취업 시기가 다가올수록 다들 고민이 많아지는 것 같습니다. 저도 그랬고요. 저도 컴퓨터공학과를 전공하며 컴퓨터 공학, 프로그래밍 공부를 해왔습니다. 군 복무를 마치고 2학년까지는 제대로 개발 공부를 하지 않다가 안드로이드 개발을 시작하면서 본격적으로 자바와 안드로이드 개발을 공부하게 됐습니다.

 

안드로이드로 시작했지만, C 언어를 기초적으로만 할 줄 아는 상태였던지라 ‘자바를 익히지 않고서는 안드로이드 앱 개발을 할 수 없겠다’는 생각에 자바도 시작했습니다. 그 후 C 언어로 하던 수업 내의 과제나 프로젝트를 가능한 자바로 작성해 배움에 탄력이 붙기도 했고요.

 

과제나 프로젝트를 통해 자바나 안드로이드를 병행해서 공부할 수 없다면 개인적으로 독학해서 공부를 할 수도 있겠죠. 하지만 학습 방향이나 무엇을 어떻게 더 익혀나가야 할지 계획 세우는 데 어려움이 있을 것 같네요. IT 학원에 등록해서 배울 수도 있겠지만 이왕이면 국비 지원 과정을 통해 비용을 덜 들이고 배우는 쪽이 더 좋겠죠?

 

ⓒunsplash


국비 지원 교육 정보센터와 같은 곳에서 지역 내의 국비 지원 교육 정보를 확인하실 수 있습니다. 다만 지역에 따라 과정이 개설되지 않았을 수도 있어요.

 

국비지원과정이나 학원을 통해 단기간에 자바나 모바일 애플리케이션(안드로이드, iOS) 개발을 배우더라도, 짧은 시간에 배우는 만큼 프로그래밍의 기초가 되는 수학이나 알고리즘, 네트워크 등에 대한 이론까지 모두 익힐 수는 없습니다. 이런 부분들은 개인적으로 꾸준히 공부할 필요가 있습니다.

 

또한 학원에서는 개인의 속도가 아니라 강의 커리큘럼에 맞춰서 교육을 진행하다 보니, 진도를 따라가기 힘들 수도 있어요. 역시 개인 시간을 투자해야 하는 건 어쩔 수 없겠지요. 시간을 들인 만큼 돌아오게 될 거예요. 저도 아직 배워야 할 것들이 수없이 많지만 공부한 만큼 알고, 활용하게 되는 것 같습니다.

 

독학으로 공부할 생각이라면 책만큼 좋은 건 없겠지요. 자바를 공부하기에 적합한 도서는 개인에 따라 다를 수 있지만 ‘자바의 신’, ‘헤드퍼스트 자바’, ‘난 정말 자바를 공부한 적이 없다구요’ 정도를 꼽을 수 있겠네요. 이 외에도 자바를 다루는 도서는 많습니다. 학교 도서관이나 서점에서 책 내용을 훑어보고 가장 잘 맞는 책을 선택해서 보면 좋을 것 같습니다.

 

ⓒunsplash


어떤 언어든 그렇겠지만, 자바 역시 언어의 문법과 객체지향 개념을 이해하고, 자바에서 제공하는 많은 기능(API라고 합니다) 이를테면 문자열 처리, 파일입출력, 통신 등을 공부하면서 더 많은 것을 만들 수 있게 된답니다. 

 

API에 익숙해지면 자바를 사용하는 다른 사람들이 만들어 놓은 것들을 사용할 수 있게 되고, 안드로이드 애플리케이션 개발을 위한 준비가 되겠지요.

 

자바 프로그래밍 언어 기본서부터 공부하고 난 후에는 안드로이드 관련 도서를 통해 안드로이드 개발을 시작하실 수 있을 거예요. 제 경우 ‘안드로이드 프로그래밍 정복’이라는 책으로 공부했는데 안드로이드의 올라간 버전에 맞춘 개정판이 발간되지 않았어요. 최근에 출간된 안드로이드 도서를 볼 것을 추천합니다. 

 

안드로이드 도서를 찾아보니 이지스퍼블리싱 출판사의 ‘Do It! 안드로이드 앱 프로그래밍’이 있네요. ‘안드로이드 프로그래밍 정복’도 최신 안드로이드 버전은 아니지만, 안드로이드 킷캣 버전에 관한 내용으로 개정이 돼 있어 볼 만할 듯 싶네요. 안드로이드 역시 직접 책을 살펴보고 가장 잘 맞는 책을 고르는 걸 추천합니다.

 

ⓒfreepik


‘자바 퍼즐러’ 책으로 재미있는 퀴즈를 풀면서 자바 기본기를 확인하는 방법도 있습니다, 기본서를 다 본 후에는 ‘이펙티브 자바’, ‘헤드퍼스트 디자인 패턴’ 등의 객체지향을 더 깊이 공부하는 책을 볼 것을 추천합니다. 이 책들은 자바 공부의 필독서입니다. 

 

안드로이드 역시 기본서 공부 이후 관심 있거나 개발하고 싶은 기능이나 분야에 따라 통신, 안드로이드 센서, 데이터베이스 등에 관한 서적으로 더 넓고 깊게 공부할 수 있습니다.

 

물론 인터넷에도 많은 자료가 있으니 인터넷 서핑이나 커뮤니티(생활코딩, OKKY 등) 등을 활용해 많은 것을 배우고 얻을 수 있습니다. 어느 정도 안드로이드 애플리케이션을 개발할 준비가 됐다면 개인적으로 앱을 개발하거나 다른 사람들과 아이디어를 구상해서 프로젝트를 진행해보는 것도 좋습니다. 

 

ⓒtommaso79

 

같은 조건이라면 프로젝트 경험이 많은 지원자가 주목받는다

안드로이드, 자바 공부의 목적이 취업이라면 공부로 키운 실력을 보여줄 방법은 아무래도 프로젝트 경력이겠지요? 스타트업이든 다른 형태의 업체든 입사 지원 시 자기소개서와 이력서를 제출하게 됩니다. 이력서에는 대외 활동이나 프로젝트 경력을 기재해야 하죠. 인사담당자나 서류를 검토하는 사람은 당연히 지원자에게 어떤 이력이 있는지 볼 테고요. 

 

신입이라도 다른 사람과 같은 조건이라면 프로젝트 경험이 더 많은 지원자를 선호합니다. 물론 프로젝트 경험이 회사에서 개발하는 내용과 관련 있다면 더 좋을 테고요. 

 

서류 통과 후 실무 면접에서 면접관은 지원자의 서류를 토대로 지원자를 파악하고, 경험이나 혹은 개발 기술 등에 관해 질문할 겁니다. 대화를 나눌 때 상대를 잘 알아야 주고받을 말이 많듯, 서류에서 제공되는 정보가 많을수록 면접관 역시 지원자에게 궁금한 것들이 많을 겁니다. 지원자는 질문에 대한 답을 통해 자신의 역량을 어필할 수 있고요. 

 

단기간에 자바, 안드로이드를 익혀서 프로젝트를 진행하기가 쉽지 않을 겁니다. 시간을 넉넉히 잡고 지금까지 하지 않았던 것을 집중해서 한다는 생각으로 계획을 세워서 진행하면 좋을 것 같네요.

 

ⓒone photo


프론트엔드, 백엔드 개발 시 사용하는 언어와 관련 지식

웹 개발은 크게 프론트엔드와 백엔드로 나뉩니다. 먼저 프론트엔드는 주로 화면과 관련된 영역으로, 웹 브라우저에서 동작하는 페이지를 작성합니다. 주로 HTML, CSS, JavaScript를 사용합니다. 

 

HTML은 웹 문서의 구조와 내용을 표현하고, CSS는 디자인 그리고 Javascript는 웹 문서를 동적으로 만들어 마우스, 키보드 등과 같은 사용자 조작에 대한 이벤트 처리, 통신, 웹 문서 내의 구성요소를 조작합니다. HTML은 집, CSS는 인테리어, Javascript는 전기와 가전제품으로 비유할 수 있겠네요.

 

앞서 거론된 프론트엔트 구현을 위한 언어도 중요하지만 프론트엔드 개발을 위해서는 수많은 브라우저와 각 버전에 대한 특성, 그리고 PC가 아닌 모바일 환경에서의 프론트엔드 등 해상도 변경에 따른 반응형 웹 구현, HTTP 프로토콜에 대한 이해 등이 필요합니다.

 

진입장벽이 낮아 처음 개발을 시작할 때는 자바, C언어 등 범용 프로그래밍 언어보다는 쉽게 익힐 수 있지만 ‘잘 만들기’ 위해서는 알아야 할 것들이 점점 많아지는 영역입니다. 

 

ⓒunsplash


백엔드 개발은 흔히 말하는 서버 개발 혹은 웹 서버 개발입니다. 백엔드 애플리케이션, 웹 애플리케이션 개발 등 다양하게 표현됩니다. 사용 언어는 자바를 비롯해서 Ruby, Python, C#, Javascript, PHP 등입니다. 

 

대부분 언어와 웹 프레임워크1)를 함께 사용해 백엔드 개발을 진행합니다. 자바의 경우 서블릿, JSP를 사용하거나, Spring MVC Framework 또는 Struts, Play Framework 등을 사용합니다. 안드로이드 개발과 마찬가지로 백엔드 개발 역시 자바 기초를 탄탄히 갖춰야 수월하게 프레임워크를 사용할 수 있습니다.

 

백엔드 개발 시 데이터베이스를 기본적으로 사용할 줄 알아야 합니다. 또한 전통적인 관계형 데이터베이스 외에도 NoSQL과 같은 데이터베이스 관련 지식이 필요하고 그 연동 방법을 알아야 합니다. 더 나아가 성능 튜닝이나 확장에 대한 지식이 필요할 수도 있습니다. 

 

ⓒkurhan


해당 분야를 다루는 담당자를 따로 두는 회사가 있을 수도 있지만, 백엔드 개발자가 모두 처리하는 회사도 있거든요. 데이터베이스 외에 통신, 외부 서비스의 Open API 사용, 인증, 보안, 메시징, 아키텍처 등 백엔드 개발자 역시 알아야 할 것들이 많네요.

 

역시 단기간에 체득하기 어려운 부분입니다. 경험과 경력을 차근차근 쌓고 부단히 공부하면서 얻게 되는 것들이겠지요. 깊게 파고 들어갈수록 어려운 것은 분명하지만 어쨌든 웹 개발 역시 넓고 방대하다고 표현할 수 있겠네요.

 

이상입니다. 답변이 도움이 되기를 바랍니다. 답변 내용 중에 설명이 더 필요한 게 있으면 언제든 질문 주세요. 

 

  

1) 프레임워크 : 소프트웨어 어플리케이션이나 솔루션의 개발을 수월하게 하기 위해 소프트웨어의 구체적 기능들에 해당하는 부분의 설계와 구현을 재사용 가능하도록 협업화된 형태로 제공하는 소프트웨어 환경을 뜻한다.


답변이 궁금한가요?
지금 무료로 확인하세요!
답변 보기
©모든 저작권은 해당 콘텐츠 제공자 또는 해당 콘텐츠 제공자와 잇다가 공동으로 보유하고 있으며, 콘텐츠의 편집 및 전송권은 잇다가 가지고 있습니다.
4
취업고민 즉문즉답 온라인 클래스 클래스 더보기
우정헌 멘토
에스엘
5.0 (7)
약 22시간 후 마감
생산/품질/제조 · 직무 특강
자동차 제조업 현직자에게 배우는 생산관리 진짜 직무 이야기

2022.6.30(목) 19:00
온라인
남양주시청
오리지널
변민수 멘토
LG전자
4.75 (4)
알림받기
서비스 기획/UI, UX · 직무 특강
[북토크] 현직자가 알려주는 UX 분야 취업 가이드 『UX 디자이너로 일하고 있습니다』

2022.7.7(목) 19:00
온라인
잇다 오리지널
정철 멘토
현대자동차
4.8 (9)
13일 후 마감
마케팅/MD · 직무 특강
대기업 현직자와 함께하는 브랜드 커뮤케이션 마케팅 직무 이야기

2022.7.12(화) 19:00
온라인
2022 동작구 노량진 청년일자리센터
WONSEO MO 멘토
쿠팡
NEW
14일 후 마감
전략/기획 · 직무 특강
데이터 분석 직무로 취업/이직을 하기 위한 방법! 알려드립니다.

2022.7.13(수) 19:00
온라인
배재대학교
이준호 멘토
(주)신세계(백화점)
4.89 (45)
15일 후 마감
회계/재무/금융 · 직무 특강
대기업 재직자에게 배우는 재무 직무와 대기업 취업 뽀개기

2022.7.14(목) 19:00
온라인
서초구청
클래스 더보기
함께 보면 좋은 콘텐츠 콘텐츠 더보기
IT개발
소프트웨어 개발자가 되는 4가지 루트!
멘토님, 안녕하세요. 소프트웨어 개발자가 되고 싶은 22살 청년입니다. IT에 관심이 생겼고 소프트웨어 개발자라는 꿈을 가지게 되었습니다. 하지만 IT 회사에 취업하기 위해서 어떻게 준비를 해야 할지, 소프트웨어 개발자가 되기 위해 어떤 자격증과 기술을 갖춰야 하는지 몰라 너무 막막합니다.
멘토
IT개발
10
약 3년 전
IT개발
준비가 덜 된 IT개발 지원, 휴학해 실력을 쌓을까요?
학교 다닐 때는 프로그래밍이 너무 어렵게 느껴져 소프트웨어 개발은 저와 맞지 않는다고 생각했지만, 지금은 개발이 좋고 열심히 하고 싶습니다. 부끄럽지만 학부 수업에서 한 프로젝트를 제외하면 당당히 말할 수 있는 프로젝트도, 인턴 경험도, 공모전 경험도, 입상 경험도 없었습니다.
홍성모 멘토
Amazon · Software Development Engineer
6
약 3년 전
IT개발
안드로이드 개발 직무, 비전공자는 어떻게 준비해야 할까요?
안드로이드 개발 직무 쪽으로 취업을 준비하고 있습니다. 비전공자이고, 4학년 때부터 자바와 안드로이드를 공부했어요. 안드로이드 개발 직무 취업을 위한 포트폴리오를 만들던 중, 여러 개발자의 포트폴리오를 봤습니다. 신입 개발자인데도 안드로이드 개발 관련 언어나 프로젝트들이 다양해 제 실력이 떨어지는 건 아닌지 걱정됩니다.
홍성모 멘토
Amazon · Software Development Engineer
8
약 3년 전
IT개발
SI업무, 어떤 프로그램 언어와 자격증이 필요할까요?
SI업체(시스템통합업체)로 취업하기를 결심했고, SI 취업을 위해 노력 중 입니다. SI 업무를 위해 어떤 언어와 어떤 자격증을 공부할지 고민이 생겨 질문드립니다. 통계, 테이터 쪽을 강점으로 잡고 포트폴리오를 만들 생각입니다. 그렇다면 분산처리시스템 언어로 많이 사용되는 java를 공부하는 게 c++보다 이득일까요?
곽동훈 멘토
Samsung SDS · ERP컨설팅
8
약 3년 전
콘텐츠 더보기

Footer

가치 있는 커리어 경험을 연결합니다.
We connect with valuable work experience.
  • 온라인 클래스
  • 실시간 클래스 후기
  • 🚀 오리지널 클래스
  • 멘토 찾기
  • 멘토 지원하기
  • 업데이트 노트
  • 자주하는 질문
  • 문의하기
  • B2B 대학교육 서비스

© 2022 잇다, Inc. All rights reserved.

회사소개 |
이용약관 |
개인정보 처리방침 |
네이버 블로그 |
브런치
대표번호: 02-2653-1022 (10:00 ~ 19:00) / 점심시간: 13:00~14:00 (주말 및 공휴일 휴무)
㈜레디앤스타트 | 사업자등록번호 : 117-81-82177 | 대표 : 조윤진 서울 종로구 종로1길 50 더케이트윈타워 B동 3층