작년에 필기를 붙고 이어서 3회 실기를 준비했었는데, 전략을 잘못 세운 바람에 올해 실기를 다시 보게 되었다. 그때 떨어지면서 느낀거지만 작년에 개편된 정보처리기사는 실기의 경우 총 12단원으로 이 중에서 20문제를 출제하고 있기 때문에 지엽적이고 깊은 고민을 할 수 있는 문제가 출제되기 쉽지 않다는 것이다. ( 전년도 시험 분석 결과 매 회차마다 프로그래밍과 DB 쿼리문 작성 문제가 약 4~6문제가 고정적으로 출제되고 있는 것 같다. 그 중에도 Java는 최소 2문제 고정, 지엽적이고 변별력이 필요한 문제는 1~2문제 출제될까 싶다. )
이 시험을 2번 본 수험생 입장으로 말하자면 기사 실기는 100점을 맞는 것이 아니라 합격점 60점(12문제) 이상을 넘기면 되는 시험이기 때문에 저 문제를 맞추겠다고 현재 시나공, 수제비 등 수험서에 있는 넓은 범위를 전부 달달 외우는 것은 사실 효율이 떨어지는 것 같다. 또 기사 시험을 준비하는 오카방에서 서로 문답을 주고 받으면서 보안, 신기술, 약술형 등을 공부하는 것도 흔히 볼 수 있었는데, 이것은 매우 비효율적인 방법이라는 사실을 말씀드리고 싶다.
아무튼 2021년 정기 기사 1회 실기 시험은 약술형도 출제되지 않고 종합적으로 쉽게 나온 편으로 평가되고 있어서 이번 시험은 어렵지 않게 합격할 수 있었던 것 같다.
( 내가 생각하는 ) 실기 시험을 준비하기 좋은 방법
1. 프로그래밍 언어
고정적으로 많은 문제가 출제되는 프로그래밍 언어부터 잡는 것이 우선인데, 두꺼운 책을 다 보는 것은 쉽지 않으니 실기 공부 관련 카페에 있는(현재 커뮤니티가 잘 활성화 된 곳은 수제비 카페인 것 같다.) 언어 관련 소책자나 부록 등 카페에 뒤져보면 있으니 다운 받아서 그것으로 언어 공부를 짧고 굵게 학습하고 해당 카페에 있는 언어 문제들을 많이 풀어보는 것을 권장한다. 모르는 것은 커뮤니티나 검색을 통해서 배우고 확장하면 된다.
만약 프로그래밍을 처음 접하는 노베이스의 수험자라면 이 파트를 공부하는데 시간이 많이 걸리기 때문에 가장 먼저 공부하는 것이 좋지 않을까 생각한다. C, Java, 파이썬을 언제 다 할지 막막하겠지만 하나의 언어를 파면 나머지 언어들은 서로 겹치는 공통적인 부분이 상당히 많기 때문에 처음 언어를 공부할 때 보다 시간이 단축된다.
프로그래밍 문제를 풀 때, 가장 유의해야하는 부분이 개행(띄어쓰기)처리 혹은 배열의 index가 현재 정확히 어디를 가리키는지 등이 있다. 쉬운 문제라고 풀고 보면 개행을 빼먹는다던가 데이터 타입이 다르다던가 이런 사소한 실수가 발생하여 정답을 다르게 적는다면 부분점수 없이 (대부분 코드 작성이나 쿼리문 작성 문제 같은 경우 부분점수가 없음) -5점 실점 처리된다.
정처기 실기 시험은 시간이 매우 넉넉한 시험으로 문제를 꼼꼼히 다 보고 후에 점검까지 할 수 있을 만큼 시간이 남아돌기 때문에 이러한 실수를 하지 않도록 조심해야한다. 프로그래밍 공부는 그냥 예제 코드도 직접 짜보고 어떻게 해야 이게 돌아가는지 고민도 해보고 하는 등의 연습이 많이 필요하다고 밖에 말씀을 못드리겠다.
그나마 유형을 보고 접근하자면 C에서는 다양하게 구조체, 포인터, 사용자정의 함수, 버블정렬 등이 나왔었고, Java의 경우 배열, 조건/반복문, 객체지향(상속, 다형성, 오버라이딩, 재귀), 파이썬은 set과 list가 출제됐었다. 출제 가능할 가능성이 적은 Java의 컬렉션이나 제네릭, 람다/스트림 등을 준비하는 것은 시험을 전략적으로 접근하는 입장으로 볼 때, 시간 대비 효율이 떨어진다고 본다.
2. SQL
쿼리문 작성 문제로 DDL, DML, DCL 등 기본적인 작성 방법을 숙지하고 문제를 많이 풀어보면 된다. 책에 있는 연습문제와 카페에 문제가 있으니 꾸준히 풀어보면 좋다.
문제가 부족하다면 SQL 자격검정 실전문제라고 SQLD 자격증 취득하는 사람들이 문제를 많이 풀어보려고 구매하는 책인데, 앞 챕터의 쿼리 작성하는 부분이나 기본 개념만 풀어보는 것도 좋다. (풀다보면 SQLD 자격증도 같이 준비할 수 있게 된다👍)
그 다음에 응용 부분은 그룹함수, 조인.. 정도 챙기는 것을 권한다. 서브쿼리, 집계함수, 사용자 정의 등은 필요하다고 생각되면 선택사항으로 공부하면 된다. 나 같은 경우 더 풀어보고 싶어서 해커랭크(HackerRank)나 프로그래머스에 있는 SQL 문제를 풀어보면서 더 연습했던 것 같다.
3. 단답형
가장 많은 비율을 차지하는 단답형을 준비하기에는 역시 실기 개념서 회독만한 것이 없다. 회독 방법으로는 1회독에서 중요도(상)의 핵심 개념만 빠르게 보고, 2회독에서는 봤던 중요도(상)의 개념 + 중요도(중) 빈출 개념을 같이 공부하는 방법을 추천한다. 중요도(하) 개념은 시간이 정말 많이 남아돌거나, 아니면 지식의 폭을 넓히는 목적으로 보는 것을 권한다.
이렇게 회독이 끝나면 이제 문제를 풀어봐야하는데, 개념서에서는 부록으로 주어지는 전년도 기출 문제만 챙기고, 나머지는 수제비 카페에 매일 올려주는 Daily 문제와 수제비 족보를 여러 번, 꼼꼼히 보는 것을 추천한다. 거기에 있는 문제들이 개념을 복습하기에도 좋고, 시험 출제 적중률도 높은 것 같다. 전년도 기출을 보면 굵직한 것들 위주로 나오는 것들이 어느정도 정해져 있으니 한 번 시간날 때 기출 분석해보는 것도 좋다.
수제비의 경우 두음 암기라고 해서 내공외제스자, 개논물 등 이런 식으로 외우는 것이 있는데, 그렇게라도 외운다면 좋지만 저 두음 키워드들이 정확히 무엇을 의미하는지 공부할 필요가 있다. ( 두음만 달달 외우면 저 두음의 키워드가 지문으로 나왔을 때, 세부내용을 몰라서 풀지 못하는 일이 발생할 수 있다. )
4. 약술형
약술형은 달달 쓰면서 외우고 준비하는 것보다 기본 개념 중에 (예 : 스키마의 정의, 트랜잭션의 개념 등) 키워드만 떠올려서 쭉 적을 수 있을 내용 약 30개 내외로만 단답형 준비할 겸 같이 챙겨주고 나머지는 프로그래밍 언어, 쿼리, 단답 공부에 더 힘쓰는 것을 추천한다.
작년 회차에 괜히 지엽적인 약술형(예 : 사이버킬체인, 글로나스, 헝가리안 표기법 등) 에 시간투자가 분산되서 개념서 회독이나 문제 풀이하려던 계획이 잘 지켜지지 않았고 결과가 좋지 않았다. 저런 약술형을 맞추기 위해 공부하는 것은 쉽지 않으니 그냥 출제자의 의도대로 틀려주는게 정신건강이나 수험 전략 상에 이롭지 않을까 싶다🤔
요약
1. 프로그래밍 : 공통적인 부분 학습(데이터 타입과 선언 방식, 연산자, 조건/반복문, 배열 등) 후 다양한 문제풀이를 통해 모르는 개념은 그때마다 공부해서 조금씩 확장하는 방식
2. SQL : 쿼리문 작성하는 문법을 간략히 숙지 후 다양한 문제를 풀어보면서 개념을 잡아나가는 것을 추천
3. 단답형 : 개념서 빈출(상~중) 2~3회독 + 전년도 기출 + 수제비 카페 Daily 문제 And 족보
4. 약술형 : 기본 개념과 연관된 내용으로 약 30개 내외로 준비하고, 다른 부분에 학습 전념
여담
기사 시험을 공부하기 위해 검색을 하다보면 누군가 블로그에 실기 문제를 정리한 글이라던가 수제비 카페에 있는 페코페코, 의도지, 취린이폭풍 등 많은 능력자분들이 양질의 문제를 만들어 제공해주시는 것을 접하게 될텐데, 이런 문제들은 대부분 지엽적이고 개정 전 기출 내용 등도 함께 포함하고 있기 때문에 100점을 목표로 공부를 한다면, 틈틈히 봐주는 것도 좋다.
하지만 이것들은 위에서 말한 기본 개념서와 프로그래밍, 쿼리 공부가 다 기본으로 깔린 후에 남은 시간에 공부하는 것이지 저것을 메인으로 해서 달달 외우고 그것만 준비하면 시험을 말아먹을 가능성이 매우 높다. (작년 3회차 시험에서 내가 그런 식으로 말아먹었다..😓) 카페 커뮤니티나 기사 시험 준비하는 오카방에서 간혹 보면 저런 지엽적인 문제들만 가지고 깊게 공부하시는 분들이 있어서 걱정하는 마음에 말씀드린다.
21년 기사 준비하는 분들이 모두 합격해서 유의미한 기쁨을 가질 수 있기를 🙏
'Thinking > Retrospect' 카테고리의 다른 글
원티드 프리온보딩 Front-End 코스를 마치고 (0) | 2022.06.09 |
---|