정보처리기사를 취득하게 된 계기
본인은 컴퓨터와 직접적인 연관이 없는 자연과학 계열 졸업생이다.
IT 관련 교육은 6개월 국비교육과정을 수료한 것이 전부이다.
정보처리기사를 취득하려고 한 계기는 취업 때문이였다.
원래 공기업 전기직을 준비했었기 때문에 스펙은 나쁘지 않았다. (22년 상반기 한국전력공사 기준 135점)
하지만 지원서를 넣을 때마다 가장 첫 번째 단계인 서류 전형에서부터 광탈했다.
그 이유를 분석하던 중 비전공자로서 전문성을 어필할 수 있는 무언가가 필요하다고 생각했다.
확실히 정보처리기사는 누구나 들으면 누구라도 알 만한 기업에 가기 위해서 필요한 필수 자격은 아닌 것 같다.
하지만 본인같은 비전공자들은 최소한 정보처리기사라도 가지고 있어야 서류에서 탈락하는 일이 덜할 것이라고 생각한다.
준비 기간
필기 : 2일 (02.11 ~ 02.13 / 시험 02.14)
실기 : 2달 (05.15 ~ 07.21 / 시험 07.22)
12월 국비교육 수료 후 포트폴리오를 만들기 위한 팀 프로젝트를 진행하고 있었기 때문에 필기를 준비할 시간이 없었다.
하지만 전기공사기사를 취득할 때 했던 문제은행 공부 방식을 떠올리며 필기는 2일이면 충분하다고 생각했다.
실기는 5월에 갑작스럽게 취업하게 되면서 1회 시험을 건너뛰고 2회 시험을 준비하게 되었다.
1회 시험을 건너뛰었기 때문에 전체 준비 기간이 좀 더 길어졌지만 회사를 다니면서 준비하다보니 하루하루 시간이 부족하다고 느껴졌다.
필기시험
시나공 2022 정보처리기사 필기 책 - 1회독 중 포기
CBT 기출문제 20년 1회 ~ 22년 3회(10회분) - 무한 반복 (문제 - 답만 외웠음)
필기시험은 책과 CBT 사이트에서 준비했다.
책은 국비교육 면접을 준비할 때 아주 잠깐(한 3시간 정도) 봤었던 시나공 2022년 정보처리기사 필기 책을 사용했다.
정리가 잘 되어있어 보기가 편했으며 실제 시험에 나왔던 문제를 단원별로 끝에 연습 문제로 배치해놓아서 좋았다.
(시험 전날에 연습 문제들이 실제 기출문제 였다는 것을 알았다..)
한 번 요약한 책이였지만 양이 너무 많아 하루 정도 보다가 시험 전날에는 기출문제 부분만 봤다.
언제부터인지 모르겠지만 기사 필기 시험이 CBT로 변경되었다.
시험장에서 옆에 있던 분이 전기기사 시험을 CBT로 응시했던 것을 보면 모든 필기 시험이 CBT로 바뀐게 아닌가 싶다.
CBT 시험 연습을 하기 위해 아래 CBT 기출문제 사이트에서 20년 1회차부터 22년 3회차까지 총 10회분을 계속 풀었다.
최강 자격증 기출문제 전자문제집 CBT
전자문제집, CBT, 컴씨비티, 씨비티, 기사, 산업기사, 기능사, 컴활, 컴퓨터활용능력, 1급, 2급, 워드, 정보처리, 전기, 소방, 기계, 사무자동화, 정보기기, 제과, 제빵, 한국사, 공무원, 수능, 필기,
www.comcbt.com
시험날 CBT 시험장에서 모든 답안을 선택한 후 제출을 눌렀더니 그 자리에서 바로 합/불을 알 수 있었다.
시험 결과는 72점 합격!
문제 오류로 점수가 더 오르면 올랐지 떨어지진 않을 것이라 생각해서 성적 캡쳐본은 따로 안찍었다..
실기 시험
시나공 2023 정보처리기사 실기 책 - 4회독 (기출문제만)
흥달쌤 정보처리기사 강의 - 마무리 특강 1바퀴, 프로그래밍 특강 1바퀴 (+ 기출문제 풀다가 모르는 내용 확인)
실기 시험은 책과 인터넷 강의로 준비했다.
책은 시나공 2023년 정보처리기사 실기 책을 사용했다.
필기 때 좋았던 기억 때문에 별다른 고민없이 바로 책을 구매했다.
그러나 시나공 실기 책은 필기와는 다르게 단원별로 배치한 문제가 모두 기출문제는 아니다.
기출문제 뿐만 아니라 출제 예상 문제라고 해서 출판사가 자체적으로 만든 문제도 섞여있었다.
이것은 시나공 뿐만이 아니라 다른 출판사 책들도 마찬가지일 것이다..
2019년 개정된 후 정보처리기사 실기 시험은 문제은행이 쌓이지 않도록 하기 위해 매 회차에 다른 문제가 나온다고 한다.
실기 시험에 합격하기 위해서는 정보처리기사 출제 범위를 모두 봐야하는 것이다.
가장 먼저 진짜 문제 은행식이 아닌지 확인하기 위해 시나공 책의 기출문제 부분(20년 1회 ~ 22년 3회)을 풀었다.
아는 문제가 거의 없었지만 그냥 답안지 보고 이해하면서 계속 풀었다.
1회 완독한 후 느낀 점은 다음과 같다
- 한 번 출제되었던 문제 중 다시 나오는 문제가 없지는 않다. (디자인 패턴, 개논물 등)
- SQL 문제는 반드시 다 맞춰야 한다.
- 프로그래밍 문제는 최대한 많이 맞춰야 한다.
- (추가) 내가 산 책에 없는 부분은 출제되지 않기를 기도해야 한다.
이후 혼자 공부하면 엄청 헤맬 것 같아서 N잡이라는 사이트에서 흥달쌤의 정보처리기사 실기 강의를 들었다.
한 강당 30~40분, 총 161개의 강의를 모두 볼 수는 없어서 프로그래밍 특강과 마무리 특강만 들었다.
프로그래밍 특강은 실제 출제되었던 C언어, Java, Python 코딩 문제를 해설해주는 강의이고
마무리 특강은 과목별로 설명하던 강의를 총 정리하는 강의로 핵심만 빠르게 한 번 정리하는 강의다.
마무리 특강의 PDF 자료와 프로그래밍 특강은 상당히 많은 도움이 되었다.
강의를 1.5배속으로 완강한 후 기출문제를 다시 풀면서 모르는 문제가 나오면 일단 체크해두고 넘어갔다.
문제를 다 풀고 채점이 끝나면 체크했던 부분을 마무리 특강 요약 PDF와 프로그래밍 특강에서 찾아 다시 공부했다.
시험날까지 계속 문제를 풀면서 어려웠던 문제만 다시 모아서 정리했다.
시험 결과는 61점으로 합격했다..
Q-net의 공식 자료는 아니지만 합격률이 17.9%였다고 한다.. 링크
23년 2회차 평가
비전공자 입장에서 이번 이번 시험의 각 문항을 평가해보면 다음과 같다.
1번 INSERT문 작성 [기출문제X, 쉬움]
기출문제 책에 비슷한 유형의 문제가 있었을 것이다.
INSERT, UPDATE, DELETE는 SQL의 기본적인 CRUD문으로 반드시 맞춰야 한다.
(SELECT는 옵션이 많아서 힘들 수 있다..)
2번 DROP VIEW CASCADE [기출문제X, 쉬움]
기출문제 책에 비슷한 유형의 문제가 있었을 것이다.
비슷한 문제가 없었더라도 연쇄삭제라는 문구를 통해 CASCADE를 떠올릴 수 있었을 것이다.
테이블 관련 연쇄삭제는 ON DELETE CASCADE, 뷰 관련 연쇄삭제는 CASCADE이다.
(시험장에서 생각이 안나서 테이블 연쇄삭제 ON DELETE CASCADE로 작성하고 틀림..)
3번 개념적 설계 - 논리적 설계 - 물리적 설계 [기출문제O, 쉬움]
기출문제 책에 있었던 문제이고 자주 출제되었던 문제이다.
4번 C언어 - 1부터 2023까지 숫자 중 4의 배수 구하기 [기출문제X, 쉬움]
기출문제 책에 비슷한 유형의 문제가 있었을 것이다.
코딩 문제 중 쉬운 편에 속하는 문제였다.
5번 Python 문자열 슬라이싱 [기출문제O, 보통]
기출문제 책에 비슷한 유형의 문제가 있었을 것이다.
Python의 문자열 str[start:end:step]에서 start, end, step을 생략했을 때 어떻게 동작하는지 알아야 한다.
6번 테스트 커버리지 - 분기 커버리지 [기출문제O, 쉬움]
기출문제 책에 있었던 문제이고 자주 출제되었던 문제이다.
7번 테스트 스텁, 드라이버 [기출문제O, 쉬움]
기출문제 책에 있었던 문제이고 자주 출제되었던 문제이다.
8번 JAVA - String과 new String [기출문제X, 보통]
기출문제 책에 있었는지 없었는지 모르겠다.
String을 선언할 때 new 키워드를 통한 선언과 쌍따옴표("") 선언의 차이와 equals()의 기능을 알아야 하는 문제이다.
1) 선언 방법에 따른 차이점
new 키워드를 사용하여 선언할 경우 매 선언마다 새로운 heap 메모리를 할당하여 값을 저장한다.
쌍따옴표("")로 선언할 경우 JVM이 선언한 문자열이 이미 존재하는지 Constant Pool에서 찾는다.
해당하는 문자열이 있을 경우 해당 문자열이 있는 메모리 주소를 반환하고
해당하는 문자열이 없을 경우 새로 메모리를 할당하여 해당 문자열을 저장하고 메모리 주소를 반환한다.
2) String 비교시 등호(=)와 equals() 함수의 차이
서로 다른 두 String을 등호로 비교하면 두 String의 메모리 주소를 비교하게 된다.
서로 다른 두 String을 equals()로 비교하면 두 String이 가리키는 메모리 주소에 저장된 값을 비교하게 된다.
9번 JAVA - 배열 [5, 4, 3, 2, 1]을 [4, 3, 2, 1, 5]로 변경 [기출문제X, 보통]
기출문제 책에 없었던 문제이다.
5로 나눌 때 나머지가 0인 숫자가 5임을 이용해서 풀어야 했던 문제이다.
10번 C언어 - Switch 문법 [기출문제O, 쉬움]
기출문제 책에 있었던 문제이고 자주 출제되었던 문제이다.
11번 C언어 - Stack 자료구조 [기출문제X, 어려움]
기출문제 책에 없었던 문제이다.
선입 선출의 자료구조인 Stack에서 숫자를 넣고 빼는 문제로
전위연산자와 후위연산자로 Stack에 저장된 데이터의 수를 나타내는 point를 잘 계산해야 했었다.
(본인은 계산하다가 중간에 실수해서 정답이였던 213465 뒤에 숫자를 하나 더 써서 틀렸다..)
12번 C언어 - 문자열 포인터 [기출문제X, 보통]
기출문제 책에 없었던 문제이다.
처음 보는 입력함수 gets()이 나와서 당황스러웠지만 포인터의 특징을 잘 안다면 풀 수 있는 문제였다. (본인은 틀렸다..)
첫 번째 getname() 실행에서 char n[30]에는 홍길동이 저장되며 char* n1에는 n[30]의 주소가 저장된다.
두 번째 getname() 실행에서 char n[30]에는 김철수가 저장되며 char* n2에는 n[30]의 주소가 저장된다.
세 번째 getname() 실행에서 char n[30]에는 박영희가 저장되며 char* n3에는 n[30]의 주소가 저장된다.
최종적으로 n[30]에 저장된 값은 박영희 이며 char* n1, char* n2, char* n3에는 n[30]의 주소가 저장되어 있다.
이 상태에서 n1, n2, n3를 출력하게 되면 모두 n[30]에 저장된 박영희가 출력되게 된다.
13번 C언어 - 4620원의 1000원, 500원, 100원, 10원 갯수 [기출문제X, 보통]
기출문제 책에 없었던 문제이다.
정확하게 기억나진 않지만 '코드 길이가 최소인'이라는 뉘앙스의 키워드 때문에 논란이 되었던 문제이다.
14번 C언어 - 선택 정렬 [기출문제X, 쉬움]
기출문제 책에 비슷한 유형의 문제가 있었을 것이다.
시험 중 고민했던 부분은 오름차순 정렬인가 내림차순 정렬인가 였다.
오름차순 정렬인지 내림차순 정렬인지에 따라 값의 교체(swap)이 일어나는 분기 조건이 > 또는 < 였기 때문이다.
15번 대칭키, 비대칭키 구별 [기출문제O, 쉬움]
기출문제 책에 있었던 문제이고 자주 출제되었던 문제이다.
16번 단방향 암호화에 사용되는 함수 [기출문제O, 쉬움]
기출문제 책에 있었던 문제이고 자주 출제되었던 문제이다.
17번 템퍼 프루핑 [기출문제X, 어려움]
기출문제 책에 없었던 문제이고
시나공 개념서 부분에서 디지털 저작권 관리의 기술 요소 표에 크랙 방지(Temper Resistance)라고 나왔다..
18번 디자인 패턴 - Sigleton, Visitor
기출문제 책에 있었던 문제였지만 Visitor 패턴은 처음 출제된 것 같다.
Spring Framework를 공부하고 면접을 준비했다면
Spring Container가 Singleton 패턴으로 구현되었다는 글을 많이 봤을 것이다..
19번 HDLC [기출문제X, 어려움]
기출문제 책에 없었던 문제였지만
보기를 주고 ⓐⓑⓒⓓⓔ에 적는 문제였기 때문에 어떻게 잘 찍었다면 조금이라도 점수를 건질 수 있었다.
20번 네트워크 오류 검출 방식과 오류 제어 방식 [기출문제X, 어려움]
기출문제 책에 없었던 문제였지만
보기를 주고 ⓐⓑⓒⓓⓔ에 적는 문제였기 때문에 어떻게 잘 찍었다면 조금이라도 점수를 건질 수 있었다.
'자기개발' 카테고리의 다른 글
[후기] 홍정모의 따라하며 배우는 C언어 (0) | 2024.02.06 |
---|---|
2023 SQLD 3회 합격 후기 (비전공자) (0) | 2023.09.29 |