구체적으로 하는 일
시스템소프트웨어개발자(프로그래머)는 시스템소프트웨어를 개발하는데 시스템소프트웨어는 컴퓨터를 작동하게 하거나 컴퓨터시스템의 구성요소들을 조정하고 컴퓨터하드웨어와 응용 소프트웨어 사이를 중재하는 기능을 한다. 즉 컴퓨터시스템의 일부로서 공급되는 소프트웨어이자 컴퓨터를 사용하기 위해 가장 근본적으로 필요한 소프트웨어로, 응용프로그램을 개발하거나 사용할 수 있도록 해준다. 컴퓨터의 운영체계(OS), 컴파일러, 유틸리티 등이 이에 해당한다.
특히 컴퓨터 활동을 관리하고 통제하는 시스템소프트웨어를 운영체제(OS:Operating System)라고 하는데 Window, Unix, Linux, MS-DOS, 모바일 OS(WIPI, VM 등) 등이 있다. C언어, 베이식(basic) 등의 언어번역프로그램, 백신프로그램 등의 시스템유틸리티 소프트웨어 등도 시스템소프트웨어에 포함된다. 시스템소프트웨어개발자(프로그래머)는 어떤 소프트웨어를 개발할 것인지를 기획하고 C, C++, JAVA 등을 이용한 설계 작업, 설계서를 개발언어로 바꾸는 코딩작업을 거쳐 베타버전을 만든다. 이후 베타버전을 컴퓨터시스템에 설치하여 소프트웨어의 기능이 원활하게 작동되며 보안상에 문제점이 없는지 테스트를 거친 후 완제품을 출시한다.
이 중 코딩작업은 상대적으로 경력이 낮은 프로그래머들이 하는 경우가 많으며, 베타버전을 통해 에러, 보안 등을 확인·감독하는 역할은 프로젝트매니저(PM)가 담당한다. 일반적으로 소수의 인원이 시스템소프트웨어 개발에 참여하지만, 시스템소프트웨어가 상품으로 출시되기 위해서는 응용소프트웨어개발자, 웹개발자 등의 도움이 필요하다. 시스템소프트웨어개발자(프로그래머)는 프린터 등의 장치드라이버를 개발하기도 하며 MP3, 휴대폰, 홈네크워킹 등 무선 환경에 사용되는 임베디드(내장형)시스템소프트웨어, 미들웨어, 펌웨어 등의 프로그램을 개발한다.
•미들웨어:분산컴퓨터환경에서서로다른기종간의서버와클라이언트들을연결해주는소프트 웨어로 애플리케이션을 연결해 서로 데이터를 교환할 수 있도록 도움을 주는 소프트웨어임
•펌웨어: 일반적으로 롬(ROM)에 저장된 하드웨어를 제어하는 마이크로프로그램을 의미 하며 소프트웨어와 하드웨어의 특성을 모두 가지고 있다고 할 수 있음. 기기나 장비의 성능을 향상시키거나 버그 등을 잡아내는 소프트웨어임
•임베디드시스템: 어떤 제품이나 솔루션에 내장(Embedded)되어 그 제품 안에서 특정한 작업을 수행하도록 하는 컴퓨터시스템임. 예를 들면 통신 및 미디어 제품(휴대폰, TV, 오디오, MP3, 카메라), 백색가전제품(냉장고, 밥솥, 세탁기), 자동차, 항공기, 반도체, 우주 왕복선, 원자력발전 제어장치 등과 같은 곳에서 기기를 구성하는 하드웨어와 소프트웨어를 유기적으로 구성하는 시스템임
업무환경
개발 마감일에 맞추기 위해 시간에 쫓기거나 개발 도중 문제가 발생하여 이를 해결해야 할 때 정신적 스트레스가 있을 수 있다. 클라우드를 활용하여 작업을 수행하면서 재택근무와 원격근무가 증가하는 추세에 있다.
되는 방법
전문대학 및 대학교의 컴퓨터공학과, 전산(공학)과, 전자공학과, 전기공학과, 통신공학과 등의 관련 학과에서 소프트웨어를 비롯해 컴퓨터하드웨어 전반에 대한 공부를 하고 진출할 수 있다. 요즘은 소프트웨어를 집중적으로 공부하는 학과들이 별도로 개설되어 있다. 시스템소프트웨어개발자(프로그래머)로 일하려면 개발·설계에 필요한 프로그래밍 언어뿐 아니라 각종 OS, 장비의 전자신호 등에 대한 충분한 이해가 필요하다. 따라서 관련 학과에서는 시스템소프트웨어 설계에 필요한 C언어, JAVA와 같은 프로그래밍 언어, 데이터베이스, 소프트웨어공학이론 등을 공부하며, 실제 소프트웨어 개발 실습을 하기도 한다. 또한 비전공자들은 정보통신 관련 사설교육기관이나 직업훈련학교 등에서 임베디드전문가 양성과정 등을 통해 관련 교육을 받을 수 있다.
관련 학과
- 소프트웨어공학과, 소프트웨어개발과, 컴퓨터공학과, 전산(공학)과, 전자공학과, 전기공학과, 공업교육과, 물리과학과, 수학과, 응용소프투웨어공학과, 정보통신공학과, 제어계측공학과, 통계학과 등
관련 자격
- [국내] 정보처리기사/산업기사/기능사, 컴퓨터시스템응용기술사, 전자계산기조직 응용기사, 임베디드기사(이상 한국산업인력공단)
- [국제] MCSD, MCSE(이상 마이크로소프트사), SCJP(썬마이크로시스템즈사), OCP (오라클사)
적성 및 흥미
시스템소프트웨어의 개발과 공급, 소프트웨어의 유지·보수를 담당해야 하므로 분석적인 사고와 꼼꼼하며 진취적인 성격의 사람에게 적합하다. 논리적 사고와 수리력, 전산, 기술 설계, 기술 분석 등의 능력이 요구되며, 컴퓨터와 전자공학, 통신, 공학과 기술 등의 지식을 갖춘 사람에게 적합하다. 고급기술자로 성장하기 위해서는 대인관계능력과 리더십 역시 필요하다.
경력 개발
시스템소프트웨어 개발업체, 미들웨어업체, 전산 및 통신장비업체 등에 취업한다. 특히 전산지식, 프로그래밍 능력이 많이 필요하기 때문에 정보통신 분야에서 다년간의 경험과 전문성을 갖춘 인력을 선호하며 다양한 분야의 전문가와 협업하는 쪽으로 산업 지형은 변화하고 있다.
비교적 단순작업을 수행하는 코더(Coder)로 시작하여 차츰 개발업무를 담당하게 되며, 경력이 쌓이면 단위업무의 리더인 프로젝트리더(PL, Project Leader)를 거쳐 하나의 프로젝트를 총괄하는 프로젝트매니저(PM, Project Manager)로 승진할 수 있다. 실무경력을 살려 컴퓨터시스템개발자, IT컨설턴트 등으로 옮기기도 하며, 관련 업체를 본인이 직접 창업하기도 한다.
일자리 전망
향후 10년간 시스템소프트웨어개발자(프로그래머)의 일자리는 다소 증가할 것으로 전망된다. 「2021-2031 중장기인력수급전망」(한국고용정보원, 2022)에 따르면, 시스템소프트웨어개발자 (프로그래머)는 2021년 약 112천 명에서 2031년 약 139천 명으로 향후 10년간 약 27천 명(연평균 2.2%) 증가할 것으로 전망된다.
통계청의 「전국사업체조사」 자료에 의하면, 2019년 기준으로 시스템소프트웨어개발자 (프로그래머)가 근무할 것으로 예상되는 컴퓨터 프로그래밍 서비스업 사업체는 4,355개소로 2015년 4,739개소에 비해 –8.8% 감소하였고, 관련 산업의 종사자는 2015년 34,600명에서 2019년 34,808명으로 0.6% 정도 증가한 것으로 나타났다.
추가정보
- 한국소프트웨어산업협회 (02)2188-6900 www.sw.or.kr
- 정보통신산업진흥원 (043)931-5000 www.nipa.kr
- 한국정보통신진흥협회 (02)580-0580 www.kait.or.kr
'직업정보 (Job information)' 카테고리의 다른 글
영상과 관련된 직업 | 웹 다큐멘터리 (0) | 2023.08.21 |
---|---|
[최신] 보세사 연봉 및 직업전망 그리고 시험정보 (0) | 2023.08.21 |
[최신] 파일럿(항공기조종사) 직업정보 및 되는 방법 (0) | 2023.08.19 |
[최신] 응용소프트웨어개발자 직업정보 및 되는 방법 (0) | 2023.08.19 |
[최신] 빅데이터분석가 직업정보 및 되는 방법 (0) | 2023.08.19 |