【NCS기반 채용 직무 설명자료: S/W분야】

* 상기 직무는 지원자가 입사 시 수행할 대표 직무이며, 입사 후 대표 직무 외에 다른 직무도 수행할 수 있음

채용분야	연구	분류 체계	모집분야	SW
			세부모집분야	SW 안전성 검증, SW 개발, 바이너리 분석, S/W 신뢰성 검증, S/W 테스팅, S/W 공학, S/W 개발, 임베디드 시스템 분석
기관 주요사업	○ 국가보안시스템 연구개발 ○ 국가사이버안전기술 연구개발 ○ 국가보안 기반기술 연구 ○ 국가보안업무 기술지원 등
핵심책무	○ [SW 분석 및 개발] * SW 분석 및 안전성 검증 - PC 운영체제 및 응용 SW 보안위협 분석 - 임베디드 기기의 운영체제 및 펌웨어 분석 - 최신 악성코드 및 실행파일 분석 기술 개발 - 바이너리 분석 기법 연구(DBI, Symbolic execution, Fuzzing 등) * SW 개발 - 윈도우즈, 리눅스 상에서 동작하는 응용/시스템 SW 개발(C/C++, Python, JavaScript 등) - 안드로이드 시스템 응용·프레임워크 S/W 개발 - 임베디드 장치에서 동작하는 응용·시스템 SW 개발 - 네트워크 구조 및 프로토콜 분석·설계, SW 개발 - 네트워크 트래픽 분석 알고리즘 설계 및 시스템 SW 개발
	○ [SW 신뢰성 분석] * SW 신뢰성 기준 개발 - SW 신뢰성 시험검증 항목 및 평가기준 등 개발 * SW 정적·동적 신뢰성 검증 - SW 개발 단계별 결함 분석 및 신뢰성 검증기술 개발 - SW 정적·동적 신뢰성 검증기술 개발 * SW 신뢰성 검증 기술 - SW 품질검증 기술, 소스코드 메트릭 점검기술 개발 - SW 소스코드 기반 구현오류 검증기술 개발 * SW 개발 및 안전성 분석 기술 - ARM/DSP 등 임베디드 기반 SW 및 x86/x64등 윈도우/리눅스 기반 응용 SW 개발 기술(C/C++, Python, JavaScript 등) - PC 및 임베디드 기기 응용 SW 바이너리 안전성 및 신뢰성 분석 기술 개발
	○ [임베디드 시스템 분석] - 임베디드 시스템 운영체제, 펌웨어, 응용 S/W 분석 - 제어 및 통신 프로토콜 분석 - 운영체제 및 응용 S/W 보안위협 분석 - 바이너리 분석 기법 연구(DBI, Symbolic execution, Fuzzing 등) - 윈도우즈, 리눅스 상에서 동작하는 응용/시스템 S/W 개발(C/C++, Python, JavaScript 등)
직무수행내용	○ [SW 분석 및 개발] * SW 분석 및 안전성 검증 - 악성코드 및 실행파일에 대한 정적·동적 분석 - 바이너리에 대한 취약점 점검 및 익스플로잇 코드 개발 - 임베디드 기기 운영체제 및 실행 코드 분석을 통한 안전성 검증 - 취약점 점검 검증 알고리즘 연구 - SW 보안위협 분석 시스템 설계 및 SW 개발 * SW 개발 - PC, 서버, 임베디드 장치에서 동작하는 각종 SW 개발 - 안드로이드 프레임워크·리눅스 커널에 대한 분석 및 수정 개발 - 네트워크 프로토콜 분석 알고리즘 설계 및 시스템 SW 개발
	○ [SW 신뢰성 분석] * SW 신뢰성 분석 기술 개발 - SW 신뢰성 예측분석 기술 개발 - SW 신뢰성 예측분석 및 평가를 위한 신뢰도 분석모델 개발 - SW 영향성(Impact Analysis) 및 추적성(Traceability Analysis) 분석기술 개발 - 타 SW 연동 시 신뢰성 예측 및 분석기술 개발 * SW 신뢰성 시험검증 기술 개발 - SW 정적·동적 신뢰성 검증 기술 개발 - SW 품질검증 및 소스코드 메트릭 점검 기술 개발 - SW 소스코드 기반 구현오류 검증기술 개발 - SW 코드 실행률(Code Coverage) 검증기술 및 동적 코드 실행률 검증기술 개발 * SW 신뢰성 검증도구 활용 - SW 정적·동적 신뢰성 검증도구 활용 SW 신뢰성 시험검증 기술 개발 * SW 개발 및 안전성 분석 - PC, 서버 및 임베디드 기기에서 동작하는 응용 SW 설계 및 개발 - 소스코드 및 실행파일 분석을 통한 안전성 검증
	○ [임베디드 시스템 분석] - 임베디드 기기 운영체제, 펌웨어, 실행 코드 분석을 통한 취약점 분석 - 제어 및 통신 프로토콜 구조 분석 및 취약점 분석 - 코드 및 실행파일에 대한 정적·동적 분석 - 임베디드 시스템 및 통신 프로토콜 분석용 SW개발
일반요건	연령		무관
	성별		무관
교육요건	학력		석사 이상 (연구소가 인정하는 공모전·경진대회 등에서 입상자인 경우 학사 이상)
	전공		전산, 전자, 전기, 전파, 컴퓨터, 정보보호, 통신, SW공학 등 이공계열 전공 등
필요지식	○ 운영체제, 컴퓨터 구조, 데이터베이스, 네트워크 분야 ○ 보안 메커니즘, 바이너리 역공학, 펌웨어 분석, 통신 프로토콜 분석 분야 ○ S/W 공학 이론 및 S/W 공학 표준 지식 ○ S/W Verification &Validation (SDLC 기반) 관련 지식 ○ ISO-26262, MISRA-C, MISRA-C++ 및 DO-178B/C 등 S/W 코딩 규칙 및 시큐어 코딩 관련 지식 ○ 코딩 스타일, 변수 초기화, 식별자 선언, 조건식, 형 변환, 포인터․배열, 연산자 등 Major 및 Minor 코딩 결함기준 관련 지식 ○ S/W 정적 신뢰성 및 동적 신뢰성 시험검증 관련 지식 ○ 임베디드 S/W 및 응용 S/W 관련 지식 ○ 전기/전자/S/W 공학에 대한 지식
필요기술	○ 어플리케이션 및 시스템 SW 프로그래밍(C/C++/Java/Python 등) ○ x86/x64, ARM, MIPS 아키텍쳐 대상 역공학 도구를 이용한 코드 분석(IDA Pro, OllyDBG, gdb 등) ○ 관리적, 물리적, 기술적 통합차원의 복합적인 시스템 아키텍쳐 분석 능력 ○ 요구사항 분석도구(DOORS 등), ALM 도구 및 형상관리 도구 등 활용 기술 ○ 코딩규칙 검증(QAC, LDRA, CodeSonar 등) 및 실행오류 검증도구 활용 기술 ○ 단위시험 도구(VectorCAST 등) 및 통합시험 도구(LDRA TB, DT10 등) 활용 기술 ○ 임베디드 SW 개발·시험 관련 경험 및 구현 능력 ○ SW 단위시험, 통합시험 관련 설계 및 시험수행 능력 ○ SW 소스코드 분석(정적분석, 동적분석) 능력 ○ 기술적 의사소통 및 기술 문서작성 능력
직무수행태도	○ 공정성과 객관성 유지, 법적준거성 준수 여부, 최신 동향 및 기술에 대한 습득 노력 ○ 연구 결과에 대한 보안 유지, 관련부서 및 조직원 간의 원활하게 의사소통을 하려는 노력, 문제처리 절차 준수, 문제해결을 위한 긍정적 의식/ 분석적이고 창의적 사고 능력 ○ 원인 분석시 문제의 원인을 끝까지 찾아내려는 의식, 객관적인 근거자료를 바탕으로 상대방의 이해를 구하려는 태도, 작은 것도 놓치지 않는 적극적 의식, 다양한 이해관계자와의 원한한 의사소통을 하려는 의지, 창의적인 사고 노력 등
필요자격	○ 유효한 공인어학성적 제출 필수
직업기초능력	○ 의사소통능력, 대인관계능력, 조직이해능력, OA능력, 문제해결능력, 수리능력, 정보능력, 기술능력, 직업윤리
참고사이트	○ www.ncs.go.kr