상세 컨텐츠

본문 제목

개발자라고 다 같은 개발자가 아니다??개발자는 어떤 종류가 있을까?(프론트엔드,백엔드,풀스택,앱,임베디드)

노베이스도 이해하는 공학이야기

by Tabris4547 2023. 5. 22. 18:32

본문

728x90

요즘에 선망받는 직업 중에 하나로

개발자를 많이 거론합니다.

세월이 지나갈수록 전자시스템이 적용되면서

컴퓨터를 다룰 수 있는 개발자들의 수요가 높아집니다.

특히나 알파고, Chat GPT등

SW적으로 빅 이슈가 있으면

그 해에 컴퓨터공학과 입결 컷이 높아집니다.

요즘에는 컴퓨터공학이나 전자공학 이외에

인문계 출신 등 다양한 분야의 사람들이

개발자로 일하는 경우가 많습니다.

유튜브로 종종 광고를 보면

"코딩의 코짜도 모르는 내가, 개발자로 취업했다"

라는 교육강좌들도 종종 보입니다.

그럼 이런 생각이 들 수 있습니다.

"그럼 컴퓨터공학을 졸업해서 개발자가 될 이유가 없는거 아니야?

4년동안 공부해서 개발자가 될 바에

저런 교육 6개월짜리 들어서 개발자가 되는 게 더 가성비있는거 아니야?"

이런 오해는 "개발자"마다 어떤 특성이 있는지 모르기 때문이라고 생각했습니다.

그래서 오늘은 개발자의 종류와

각각의 개발자가 되기위해서는 뭘 공부해야하는지 보겠습니다.

 

프론트엔드 개발자(웹 개발)

가장 먼저, 웹 개발.

그 중에서 프런트엔드 개발자가 있습니다.

이 사람들은 사람들이 웹페이지에서 보이는

Client단의 코드를 짜는 사람들입니다.

홈페이지 화면을 보기좋게 띄워주기

개인정보 조회해주기

사용자가 원하는 정보 서버단으로 넘기기 등등

사용자가 직접적으로 하거나 보는 행동에 대한 요청을 받습니다.

 

비전공자를 위한 개발교육 대다수가 프런트엔드인 경우가 많습니다.

그 이유는 상대적으로 "필요지식이 적기 때문"

타 영역 대비 필수지식량이 적고

이미지에 대한 부분은 Tool을 활용하면 되기 때문에

개발하는 난이도도 상대적으로 쉬운 편입니다.

대신, "재능"의 영역이 큽니다.

디자인과도 이어지는 부분이 많아, 

깔끔하게 웹페이지를 기획하고 정리하는 재능이 필요합니다.

 

백엔드개발자(웹개발)

개발자의 대부분을 차지하는

백엔드 개발자입니다.

아까 보신 프런트엔드가 client를 다룬다면

백엔드는 server를 다룹니다.

쉽게 말해, 우리가 웹서비스를 사용할 때

보여지지않는 부분을 관리하는 사람들입니다.

대한민국 롤 동시 접속자가 2만명이 된다고 가정할 때

해당 게임을 활용하는 2만명이

끊김없이 게임을 하게 만들어줍니다.

또 해커가 개인정보를 빼돌리지 못하도록

정보보안에도 열을 내고 있습니다.

 

컴퓨터공학을 전공한 대부분의 사람들이 백엔드쪽 개발을 맡고 있습니다.

해당 영역의 수요가 많아 취업에 매우 유리합니다.

당장 웹 서비스 관리만 해도 필요한 곳이 많으니까요.

최근에는 가상화폐 거래소가 많이 생겨나면서

웹개발자 수요가 늘어 대우도 엄청 좋아졌습니다.

특히나 컴퓨터공학 전공에서 배우는 지식을 활용할 일이 제법 많고

(DB,정보보안,알고리즘 등등)

진입장벽도 타 분야대비 낮은 편이라

전공자들은 프런트엔드보다는 이쪽을 더 선호하는 경향이 많습니다.

 

풀스택 개발자(웹)

다음은 프런트엔드,백엔드 개발을 동시에 할 수 있는

풀스택 개발자입니다.

혼자서 양쪽 영역을 모두 다룰 수 있는 개발자로

양쪽의 문제 모두를 해결할 수 있습니다.

프런트-백엔드 개발자 중

각자의 영역 지식 외에는 잘 모르는 경우도 적지 않습니다.

그래서 서로의 협업을 원할하게 할 수 있도록

양쪽 모두를 이해하는 풀스택을 점차 선호하게 되었습니다.

 

다룰 수 있는 영역이 많은만큼

범용성이 높은 개발자입니다.

이것저것 다 할 수 있기 때문에

다재다능합니다.

문제해결에 대한 아이디어도 좋습니다.

서로 각각의 문제만을 바라볼 때

"프런트랑 백인드 각각에서 서로 어떻게 안 맞은거지?"

라는 사고를 가질 수 있죠.

그리고 모두 다 할 수 있기 때문에

개인이 웹서비스를 홀로 구현할 수 있습니다.

하지만 "두 영역 다 할 줄 압니다"라는 말이

"두 영역 애매하게 할 줄 안다"가 되는 경우도 많습니다.

이런 부분 때문에

풀스택 개발에 대한 부정적인 시각도 존재하며

어떤 사람들은 "웹개발 초반에는 풀스택으로 접근하되, 나중에 한 분야를 전문적으로 하자"

라고 주장하시기도 합니다.

 

https://yozm.wishket.com/magazine/detail/1265/

 

풀스택 개발자에 대해서 어떻게 생각하나요? | 요즘IT

이번에는 풀스택 개발자에 대해 한번 얘기를 해보려고 합니다. 명확한 실체 없이 떠도는 용어인 만큼 저마다의 해석이 다릅니다. 그러다 보니 상당히 많이 변질된 용어이기도하고 사람들이 환

yozm.wishket.com

풀스택 개발자에 대해서는 

해당 글을 더 참고해보시면 좋을 거 같습니다.

 

앱 개발자(모바일)

개발자들의 로망이라고 볼 수 있는 앱 개발자입니다.

종종 이런 글들을 보셨을 겁니다.

"퇴사하고 앱 개발로 몇 억 벌어"

 

모바일은 개발환경에 따라 

안드로이드,IOS로 나눠집니다.

개발환경에 따라 사용하는 언어랑 툴이 달라집니다.

모바일을 다룬다면 웹으로 치면

풀스택개발을 하듯이

UI/UX부터 서버까지 구현하는 경우가 많습니다.

그리고 앱 성격에 따라 다르겠지만

음성처리,영상인식 등등

전자공학 지식을 활용해야할 수도 있습니다.

 

앱개발은 만들고자하는 앱에 따라서

수준이 천차만별로 갈립니다.

또한 앱 자체의 아이디어를 기획하는 게 중요해서

재능+실력을 모두 겸비해야하는 영역입니다.

이런 로망이 있는 분야이지만

상대적으로 알아야할 지식이 많은데 비해

대우가 좋지 못한 편이라

개발자 비중이 웹보다는 적습니다.

 

임베디드개발자

마지막은 HW영역까지 다루는 임베디드개발자입니다.

쉽게 설명하자면 IoT분야,로봇제어 등을 다루는 개발자입니다.

반도체칩이나 작은 기기를 구동시키는 sw를 개발하며

제품의 HW스펙을 분석하며 코드를 작성합니다.

 

컴퓨터공학보다는 전자공학전공자 비율이 많습니다.

전자공학에서 반도체,회로 등에 대해서 많이 배우기 때문입니다.

(컴퓨터공학 커리에도 있긴하지만

과목 인기가 적은 경우가 많음)

전자공학의 지식들을 알아야 편한 경우가 많아

진입장벽이 타 개발분야 대비 높습니다.

프로그램이 안 돌아갈 경우, HW문제까지 살펴야하기 때문에

개발난이도가 높은 편입니다.

 

"알아야할 거 많으니깐 대우도 엄청 좋겠네요?"

하지만 현실적으로 그러지 못합니다.

분명히 필요한 분야이고 IoT관련이니깐 유망할 거 같지만

현실적인 대우가 안 좋습니다.

 

해당 영상을 보면

임베디드가 왜 현실적으로 암울한지 느낄 수 있습니다.

썸네일부터 "망한다고?!"라고 말할 정도로

인식이 좋지 않습니다.

(심지어 영상 제작자도 임베디드 개발자)

 

 

결국 본인 성향이 중요하다

 

"개발자"가 된다고 했을 때

본인의 지식적 베이스+성향에 따라

맞는 분야가 다 다를겁니다.

여러분들이 "개발자가 되고 싶다"라고 생각했으면

개발자가 어떤 종류가 있는지 머릿속으로 그려보고

그 중에 자기랑 어떤 게 가장 맞는지 생각하면

진로에 도움이 될 것입니다.

728x90

관련글 더보기

댓글 영역