2018년도 1회 정보처리기사 실기 독학 후기. 필기 후기는 이곳에.

솔직히 필기 시험은 이전 기출문제들만 반복하다보니 좀 만만했다. 반면에 실기 내용은 호락호락하지 않았다. 주관식과 서술형 답을 적어야 하는 것도 문제였지만 내용이 참 많다.

실기 시험 후기

큰 문제는 12문제였고, 그 하위의 소문제들이 여러 개 있는 형태가 많았다. 운 좋게도 이번 회차에서는 비교적 쉬운 업무프로세스에 무려 15점이 배점됐다. JAVA 알고리즘 문제에서는 황당하게도 빈칸이 변수를 정의하는 부분에서 나왔다. int a[] = { 1, 2, 3, 4, 5 } 부분의 1,2,3,4,5를 적는 문제.(지문에 제시되어 있었다.) 언어 별로 초기화하는 방법도 슬슬 시험에서 출제되려나보다. 전산 영어는 객체 지향에 관련된 영어 지문과 소문제 5개가 나왔다. 서술형 문제는 두문제가 나왔다. 엄청 긴 답안을 요구하진 않기 때문에 서술형에서는 부분점수가 안 나올 것 같고, 큰 문제에 딸린 하위 문제에서만 부분점수가 인정될 것으로 보인다.

공부 순서

한 방에 합격한다는 의지로 문제집 + 인터넷강의 패키지를 구매했다. 대표적인 두 곳, 시X공과 이X적 중에 고민하다가 인강을 같이 구매할 수 있어서 이X적을 선택했다. 이X적 문제집의 좋은 점은 합격을 노려 과목 분배를 잘 해두었고, 진도표도 주어서 독학 하는 데에 도움을 주었다는 점이다.



앞뒤로 기재하지 않은 날짜까지 포함하면 약 40일 정도 공부했다. 원래 이렇게 하는지는 모르겠지만, 과목은 진도표에 나와있던 대로 배점이 높고 외울 것이 적은 과목부터 보고 암기과목을 나중에 공부하는 식으로 진행했다.

알고리즘 - 데이터베이스 - 업무프로세스 - 신기술 동향 - 전산영어

나는 JAVA 언어로 코딩을 할 줄 알고, C언어는 보면 이해할 수 있을 정도의 지식을 가지고 있었다. 하지만 아예 C와 JAVA를 모르는 사람은 추가로 두 언어를 이해할 기간을 일주일 정도 더 잡아야 할 것을 추천한다. 문제집에 나오는 건 정형화된 반복문 패턴이나 배열 문제가 많았다. 그런데 최신 기출로 갈수록, 그리고 이번 1회 실기 시험에서도 함수(메소드)를 자주 사용하고, 조건문이나 변수 카운트 뿐 아니라 조금 더 생각해야 하는 답안을 요구하는 식으로 출제되고 있다. 이 부분은 정보처리기사 문제집이 아니라 코딩 입문을 한다고 생각하고, C나 JAVA 강의를 변수~조건문~반복문까지 상세히 듣는 편이 더 도움이 될 듯하다. 프로그래밍을 아예 모른다면, 추천하는 커리큘럼은 다음과 같다.

C & JAVA - 알고리즘 - 데이터베이스 - 업무프로세스 - 신기술 동향 - 전산영어

과목별 공부 방법

C & JAVA

엄밀히 과목은 아니지만, 프로그래밍 언어가 처음이라면 알고리즘 전이나 알고리즘 겉핥기를 하고 하는 게 좋을 것 같다. 시험에는 변수, 조건문(if), 반복문(for/while), 배열 부분이 출제된다. 개인적으로는 자바를 점프 투 자바 사이트나 생활코딩 사이트에서 공부했다. C언어 관련 강의는 찾아보지 않았으나 구글에 ‘c언어 if’ 처럼 심플하게 한글로 검색해도 상세한 자료가 많이 나온다. 시간적 여유가 있다면, 인터넷에서 언어에 관해 찾아본 이후에 문제집을 푸는 편이 무작정 문제 푸는 것보다는 이해하기 편할 것 같다.

알고리즘

책에서는 알고리즘과 관련된 문제가 제시되고, 그 알고리즘이 어떻게 구성되는지 줄마다 설명되어있다. 초반에는 그 모법답안 알고리즘을 보기 전에 문제만 읽고 공책에 미리 알고리즘을 내 방식대로 만든 후 답안과 비교해보는 방식으로 공부했다. 그리고 후반에는 좀 풀다보니 문제 유형별로 어떤 변수를 쓰고, 어떤 알고리즘이 만들어지는지 머릿속에 많이 들어왔다. 문제집 자체가 기출문제 기반으로 만들어진 것이라 문제패턴-변수 구성-알고리즘을 통째로 기억하면 나머지는 이해하면 되는 것이라 크게 어렵진 않았다. 실제로 이번 실기 시험도 이전 기출 그대로 출제되었다.

데이터베이스

슬슬 암기할 것이 많아져서 당황했었다. 필기와 중복되는 내용이 많긴 했지만, 갑자기 뭘 외우라고 하고, 그걸 서술하라고 하니 참 기가 막혔다. 이 때부터 미친 듯이 하루에 몇 시간이고 공책에 적기 시작했다. 알고리즘과 비슷하게 처음에는 내 나름대로 용어에 대한 정의를 내려보고, 모범 답안과 비교하며 모범 답안을 외워갔다. SQL 부분도 공책에 무한 반복 하면서 외웠다. CREATE와 SELECT 문을 우선 순위로 공부했다. 데이터베이스 구조나 트랜잭션, 병행제어 등은 서술형 문제가 나올 것 같은 부분 위주로 살펴보았다. (ex. 트랜잭션 ACID 서술, 병행제어를 안 하면 생기는 문제점 4가지 서술 등)

업무프로세스 & 신기술 동향

영단어 축약형이 나오는 시점에서 힘이 빠졌다. 영단어는 무조건 축약형이 아닌 전체 단어 구성을 함께 외웠다. 신기술 동향까지 포함하면 비슷한 다른 용어가 너무 많았기 때문이다. (BPM, BPR, ERP, ERM…) 암기 과목에 대한 노하우가 없어서 매일매일 손이 아프도록 노트에 적으면서 공부했다. 한 가지 짜증났던게, 내가 가지고 있던 이X적 문제집에서는 기초편-고급편-보안편으로 용어가 A-Z 순서로 정리돼있었다. 내용으로 분류한 게 아니고 단순 알파벳 순으로 정렬한 리스트를 매일 읽고 있으면 이해도 안 되고 짜증난다. 게다가 문제집 마지막에 인덱스 같은 것도 없어서, 기출문제 풀고 모르는 용어가 있으면 A-Z 순으로 세 파트를 다 뒤져봐야 했다.

그래서 기출을 풀면서 헷갈리는 용어들을 묶어서 따로 정리했다. 나의 경우엔 포스트잇에 정리해서 책상 앞에 붙여두었는데, 이게 많아지다 보니까 공부가 끝날 때 쯤엔 거의 핵심 요약집 수준이 되어버렸다.



나중에 시험장 가기 전에 포스트잇만 떼어서 정주행했는데, 스스로 몰랐던 것을 스스로의 방식으로 정리한 것이라 더 도움이 많이 됐던 것 같다. 헷갈리는 건 포스트잇에 적어서 붙여놓고, 다 이해한 포스트잇은 떼어냈다.

  • ITIL-ITSM-ISMS 혹은 IPS-IPSec 처럼 비슷한 단어
  • 문제집에 상세히 서술하라고 제시하는 부분 (DLP의 정의 + 4가지 기능)
  • 의미는 외웠는데, 비슷한 의미의 다른 단어와 헷갈리는 경우 (ESM-UTM 이나 Ping of Death-Smurfing)
  • 주제가 비슷한 단어들 (해커의 공격 종류 정리)
  • 영어 축약형 중에서 풀어 쓴 의미가 기억 안 나는 단어

등등 나만의 카테고리와 순서를 만들어서 외우는 것이 도움이 많이 됐다.

전산 영어

오히려 나는 전산 영어 부분이 더 쉬웠다. 그 이유는 이미 어느 정도 상식 선에서 알고 있는 개념들이 번역만 바꿔서 출제되는 것이기 때문이다. 새로 외울 것이 많다기보다는 기존 지식을 차근차근 영어로 해석하며 모범 답안 위주로 정리하면 되기에 시간을 크게 할애하지는 않았다. 일단 한글로 내용을 이해하고 있다면 관련된 단어끼리 묶어서 정리해 두면 될 듯하다.

전략 및 요약

  1. 주관식인데다가 외울게 많다. 공책에 실제 답처럼 많이 써보는 게 중요하다.

  2. 기출이 주관식으로 바뀐지 얼마 안돼서 최신 보다는 이전 기출을 많이 풀어야 할 것이다. 하지만 당연하게도 최신 기출 문제가 실제 시험과 더 비슷했다. 게다가 신기술에서는 말 그대로 족보에 없는 새로운 용어가 꽤 나와서 솔직히 득점하기 쉽지는 않다. 알고리즘과 데이터베이스 과목 만점을 목표로 전부 외우는 것을 추천한다.

  3. 인강은 추천하지 않는다. 알고리즘 부분은 그나마 볼만하겠지만, 암기해야 하는 비중이 더 크다. 아울러서 인강 보는 시간이 너무 길었다. 나의 경우 하루 할당량이 문제집 수십 페이지였는데 추가로 그 진도에 해당하는 인강이 총 8시간정도 되었다. 그런데 막상 시간에 비례할 만한 방대한 지식을 주지는 않는다.

  4. 그리고 이X적 문제집도 추천하지 않는다. 우선 틀린 부분이 너무 많다. 괄호 여닫는 것이나 오타 정도는 문제가 되지 않는다. 그런데 주요 용어가 틀렸다거나 (용어 제목에 ABC로 적어놨는데, 설명에서 ACB로 적어두는 식) 심지어 문제가 엉터리인 경우도 종종 있었다. (문제에서 입력값을 주고 출력값을 구해야하는데, 문제에 입력값이 없어서 답지를 봤더니 답지에만 있었다.) 또 인덱스가 없는데 답지에 데이터베이스, 업무프로세스, 신기술 동향 관련된 해설이 전혀 없었다. 그래서 용어에 관한 문제를 틀리면 요약정리 부분의 파트를 모두 뒤져가며 단어를 찾아야 했다.



[성실도]

성공한 것

  • 가채점 결과 가까스로 합격은 한 것으로 예상된다는 점.
  • 얼마 전 세미나 갔을 때 발표자들이 여기서 공부한 용어들을 실제로 사용하는 것을 보고, 역시 공부 해두면 도움이 되는구나 하는 것을 느꼈다. 특히 알고리즘의 정렬 등 실 업무에 도움이 되는 부분도 예상보다는 많았다.

실패한 것

  • 아까운 인터넷강의 수강료.

도달한 결론

  • 정처기는 이력서용이다, 필요없다라는 말도 종종 자주 듣지만, 공부해본 결과 비전공자 프로그래밍 입문자이고 여유 시간이 두 달 정도 있다면 추천하는 시험이다.