본문 바로가기

정보처리기사, 15년만에 드디어 합격. 오래 걸렸다.

728x90
반응형

이로써 정보처리 자격증 3개를 모두 취득하게 됐다. 실업계 고등학교를 다녀 본 사람이라면 알겠지만 자격증 하나만 따면 나머지 학창 시절이 편하다. 그래서 1학년 때 한 개를 따고 3학년 때 의무 검정을 통해 하나를 더 따고 졸업 전에 또 하나를 땄다. 학교에서 의무적으로 자격증 하나씩은 취득해야 한다고 해서 따게 된 것도 있고 진학을 위해 가산점 때문에 취득한 자격증도 있다. 이때까지는 그래도 어느정도 한 번 이상은 쓸모 있는 자격증이였다. 그 후에도 직장 업무와는 크게 관련이 없지만 학점은행제나 프리랜서의 스팩 때문에 취득한 것들도 있다.



나는 왜 정보처리 자격증에 꽂혔을까!

고등학생 때 나는 기계과를 전공 했다. 대학을 진학 할 때 사무자동화과, 기계과, 전산정보처리과 각각 다른 학교에 각기 다른 전공을 지원했다. 3개 학교에 모두 합격을 하긴 했다. 내가 정말 배우고 싶었던 분야는 IT였기 때문에 장학금을 주겠다던 기계과를 포기하고 턱걸이로 겨우 합격한 전산과를 택하게 됐다. 적성이 맞아 그랬는지 졸업 할 때까지 장학금도 받고 국립이여서 학비 부담이 없었다. 이 학교를 진학하기 위해 수능 준비를 병행하면서 정보처리기능사 자격증을 독학으로 취득 했던 것이다. 처음으로 내가 스스로 뭔가를 결정하고 이뤄낸 성과였기에 의미가 있다.


1998년 전역 하고 나는 수업이 끝나면 아르바이트로 학원에서 아이들을 가르쳤다. 입대하기 전 재수하면서 1년 동안 일했던 학원이였다. 입대 전 취득한 산업기사 자격증이 있었지만 졸업하기 전에 나는 정보처리기사 자격증을 취득하기로 했다. 학원에서 일했던 경력이 2년은 넘었기 때문에 당연히 경력증명이 될거로 생각했다. 시험 날짜가 기말고사와 겹쳐 시험 공부는 2주 밖에 하지 못했다. 당시에는 전문대였기 때문에 소프트웨어공학이라는 과목이 없었다. 이 과목을 빼면 학교 수업과 겹치는 부분이 많았다. 필기 합격에는 큰 어려움이 없었다. 그 때는 한창 젊기도 했다. 실기를 등록하려고 할 때 학원 경력으로는 실기 시험을 볼 수 없다는 걸 알았다. 전문대 학점으로도 등록이 되지 않았다. 억울했지만 그대로 포기하는 수 밖에 없었다.


프리랜서 생활을 오래 했다. 나태해지기 좋은 조건이다. 조금만 나를 놓아버리면 세상만사가 귀찮아진다. 그래서 나를 다스리기 위해선 긴장이 필요했다. 나에게 익숙하면서 기분좋은 긴장감은 시험지 나눠주기를 기다리는 그 짧은 순간이다.  그리고 시험을 치루는 2시간 동안은 그 어느 때보다 집중하게 된다. 나의 선택은 자격증 시험을 보는 것이다. 그렇게 자격증이 하나 둘 늘었지만 정보처리기사만 취득하지 못하고 있었다. 2009년 학점은행을 통해 학위를 취득했고 경력과 학점 모두 기사 시험을 치룰 수 있는 조건을 갖추게 됐다.


시험 볼 때의 긴장감도 수년간 반복되니 약발이 떨어진다. 2010년 처음 기사 시험을 봐야겠다 결심하고 원서를 넣고도 나는 공부를 해야 겠다는 생각을 못했다. 옛날에 한 번 어렵지 않게 필기를 합격했는데 잠깐 훑어보면 되겠지 그런 나태한 생각을 하고 있었다. 당연히 떨어졌다. 그러다 또 잊고 지내다 매년 한 번씩 시험을 치뤘다. 4번을 떨어졌다. 항상 한 두 문제로 떨어졌다. 그제서야 정신이 들었다. 시험 전날 하루 밤세워 공부하고 합격하기를 바라는 건 정말 양심 없는 짓이였다. 그리고 올해 첫회 시험을 준비 할 때는 도서관을 다녔다. 3일... 한 두 문제만 더 맞히면 되는거였다. 커트라인에서 딱 두 문제 더 맞혀서 합격했다.


다시 또 나태와 자만이 겹쳐 실기 시험을 준비하지 않고 치뤘다. 당연히 떨어졌다. 이러다 또 내년까지 시험을 보게 될 거 같아 책을 구입하고 도서관을 다녔다. 1주일... 한 문제를 더 맞춰 합격하게 됐다. 오늘 합격 문자를 받는데까지 15년이 걸렸다. 이제 정보처리 기능사, 산업기사, 기사 3관왕을 이뤘다. 정보처리 자격증은 여기서 이제 끝이다.




기는 따로 수험서를 준비하지 않고 인터넷에서 찾은 요약집과 과년도 기출문제를 출력해 그걸로 공부했다. 어차피 필기는 암기다. 필기는 사실 학교에서 배운 것이 많아 이해를 위해 시간을 따로 낼 필요가 없었다. 전공자가 아니라면 당연히 필기 수험서를 구입해 기초부터 준비하는 게 좋다. 그 두꺼운 수험서를 전공도 아닌 수험생이 모두 이해한다는 건 쉬운 일이 아니다. 수험서 한 권의 내용은 대학에서 적어도 2, 3년간 배우는 분량이다.


수험서는 일단 미뤄두고 인터넷에서 요약집을 찾아보자. 일단 요약집을 구해서 이해가 되든 안 되든 무조건 정독한다. 반복해서 정독한다. 이해 할려고 노력 할 필요도 없다. 생전 처음 보는 기호나 특수 문자들, 전문 용어들 생소하지만 그것이 익숙해 질 때까지 반복해서 읽고 또 읽는다. 집중해서 5번 정도 정독하면 한 번 봤던 단어는 그 의미를 모르더라도 한 번 봤던 단어라는 걸 기억 할 수 있다. 필자가 공부했던 요약집들과 기출문제가 컴퓨터에 저장 돼 있지만 저작권 문제로 배포는 어렵다. 그렇다고 전혀 구할 방법이 없는 건 아니다. 본인도 구글 검색으로 찾은 것들이다.

"기사필기요약정리집_-_데이터베이스

기사필기요약정리집_-_데이터통신

기사필기요약정리집_-_소프트웨어공학

기사필기요약정리집_-_운영체제

기사필기요약정리집_-_전자계산기구조"

구글에서 이런 키워드로 검색 해 보면 원하는 문서를 찾을 수 있다. 기출문제도 어렵지 않게 인터넷에서 구할 수 있다. 이렇게 구한 요약집을 5번 정도 정독 했다면 다음 수험서를 준비한다. 물론 비전공자일 때.(전공자라면 이 글을 읽고 있지 않을 것이기에 전공자의 시험 공략법은 생략) 요약집은 분량이 많지 않기 때문에 하루 한 번씩 정독해도 5일 밖에 걸리지 않는다. 필기 수험서를 준비 했다면 이젠 소설책 읽듯이 책을 넘겨본다. 책장을 넘기다 보면 요약집을 정독 했을 때 봤던 단어들이 보인다. 수험서에는 그런 핵심 단어들을 상세하게 풀어 놓기 때문에 여기서 몰랐던 부분을 보충하면 된다. 처음 보는 단어들은 암기하려고 애 쓰지 말자. 대학 전공자가 2, 3년 간 배우는 분량을 수험기간 한 두달만에 모두 이해하는 건 어차피 불가능에 가깝다.


예를 들어 요약집에서 RS플립플롭, JK플립플롭이란 단어를 봤다고 했을 때 처음 접하는 사람은 도무지 감을 잡기 어렵다. 1비트 기억 소자가 뭐지? 궁금하다고 그것에 매달려 파고들다 보면 나중에 캐시 메모리와 CPU 레지스터까지 가게 된다. 이 부분만 몇 주 공부해야 모두 이해 할 수 있다. 일단 이 단어를 다섯 번 정도 봤으면 필기 수험서에서 이 단어를 보게 되면 아마 반가운 마음이 들 것이다.

이론서에서는 T, D 플립플롭까지 설명할거고 이 플립플롭을 설명하면서 요약집과 이론서에서 겹치는 키워드는 counter 회로와 not gate일 것이다. counter회로에 대해 수험서에도 설명 돼 있겠지만 활자로 풀이 되어 있을 것이 분명하다. 그럴 땐 인터넷 검색을 해 본다. 본인도 요약집을 놓고 공부 할 때 노트북이 항상 옆에 있었다. 도서관에서도 스마트폰으로 검색을 함께 했다. 검색을 하면 이미지를 볼 수 있다. 블로거의 용어 풀이를 봐도 수험서 보다는 이해가 빠르다.

필기 수험서가 필요한 이유는 내가 요약집에서 봤던 단어들이 정말 이론서에 등장하는지 확인하는 것이다. 그런 과정을 거치다 보면 자연스럽게 익숙한 단어들이 많아진다. 인터넷 검색을 하는 이유는 이미지와 애니메이션을 이용한 친절하고 상세한 설명을 볼 수 있기 때문이다. 머리에 각인 시키기 좋다. 또 수험서는 검은색 활자가 일정한 크기로 질서 정연하게 나열 돼 있어서 책을 덮으면 이게 이거 같고 저게 저거 같다. 인터넷을 검색하면 화려하다. 내가 알고 싶은 내용을 블로거 성격마다 다르게 설명하고 있어서 기억하기 쉽다.

시험 1주일 남겨 두고는 기출문제 풀이 위주라는 건 시험 좀 치뤄 봤던 사람에게는 당연한 수순이다. 시험 유형을 파악 할 수 있고 운이 좋으면 기출문제에서 풀었던 문제가 다시 등장하는 경우도 있다.


기는 시나공 수험서를 준비했다. 현직 개발자에게는 알고리즘이 가장 쉽지만 그렇지 않은 수험생은 알고리즘이 제일 어렵다고 한다. 이건 관계 연산자, 알파벳 하나 차이가 나도 틀리기 때문에 완전히 이해를 해야 한다. 다행인 건 순서도를 채우는 방식이라 프로그래밍을 모른다 해도 문제를 풀 수 있다. 이공계 수학을 잘 아는 사람이라면 오히려 쉬울 수 있다. 교과서로 배웠던 수학 문제를 알고리즘으로 풀어내는 문제도 있고 다차원 배열의 순서를 바꿔 재배치 하는 문제도 있다. 책에서는 순서도를 회전 할 때마다 각 변수에 들어갈 값들의 변화를 차례대로 설명하고 있지만 프로그래머인 나 조차 이해 안 되는 게 있다. 문제는 내가 모르는 수학 문제가 나왔을 때 그렇다.

공약수나 소수 구하는 방법은 배운지 20년도 더 됐으니 기억이 날리 없다. 그래서 수학 공부를 하는데 더 많은 시간이 들었다.

배열 변환은 어렵게 생각하면 한 없이 어렵지만 좌표가 어떤 규칙으로 바뀌는지만 알아내면 가장 쉬운 문제다. 보통은 좌표 변수 값이 1~5를 넘지 않는다. A 배열을 B로 옮겼을 때 좌표 (x, y)가 어떻게 변하는지 규칙을 찾아야 한다. 문제를 자세히 보면 A에 있던 값을 B라는 배열로 옮겨 놓는 것처럼 보이지만 B라는 배열만 보면 문제에서 제시한 규칙에 맞게 다시 채워 나가는 것이다.

1씩 증가하는 카운트 변수가 어디에 등장하는지 찾아 본다. 보통은 I=I+1 이런 형태다. 이런 연산식이 어딘가에는 반드시 한 개 이상 등장한다. 이런 변수를 순서도 상단에서 선언하게 되는데 초기 값이 0이냐 1이냐 -1이냐인데 I가 조건문 아래서 첫 연상이 되느냐 조건문 위에서 첫 연산이 되느냐에 따라 0, 1이 달라진다. for문 처럼 반복문에서는 반복문 첫 줄에서 조건문이 실행 된다.

진수 변환은 관계 연산이 중요하다. >=, <, >, <= 이것 중에 하나인데 비교하는 변수가 왼쪽에 있는지 오른쪽에 있는지에 따라 연산자가 달라진다. 순서도가 다중 반복 문일 때 안쪽 반복문이 실행 되면서 값이 변하는 변수가 있고 변하지 않는 변수가 있다. 이 때는 변하는 변수, 즉 안쪽 반복문의 카운트 변수가 주로 오른쪽에 놓이게 된다. 정해진 규칙은 아니지만 관행 같은 것이다. 그러나 변수와 상수를 비교 할 때는 상수가 오른쪽에 놓이는 게 보통이다. < K = 0 >처럼 조건문이 있을 때 K는 변수고 0은 상수다. < Q[j, i] >= k > 이런 조건문일 때는 주로 k가 반복문 안쪽 카운트 변수다.

2진수를 10진수로 변환하는 방법이나 8진수를 16진수로 16진수를 10진수로 변환하는 방법들이 중고등학생 배웠던 방식과는 차이가 있다. 8421코드만 완전히 알아도 진수변화은 거의 가능하다. 그레이코드를 2진수로 변환하거나 2진수를 그레이코드로 변환하는 거 알고리즘 시험문제로 내기에 아주 적당하다.

알고리즘은 무한 반복이 답일 거 같다. 순서도를 한 번 돌았을 때 변수 값들이 어떻게 변하는지 추적만 잘 한다면 해법이 보인다.

변수명이 주로 SW인 스위치 변수의 활용 방법은 고난이도 문제에 주로 등장한다. 스위치 변수의 활용도 알아두는 게 좋다.


데이터베이스는 필기 시험을 공부하면서 준비 했고 역시 암기 밖에 답이 없다. 업무프로세스가 생각보다 어렵다. 점수 비중도 높은 편인데 평소에 접하기 어려운 용어들이 많이 등장한다. 본인은 기출 문제가 많은 도움이 됐다. 업무프로세스와 영어는 기출 문제와 예상 문제를 많이 풀어 봐야한다. 영어와 신기술동향은 겹치는 부분이 있다. 영어에 데이터베이스도 등장한다. 영어는 따로 준비한다기 보다 평소 실력(?)에 의존해야 한다. 이것 역시 예상문제와 기출문제를 많이 풀어 보는 수 밖에 없다.



알고리즘과 데이터베이스는 점수 비중이 제일 높다. 본인은 알고리즘에서 무조건 30점 만점을 맞기로 했다. 영어나 신기술동향, 업무 프로세스가 약했기 때문에 알고리즘과 데이터베이스에서 최대한 만회를 해야 했다. 데이터베이스도 30점 배점인데 만점을 취득하기는 어렵다. 그래서 일단 3문제 이상 맞추기로 목표를 세웠다. 알고리즘과 데이터베이스에서 45점을 확보하고 나머지 세 과목에서 15점을 얻는 전략을 짰다. 영어와 신기술동향에서 10점, 업무프로세스에서 5점 이상이 목표였다. 이런 전략에서 업무프로세스에서 목표 점수보다 1개를 더 맞춰 가까스로 합격하긴 했다. 알고리즘이 약해 한 문제 정도 틀릴 걸 각오 했다면 영어에서 만점을 기대해야 한다.

그동안 많은 자격증 시험을 봤는데 내가 내린 결론은 하나다. 문제를 많이 풀어보는 게 가장 도움이 됐다.

728x90
반응형