본문 바로가기

코딩 꿀팁

개발자라고 다 같은 개발자가 아니라고요? (개발자의 종류)

점점 더 많은 사람들이 코딩을 공부하기 시작하면서, 개발자라는 직업에도 많은 관심을 가지는 추세입니다. 하지만 개발자라고 해도 다 같은 개발자가 아니라는 사실, 알고 계셨나요? 개발자는 기본적으로 코딩을 하니까 비슷비슷하다고 생각하실 수 있겠지만, 개발자의 종류도 여러 가지가 있는데요. 개발자를 꿈꾸지만 어떤 종류가 있는지 몰라 선택을 못하고 계신 분들을 위해 준비했습니다.

개발자의 종류에는 어떤 게 있나요?

 

1. 웹 개발자

 

Photo by Charles Deluvio on Unsplash

웹 개발자는 크게 프론트엔드(Front-end) 개발자백엔드(Back-end) 개발자로 나눌 수 있습니다. 프론트엔드(Front-end) 개발자는 웹 사이트에서 사용자가 보고 상호작용하는 부분인 클라이언트, 즉 겉모습을 개발하는 일을 합니다. 주로 HTML/CSS/JavaScript 등의 언어를 사용하며, 웹 브라우저의 반응속도와 사용자에게 보이는 비주얼을 신경 쓰며 웹 서비스를 구축합니다.

백엔드 개발자(Back-end)는 사용자가 보지 못하는, 그러나 꼭 필요한 부분인 서버를 구축하는 일을 합니다. 클라이언트에서 수신된 데이터를 조작할 수 있는 알고리즘 및 비즈니스 로직을 개발합니다. 웹 개발자는 IT 분야에서 응용 범위가 넓고, 진입 장벽이 대체로 낮은 편입니다. 비전공자 출신이 개발 분야에 진출했을 때 제일 많이 선택하는 진로 중 하나입니다.

 

 

2. SI/SM 등의 전산시스템 개발자

 

국내에서 가장 많은 인력의 개발자가 종사하고 있는 분야입니다. SI(System Integration) 개발자는 기업이나 공공기관의 전산 시스템을 개발하고 구축하는 일을 합니다. 보통 전산 시스템은 클라이언트와 서버로 구성되어 있는데요. 클라이언트는 C, 자바, C#, 웹(HTML/JS) 등으로 구현하며, 서버는 C, 자바, PHP(웹) 등으로 구현합니다. SM(System Management) 개발자는 SI 분야의 개발자들이 개발한 시스템을 운영 혹은 유지, 보수하는 작업을 담당합니다. 고객사의 요청에 피드백하는 업무를 주로 하기 때문에 사람을 많이 상대하는 업무라고 볼 수 있습니다.

 

3. 모바일 애플리케이션 개발자

 

Photo by Onur Binay on Unsplash

모바일 애플리케이션 개발자는 복합적인 성격을 지니고 있는데요. 모바일 게임을 개발한다면 게임 프로그래머일 수도 있고, 금융권이나 공공기관의 앱을 개발한다면 SI/SM 개발자로 분류될 수 있습니다. 웹 개발 다음으로 특정 분야를 제외하고는 진입 장벽이 낮은 편입니다. 특히 모바일 앱 개발은 취미로 개발하더라도 많은 수입을 올릴 수도 있다는 장점이 있기 때문에 많은 사람들이 도전해보는 분야이기도 하지요.

 

 

4. 게임 개발자

 

출처 : 리그 오브 레전드 공식 홈페이지

최근에는 PC 게임에서 모바일 게임으로 전환이 많이 되면서 모바일 환경의 게임 개발자가 비중이 높아지고 있다고 추정됩니다. 게임 개발은 많은 기능이 구현되어야 하기 때문에 진입 장벽이 솔직히 꽤 높은 편입니다. 크게 게임 개발자는 게이밍 플레이(Gaming Play) 개발자게이밍 엔진(Gaming Engine) 개발자로 나눌 수 있는데요. 게이밍 플레이 개발자는 우리가 흔히 아는 오버워치나 리그 오브 레전드 등 게임 내 캐릭터의 움직임 하나하나, 환경 하나하나를 구현합니다. 최대한 자연스럽게 구현해야 하므로 굉장히 까다롭고 시간도 그만큼 많이 들여야 합니다. 게이밍 엔진 개발자는 게임이 잘 돌아가게끔 하는 일을 합니다. 게임 전체를 돌아가게 하는 유니티 같은 게임 엔진을 개발하죠. 게임 개발자를 꿈꾸신다면 윈도 기반의 MFC나 Android 기반의 자바, iOS 기반의 Object-C 등을 익히시면 됩니다.

 

 

5. 데이터 사이언티스트

 

Photo by Myriam Jessier on Unsplash

데이터 사이언티스트는 요즘 뜨고 있는 직업 중 하나죠. 빅데이터와 머신러닝 분야가 떠오르면서 데이터 관리, 데이터 수집 능력이 중요해졌습니다. 데이터 사이언티스트는 데이터를 관리하는 일을 한다고 보시면 되겠습니다. 이걸 직업으로 삼으려면 꼭 박사학위까지 따야만 한다고 생각하시는 분들이 많은데, 일의 범위가 넓기 때문에 꼭 대학원에 진학하지 않으셔도 관련 지식과 스킬을 연마하면 충분히 도전하실 수 있습니다.

 

6. 알고리즘 개발자

 

유튜브 댓글을 보시면 ‘오늘도 알 수 없는 알고리즘이 날 여기로 데려왔다.’라는 류의 댓글을 보신 적 있으시죠? 알고리즘 개발자들이 바로 여러분을 이끈 거라고 할 수 있겠습니다! 사용자에게 최적화된 영상을 추천해 주는 로직을 짠다든지, 구글맵이나 카카오맵처럼 지도 앱에서 사용자에게 가장 최적화된 루트를 추천해 주는 로직을 짜는 등의 업무를 합니다. 혹은 알고리즘을 관리하는 일도 합니다. 특히 요즘 핫한 딥러닝, 머신러닝, AI 분야에서 알고리즘을 많이 사용하기 때문에 인공지능 분야에 관심이 있다면 눈여겨볼 만한 직업이겠죠?

이외에도 자율주행차, 로봇, IoT 내 소프트웨어를 개발하는 임베디드/펌웨어 개발자, 운영체제를 개발하는 OS/Linux 개발자, 자바나 파이썬 등의 코딩 언어를 개발하거나 읽어들이는 일을 하는 코딩 언어/컴파일러(Compiler) 개발자 등이 있습니다.

(컴파일러는 특정 프로그래밍 언어로 쓰여 있는 문서를 다른 프로그래밍 언어로 옮기는 언어 번역 프로그램을 말합니다.)

 


 

이렇게 개발자의 다양한 종류에 대해서 알아보았는데요.

생각보다 종류가 다양하죠? 여러분이 꿈꾸는 개발자는 어떤 개발자인가요? 혹은 어떤 개발자에 관심이 생겼나요?

스파르타코딩클럽에서는 여러분이 코딩으로 꿈을 펼치실 수 있도록 다양한 강의가 준비되어 있답니다.

👇👇여러분이 관심 있는 분야의 강의를 한번 살펴보세요!👇👇

 

스파르타코딩클럽

5주 완성! 코딩을 전혀 모르는 비개발자 대상의 강의

spartacodingclub.kr