직종별 SW 전문 인력
  • 김항규SW기반정책·인재연구실 선임연구원
날짜2023.07.05
조회수13514
글자크기
  • (단위 : 천 명)
    var chart_94; var chart_type_94 = "stack_column"; jQuery(document).ready(function () { {"data":{"data":[{"구분":"2019년","사업\/프로젝트관리":"12.0","컴퓨터시스템 분석가":"6.3","SW 개발자":"135.7","웹 전문가":"28.3","정보보안 전문가":"4.4","정보 시스템 운영 및 지원":"108.4","데이터 전문가":"7.3","기타":"0.8"},{"구분":"2020년","사업\/프로젝트관리":"13.3","컴퓨터시스템 분석가":"6.2","SW 개발자":"150.8","웹 전문가":"27.6","정보보안 전문가":"5.8","정보 시스템 운영 및 지원":"103.2","데이터 전문가":"7.8","기타":"0.3"},{"구분":"2021년","사업\/프로젝트관리":"15.2","컴퓨터시스템 분석가":"7","SW 개발자":"173.8","웹 전문가":"30.9","정보보안 전문가":"6","정보 시스템 운영 및 지원":"110.4","데이터 전문가":"8","기타":"0.4"},{"구분":"2022년","사업\/프로젝트관리":"16.9","컴퓨터시스템 분석가":"10","SW 개발자":"187.9","웹 전문가":"34.2","정보보안 전문가":"6.7","정보 시스템 운영 및 지원":"125.1","데이터 전문가":"10","기타":"0.2"}]},"use":{"animate":true,"aCrossLine":true,"multiYAxis":false},"animate":{"speed":100},"format":{ "yAxis": "priceDataFormat" },"func":{ "tip": function (tipElement, data, rect) { var date = data.xaxis; var tip = '
    '+ String(data.yaxisname) + ' / ' + String(data.yaxis)+'
    '; tipElement.html(tip).show(); tipElement.html(tipElement.html()).css({ left: rect.x - (tipElement.width() / 2), top: rect.y - 38 }); } }} var style = { "main": { "layout": { "paddingTop": 57, "paddingRight": 30, "color": "#ffffff", "line": { "color": "#eaeaea", "width": 1 } }, "graph": { "color": "#fff", "line": { "top": { "color": "#cccccc" }, "left": { "width": 0 }, "right": { "width": 0 }, "bottom": { "color": "#cccccc" } } }, "crossLine": { "color": "#465866" }, "xAxis": { "paddingTop": 13, "height": 30, "text": { "family": "Nanum Gothic", "size": 12, "color": "#666" }, "line": { "color": "#e3e3e3", "width": 1 } }, "yAxis": { "line": { "color": "#cccccc", "width": 1, "opacity": 1 }, "text": { "family": "Nanum Gothic", "size": 12, "color": "#666", "align": "right" }, "baseAtZero": true }, "tip": { "className": "tip" }, "series": { "s1": { "area": { "normal": { "color": "#1d64ac", "over": { "color": { "src": "/lib/webponent/chart/webPonent-Chart-2.0.6/chart/sample/chart/img/over.png" } } } } }, "s2": { "area": { "normal": { "color": "#4abfca", "over": { "color": { "src": "/lib/webponent/chart/webPonent-Chart-2.0.6/chart/sample/chart/img/over.png" } } } } }, "s3": { "area": { "normal": { "color": "#f9d33a", "over": { "color": { "src": "/lib/webponent/chart/webPonent-Chart-2.0.6/chart/sample/chart/img/over.png" } } } } }, "s4": { "area": { "normal": { "color": "#ff8e1f", "over": { "color": { "src": "/lib/webponent/chart/webPonent-Chart-2.0.6/chart/sample/chart/img/over.png" } } } } }, "s5": { "area": { "normal": { "color": "#7badff", "over": { "color": { "src": "/lib/webponent/chart/webPonent-Chart-2.0.6/chart/sample/chart/img/over.png" } } } } }, "s6": { "area": { "normal": { "color": "#6763ff", "over": { "color": { "src": "/lib/webponent/chart/webPonent-Chart-2.0.6/chart/sample/chart/img/over.png" } } } } }, "s7": { "area": { "normal": { "color": "#ff6e6e", "over": { "color": { "src": "/lib/webponent/chart/webPonent-Chart-2.0.6/chart/sample/chart/img/over.png" } } } } }, "s8": { "area": { "normal": { "color": "#c5c5c5", "over": { "color": { "src": "/lib/webponent/chart/webPonent-Chart-2.0.6/chart/sample/chart/img/over.png" } } } } }, } } }; var data_94 = data; var style_94 = style; var series_94 = series; if(color_style_94 == undefined){ var color_style_94 = []; } if(slider_94 == undefined ){ var slider_94 =true; } if (chart_type_94 == "pie") { chart_94 = webponent.visual.pie.init(jQuery('#webponent_chart_94'), style_94, data_94); jQuery("#chart_controller").remove(); } else if (chart_type_94 == "tree") { chart_94 = webponent.visual.treemap.init(jQuery('#webponent_chart_94'), style_94, data_94); jQuery("#chart_controller").remove(); } else if (chart_type_94 == "horizon") { chart_94 = webponent.visual.horizon.init(jQuery('#webponent_chart_94'), style_94, data_94); jQuery("#chart_controller").remove(); } else if (chart_type_94 == "scatter") { chart_94 = webponent.visual.scatterPlot.init(jQuery('#webponent_chart_94'), style_94, data_94); jQuery("#chart_controller").remove(); } else { if(chart_type_94 != "hloc"){ var count =0; jQuery.each(series_94.main, function (index, value) { if (index != "type") { if(chart_type_94 == "line"){ legend_count = count %5; jQuery("#chart_legends_94").append(legend_style[legend_count][0]+legend_color[count] +legend_style[legend_count][1]+ value.yaxis +'
  • '); }else if(chart_type_94 =="multi_series"){ if(value.series=="line"){ legend_count = count %5; jQuery("#chart_legends_94").append(legend_style[legend_count][0]+legend_color[count] +legend_style[legend_count][1]+ value.yaxis +''); }else{ jQuery("#chart_legends_94").append('
  • ' + value.yaxis + '
  • '); } }else{ if(color_style_94.length){ jQuery("#chart_legends_94").append('
  • ' + value.yaxis + '
  • '); }else{ jQuery("#chart_legends_94").append('
  • ' + value.yaxis + '
  • '); } } } count++; }); } chart_94= webponent.chart.init(jQuery('#webponent_chart_94'), data_94, style_94, series_94); if(slider_94){ if(chart_type_94=="line"||chart_type_94=="column"){ var tmp_x=[]; jQuery("#slider_div_94").attr("style",""); jQuery.each(data_94.data.data,function (index,value){ tmp_x.push(value[Object.keys(value)[0]]); }); jQuery("#slider-range_94").slider({ range: true, min: 0, max: tmp_x.length-1, values: [ 0, tmp_x.length-1 ], slide: function( event, ui ) { jQuery( "#slider-text_94" ).text( "범위 : " + tmp_x[ui.values[ 0 ]] + " - " + tmp_x[ui.values[ 1 ]] ); var tmp_data = JSON.parse(JSON.stringify(data_94)); //object 참조 복사 회피 tmp_data.data.data = tmp_data.data.data.splice(ui.values[ 0 ],ui.values[ 1 ]+1-ui.values[0]); chart_94.inquery( tmp_data,style_94, series_94); } }); jQuery("#slider-text_94").text( "범위 : "+tmp_x[0] + " - " + tmp_x[tmp_x.length-1]); } } } })
  • 직종별 SW 전문인력
    구분 2018년 2019년 2020년 2021년 2022년
    var table_86= jQuery("#grid_table_86"); var tmp_template_86 = jQuery("#grid_template_86").html(); if(tmp_template_86.split("/*").length>1){ tmp_template_86 =tmp_template_86.substring(13,tmp_template_86.length-7); } jQuery("#grid_template_86").html(tmp_template_86); var template_86 =jQuery("#grid_template_86"); var data_86 =[{"s0":"사업\/프로젝트관리","s1":"12.0","s2":"12.0","s3":"13.3","s4":"15.2","s5":"16.9"},{"s0":"컴퓨터시스템 분석가","s1":"4.2","s2":"6.3","s3":"6.2","s4":"7","s5":"10"},{"s0":"SW 개발자","s1":"126.7","s2":"135.7","s3":"150.8","s4":"173.8","s5":"187.9"},{"s0":"웹 전문가","s1":"24.2","s2":"28.3","s3":"27.6","s4":"30.9","s5":"34.2"},{"s0":"정보보안 전문가","s1":"5.0","s2":"4.4","s3":"5.8","s4":"6","s5":"6.7"},{"s0":"정보 시스템 운영 및 지원","s1":"107.9","s2":"108.4","s3":"103.2","s4":"110.4","s5":"125.1"},{"s0":"데이터 전문가","s1":"6.2","s2":"7.3","s3":"7.8","s4":"8","s5":"10"},{"s0":"기타","s1":"1.8","s2":"0.8","s3":"0.3**","s4":"0.4**","s5":"0.2**"}]; var grid_86; jQuery(document).ready(function () { jQuery.each(data_86 , function(idx,value){ var tmp_object = value; var objectKey = Object.keys(value); jQuery.each(objectKey,function(idx2,value2){ if(jQuery.isNumeric(value[idx2])){ tmp_object[value2]=parseFloat(value[idx2]).toLocaleString(); } }); }); if(1 == 1){ var grid_sortable = true; }else{ var grid_sortable = false; }; grid_86 = webponent.grid.init(table_86,template_86, {sortable:grid_sortable}); var collapseKeys_86 = Object.keys(data_86[0]); grid_86.event.on('dataRendered', function () { var dataList = grid_86.data; var renderingStartRowIndex = grid_86.settings.defferedRendering.renderingStartRowIndex; var renderingEndRowIndex = grid_86.settings.defferedRendering.renderingEndRowIndex; if (renderingStartRowIndex === null) { renderingStartRowIndex = 0; } if (renderingEndRowIndex === null) { renderingEndRowIndex = grid_86.data.length; } else { renderingEndRowIndex ++; } var prevTdMap = {}; var prevDataMap = {}; var prevRowspanMap = {}; for (var i = renderingStartRowIndex; i < renderingEndRowIndex; i ++) { var data = dataList[i]; _.each(collapseKeys_86 , function (collapseKey) { var row = jQuery(grid_86.rows[i]); var td = row.find('[data-name=' + collapseKey + ']'); var prevTd = prevTdMap[collapseKey]; if (!prevTd) { td.attr('rowspan', '1'); td.addClass('CI-GRID-BORDER-RIGHT'); prevTdMap[collapseKey] = td; prevDataMap[collapseKey] = data[collapseKey]; prevRowspanMap[collapseKey] = 1; } else { if (!jQuery.isNumeric(data[collapseKey])&&prevDataMap[collapseKey] === data[collapseKey]) { prevTdMap[collapseKey].attr('rowspan', prevRowspanMap[collapseKey] + 1); prevRowspanMap[collapseKey] ++; td.remove(); } else { td.attr('rowspan', '1'); td.addClass('CI-GRID-BORDER-RIGHT'); prevTdMap[collapseKey] = td; prevDataMap[collapseKey] = data[collapseKey]; prevRowspanMap[collapseKey] = 1; } } }); } }); grid_86.appendRow(data_86); grid_86.setGridHeight(325); //var header_caption_86 = grid_86.markup.main.header.table.createCaption(); //header_caption_86.innerHTML = "직종별 SW전문 인력"; //header_caption_86.className += " blind"; var header_td_86 = grid_86.markup.main.header.table; //console.log($(header_td_86).html()); $(header_td_86).find('.CI-GRID-SORTER').attr('title', '이 컬럼을 소트하려면 클릭 또는 엔터키를 눌러 주세요.\(쉬프트키를 누르면서 클릭 또는 엔터키를 눌러 주시면 멀티소팅이 됩니다.\) '); $('.CI-GRID-FOCUS-ESCAPER').remove(); });
    • 자료) 과학기술정보통신부 SW산업실태조사(2023.4)
      • 주1) 상대표준오차(RSE)의 범위가 30%~60%인 경우(*로 표시)는 주의와 함께 이용 가능한 수치이며, 60% 이상인 경우(**로 표시)는 이용에 주의가 필요
      • 주2) 한국표준직업분류(KSCO, 7차 개정)를 기준으로 분류하였으며, 일부 직종은 정책 목적에 따라 세분화 함
      • 주3) 컴퓨터시스템 분석가 : 시스템 분석 및 설계, 네트워크 아키텍트
      • 주4) SW개발자 : 시스템SW 개발, 응용SW 개발, 테스팅/품질관리
      • 주5) 웹 전문가 : 웹개발, 웹/앱 UI/UX 디자인
      • 주6) 정보 시스템 운영 및 지원 : 정보시스템 관리, 네트워크 운영지원, 웹 운영, 사용자 지원
      • 주7) 데이터 전문가 : 데이터설계 및 프로그래머, 데이터 분석가, 데이터베이스 관리