파편지식의 나열이 아니라, 실무지식으로 재편된 자격증
시큐어코딩 개발자 과정을 수강한 이후로 필자는 ‘정보보안 기사‘ 자격증을 ’정보처리 기사‘ 자격증 대신 취득하였다. 당시에 6개월 간의 국비교육을 연달아서 IT실무 교육과정으로 들었다. 지금으로 치면, 부트캠프 같은 코딩교육과 유사한 커리큘럼을 필자 나름 연계시켜서 신청한 셈이다. 호주 워킹홀리데이를 다녀와서, 국가에서 지원하는 천만 원 가까이 되는 돈을 두 번다 지원받으며 매달 생활비까지 지원받을 수 있었다.
첫 번째 교육과정은 ‘보안전문가 양성 코스’였는데, 오라클 DB담당을 한 필자의 그룹이 프로젝트 발표에서 최우수 영예(?)를 안게 돼서, 약간은 우쭐한 마음에 두 번째 교육과정으로 ‘시큐어코딩 개발자 과정’까지 내친김에 개발보안까지 배울 겸 신청했다.
벌써 10여 년 가까이 다 되어 가는데, 그 교육기관이 있는 한 대학교에서의 ‘시큐어코딩 개발자 과정’은 첫 번째 교육과정보다 수준이 훨씬 높았다. 비전공자이기도 했고 무엇보다 개발이라면, 고등학생 때 혼자서 방황할 때 정보처리 기능사 실기를 준비(외고에서?)하며 맛본 ‘비주얼 베이식’에서의 코딩경험밖에 없었기 때문이었다. 당시만 해도 파이썬이 지금처럼 아주 보편화된 언어가 아니라서, 그 과정에서 맛본 자바나 자바 스크립트, JSP, 스프링 프레임워크, 그리고 안드로이드 앱개발 언어는 쉽사리 적응하기 힘들었다.
그래서 자바나 스프링 프레임워크 개발에서 필요한 당시 KISA에서 제정한 소프트웨어 진단 보안 가이드라인이나 숙지하고 보안기사를 따는 방향으로 전환했다. 그해 그 교육기관에서 알선해 준 업체뿐만 아니라, 필자 스스로 서울에 두세 번 정보보안 업체에 면접을 보았으나 낙방했다. 당시에는 ‘정보보안 산업기사‘만을 보유하고 있어도, 면접을 보자는 업체가 있었다. 그래서 보안기사까지 한 번의 재도전 끝에 취득했던 거다.
하지만 그 당시 ‘정보처리‘ 기사를 쳐보지 않은 건 아니었다. 워낙 이 자격증에 대한 인지도가 나빠서(공무원 시험 가산점을 위한 비전공자를 위한 자격증), 필기 한 번을 보긴 했다. 다만, 당시에 필기 과목 중 하나인 전산계산기(?)라는 실무에서 쓸 일 없는 이론들로 한그득한 과목에서 과락했고 이후, 아예 보안기사로 올인했던 거다.
가장 최근의 정처기 기출문제 두 세트를 어제, 오늘 풀어봤는데 개발지식을 실무에서 어깨너머로 들은 적이 있는 필자 수준으로 평균 60점, 65점 합격선을 넘겼다. 즉, 공부하지 않고도 기본실력으로 턱걸이는 할 수준으로 개정되었다는 말이다. 10년 전 ‘시큐어코딩 개발자’ 과정 간에, 사실 교육 과정에 충실하기보다 그 대학교에 있는 도서관에 가서 새로 출간한 당시 프로그래밍 서적들을 훑어보는 게 낙이었다. 그때 그 교육과정 강사님이 강조한 트렌디한 용어들을 묻는 문제나, 아주 기초적인 코딩 실력만 있으면 쉽게 푸는 알고리즘이나 프로그래밍 문제들로 바뀐 지금의 필기가 실무진들의 기초소양을 테스트하는 데 적격이다.
자격증도 이렇게 바뀌어야 실무에서도 개발자나 IT직종의 기본소양을 묻는 운전면허증과 같다고 생각하는 바다. 그럼에도 불구하고 코딩실력이 있는 개발자들에게는 자격증은 아무런 의미가 없다. 하지만 AI 드리븐 시대에 개발과 제품 기획 및 설계를 동시에 개발자에게 요구하는 작금 이 자격증이 어느 정도 효용성이 있다고 생각한다.
필자도 사실 정처기를 다시 본 까닭이 이 블로그의 필자 매거진 ‘Nginx 마스터링‘의 파트 2에서 필요한 BPF PoC 개발 / 위협 모델링 구축 사이드 프로젝트를 진행하기 위해서였다. C언어에 대한 기본기가 없으니 기초부터라도 제대로 닦고 BPF 컴파일 과정을 이해할 수 있겠다는 필요성이 들었다.
더군다나, 정처기 2회 분 기출문제를 풀면서 이전에 필자에게 질의응답을 했던 영업 1인, 그리고 타 분야 엔지니어 1인에게도 정확하게 짚어주지 못한 개념들을 문제로 확인하면서 기초개념의 중요성을 더욱 느꼈다. 그때 옥신각신한 내용은 아래 2가지인데, 헷갈렸던 개념들을 확실히 해소하고자 복기해 본다(but, 기억은 필자의 주관으로 재구성된 파편).
첫 번째는 영업하시는 분이 필자의 기술 프레젠테이션 이후 던진 질문이다. “고가용성(HA)과 이중화는 다른 개념이지 않나요?” 필자는 당시, 이중화는 고가용성을 기술적으로 활용한 하위개념이라며 둘 간의 큰 차이는 없다고 두리뭉실하게 답변한 뒤 넘어갔고, 이후에 사내 메신저 단톡방에서 두 개념이 모두 실린 영문사이트를 공유해 줬다.
정보처리기사 2025년 3회 차 ‘정보처리 시스템 구축‘ 과목 90번 문제에 ‘고가용성 솔루션(HACMP)’에 대해 설명하는 문제가 출제되었다. 이 솔루션의 설명 중 하나가 고가용성 솔루션은 여러 가지 방식으로 구현되며 2개의 서버를 연결하는 것(->이중화)으로 2개의 시스템이 각각 업무를 수행(->Active-Active)하도록 구현하는 방식이 널리 사용된다고 보기에 제시된다.
두 번째는 다른 필드의 엔지니어 한 명이 필자가 당시 한 고객사의 기능 명세를 언급하면서, 고객사에서 요구한 보안과 관련된 기능은 ‘비기능’으로 분류된다고 말하니, 기능이 아니냐고 반문을 해서 필자도 다시 기능 요구사항이라며 얼렁뚱땅 넘어갔다. 정처기 2025년 2회 차 ‘소프트웨어 설계’ 과목 20번 문제에 출제된 ’비기능 요구사항’에 대한 설명으로 옳은 것을 고르는 문제에서 보안 및 접근통제를 위한 요구사항은 비기능 요구사항이라는 것을 확인할 수 있다.
생성형 모델 기반의 AI가 에이전틱 AI로 발달하여 바이브코딩이 대세인 시대다. 이를 위한 언어학, 심리학, 철학 소양이 인기 있는 학과로 취업이 잘된다는 유행성 풍문이 돈다.
하지만, 컴퓨터 이론의 기본기도 여전히 중요하다. 기초학문이나 컴퓨터공학 같은 응용학문이나 모두 서양의 ‘논리‘라는 맥이 같은 궤를 가지긴 하나, 비전공자가 컴퓨터과학의 기초개념(아니면 실무 용어의 이해)조차 없이 서로가 하는 말을 공감한다는 것은 어렵기 때문이다.
그럼에도 불구하고 팔란티어의 현재 수장인 앨릭스 카프의 이력은 참 신비롭기까지 하다(하단 링크 참조).