2~3년차 비전공자 개발자들의 조언을 찾아보면, 그쯤 되어 컴공 기초의 필요성을 느껴서 공부하게 된다는 얘기가 많다. 그래서 정보처리기사 공부를 하면서 겸사겸사 컴공 기초 공부를 하기로 목표를 잡았다. 솔직히 따로 하려고 하면 의지력을 너무나도 많이 끌어내야 할 것 같은 공부라서 정처기 시험에 아주 감사했다.
정처기 시험에서 다루는 것
새로 개편된 정처기 시험에서 주요하게 다루는 것은 소프트웨어의 개발 단계(계획부터 유지보수까지)이다. 그 과정에서 필요한 개발 방법론, DB, SQL, 자료구조, 알고리즘, 테스트 방법론, 프로그래밍 언어, 운영체제, 네트워크, 보안 등을 배우게 된다. 책 커리어 스킬에서 제시하는 기본적으로 필요한 지식의 거의 대부분을 담고있기에 컴공 기초 공부로 딱이었다.
1. 기초 다지기
정처기 공부 시작 전에 궁금함 해소를 위해 얄팍한 코딩사전님의 책인 ‘혼자 공부하는 얄팍한 코딩지식’을 보았고 이게 정말 많은 도움이 되었다. 궁금한 용어들을 딱 알아들을 수 있는 수준에서 아주 가볍게 다뤄주기에 부담이 없다. 그렇게 용어들과 어느정도 친해지고 시작해서 다행이라고 생각한다.
또 무조건 추천하고 싶은 유튜브의 크래쉬 코스. 역사적으로 지금까지 어떻게 이런 기술이 생기고 변화해왔는지 흐름을 볼 수 있다. 시각적으로 잘 정리해놓았기 때문에 이해가 정말 잘 된다. 옛날 옛적 기능사 딸 때 무작정 외웠던 것들이 왜 그렇게 된 건지 드디어 이해할 수 있게 되었다! (솔직히 덮어놓고 최초의 컴퓨터! 에니악! 에드박! 특징 뭐뭐! 아무튼 외워라! 이런 식으로 덮어놓고 외우게만 하는 교육 방식 너무 재미없다. 크래쉬코스처럼 역사적 배경을 얘기해주면 딱히 외우려고 하지 않아도 저절로 외워지는데.) 아무튼 그렇게 컴퓨터를 조금이나마 더 이해하게 된 것 같은 감각과, 현대의 컴퓨터 기술을 누릴 수 있음에 무한한 감사의 마음을 갖게 되었다. (그 뒤로 내 감사일기에 빠지지 않는 컴퓨터 기술을 발전시켜온 사람들)
그리고! 빼 놓을 수 없는 하버드 컴공 강의 CS50. 처음 개발을 접하려고 한다면 무조건 추천한다. 왜냐하면 스크래치에 대해 다루는 게 진짜 재밌었거든.. 그러고나서 C언어도 직접 샌드박스에서 실행할 수 있도록 해주니까 정말정말 좋다. 교수님도 열정이 넘치셔서 보고있으면 기분이 좋아진다. 심지어 영어라서 영어 공부까지 동시에 가능! 이런 강의를 그냥 집에서 들을 수 있다니 우리는 행운아다. (현대 과학기술에 대한 무한한 감사와 존경심이 또 솟아난다)
2. 각 과목별로 선행&병행한 학습
1과목 소프트웨어 설계
- 객체지향의 개념에 대해서 미리 알고 있으면 편할 것 같다. 처음 들었을 때 그냥 넘겼던 부분이 나중에 JAVA를 하고 나서 이해되었다.
2과목 소프트웨어 개발 - 자료구조와 알고리즘
- ‘그림으로 배우는 알고리즘 Basic’ 책과 ‘알고리즘 도감’ 책&앱을 적극적으로 활용했다.
- 특히 📔'그림으로 배우는 알고리즘 Basic’은 알고리즘이라는 게 대체 뭐하는데 필요한 건지부터 알고 싶었던 나에게 딱 맞는 입문서였다.
- 📔‘처음 만나는 알고리즘’의 2챕터 변수배열까지도 입문에 도움이 되었다.
3과목 데이터베이스 구축 - SQL
- 칸아카데미 SQL 실습 강의를 활용했다. 실제로 DB를 만들고 편집해보고 싶어서 온라인 SQL 에디터 없나 하고 검색했다가 운좋게 강의가 걸렸다! 역시 뭐든지 직접 만들어보고 결과를 봐야 체득이 된다.
4과목 프로그래밍 언어 활용
- 프로그래밍 언어
- 프로그래밍 언어는 시작할 때부터&꾸준히가 답이라는 흥달쌤의 가르침에 따라 정처기 공부 시작과 함께 깨알 C언어 강의를 하루 2~3강 듣기 시작했다. 개인적으로 자바스크립트 기초를 배우고 시작하니 이해하기 편했다고 생각한다.
- JAVA는 시험 한달전부터 시작했다. 유데미의 완전 초보자를 위한 Java 프로그래밍 강의를 들었고 정말 듣기 잘했다고 생각한다. 흥달쌤 말대로 백문이 불여일타. C언어는 온라인 IDE 사이트에서 직접 코드를 돌려봐야 하고, 자바는 jshell부터 이클립스에서 어떻게 돌아가는 건지 봐야 체득이 된다. 그 이후 W3 schools에서 아직 머릿속에서 잘 정리되지 않은 개념을 확실히 잡았다.
- Python은 유데미의 세시간만에 끝내는 파이썬 (Python) 기초를 들었다. 프로그래밍 언어 자체에 입문하는 사람은 다른 것보다 이걸 처음으로 듣는 게 더 알기 쉬울 것 같기도 하다.
- 운영체제를 대비하기 위해 📔'혼자 공부하는 운영체제'를 봤는데 정처기랑 비교해서 그쪽이 더 난이도가 높았다. 중간중간 더 자세히 알고 싶은 부분을 찾아보기에 좋았다.
- 네트워크는 크래쉬코스의 네트워크 부분을 보고 오니 잘 이해되어서 따로 학습을 하지 않았다.
5과목 정보시스템 구축관리
- 크래쉬코스가 도움이 되었다. (특히 암호화!)
3. 흥달쌤
내가 합격할 수 있던 1등 공신은 흥달쌤. 흥달쌤이 없었다면 이 공부를 대체 어떻게 했을까? 일단 확실하게 말할 수 있는 건 엄청나게 재미없었을 것 같다는 사실이다.
흥달쌤을 선택하게 된 계기는 엄청 단순한데, ①현업이신 분이라서 ②유튜브 보니까 왠지 마음에 들어서.. 나는 망설임이 없었다. 사실 원래 신중한 성격이라 샘플 강의 등등 이것저것 다 따지는데 흥달쌤은 그냥 소개문구만 보고 결제까지 해버렸다. 그리고 나의 느낌적인 느낌은 적중했는데, 흥달쌤은 원리와 개념에 대해 조금이라도 이해를 하지 못하면 외울 생각이 생기지 않는 나에게 아주 딱 맞는 분이었다. 초등학생 떄부터 프로그램을 배운 흥달쌤, 그래서 그런지 재미있고 알기쉽게 이해를 시켜주신다. 현업에서 필요없는 건 그냥 시험장 들어가기 전에 외우면 된다고 하는 것까지 완벽했다. 현업에서도 쓸모있는 자격증을 만들자는 말씀이 너무 좋다.
그리고 정말 열정적이고 정성스러우시다. 질문에 답변을 영상으로 찍어올려주시고, 댓글에도 하나하나 반응해주신다. 심지어 이번에는 일정이 너무 당겨지는 바람에, 필기 특강에 질문 답변 영상에 실기 강의까지 찍어 올리시면서 교재 출간도 준비하는 흥달쌤.. 나도 저 열정에 보답하기 위해 열심히 해야겠다는 생각이 들 정도였다.
📝공부 방법
흥달쌤의 조언대로 공부를 했다. 무엇보다도 프로그래밍 강의를 꾸준히 돌리고, 동시에 개념강의를 한 번 돌리고→문제풀이 강의를 한 번 봤다. 그러고 나니까 시험이 1주일 남았다. (2주는 남기려고 했는데 실패했다)
그렇게 CBT 기출문제를 모의고사 삼아 풀어봤는데 정리되지 않은 게 너무 많다는 걸 깨닫게 되었다. 안 그래도 공부하다보니까 과목별로 파편화되어있는 내용들이 있었다. 예를 들어 계획은 왜 5과목에 있는지 영문을 모르겠는 것처럼 말이다. 나는 머릿속에서 챕터 별로 어떤 부분에 어떤 내용이 들어가는지 정리가 되어있어야 하는 사람이라 이게 좀 힘들었다. 역으로 그 덕분에 개념들을 다 순서에 맞게 정리하는 과정에서 배운 게 많다. 그러고 필기시험이 끝난 다다음날 드디어 출간된 흥달쌤 실기책을 봤는데..! 흥달쌤이 다 해놨더라. 실기 시험은 드디어 전문가가 해 놓은 정식 순서대로 정리할 수 있다는 사실에 안도했다..
그리고 시험 전날 하루~이틀 간은 기출문제를 한 번 풀었다. 이미 유명한 흥달쌤의 기출 문풀 특강은 22년도 분량밖에 들을 시간이 없었다. 그렇다 내 예상보다 개념 정리에 시간이 많이 들었던 것이다.. 이번에 스케줄 설정과 나의 능력치에 대해 첨예한 반성이 있었다. (원래 문풀 2회독 하고 기출 특강도 다 듣고 가려고 했는데!)
to 과거의 나, 개념 강의를 쫌 더 대충대충 듣고 넘어가도 괜찮다. 어차피 한 번 들어서 이해할 수 없으니 일단 뭐라도 들어서 흐름을 만들 재료들을 수집하는 게 낫다. 그걸 기반으로 문풀에서 흥달쌤의 개념 반복을 들으면 된다! 흥달썜은 문풀 강의에서 정말 야무지게 개념을 백번 천번 설명해주신다. 솔직히 흥달쌤이 제일 무서운 사람이다 이렇게까지 끊임없이 반복해주시다니..
✨결과 : 합격
2023년 2월 20일 정보처리기사 필기시험을 보았고 95/100/95/100/80 → 94점으로 합격했다.
아이러니하게도 달달 외우는 거 싫어하는 나에게 체감 기출 70~80퍼가 나왔다. 시험장 들어가기 전에 틀렸던 문제들이랑 중요한 개념들을 한번 훑고 갔는데 거기서 거의 다 나온 것이다.. CBT란.. 얼마나 운빨인가에 대하여..
물론 흥달쌤이 말한대로 5과목은 완전히 처음보는 문제가 많았다. 이건 흥달쌤이 하라는 대로 꼭 맞춰야 하는 문제를 다 맞추고 나머지는 줄세우는 걸 추천한다. ‘줄세우면 한두개는 맞겠지 전략’이다. 나는 이미 합격선이라는 걸 확신했기에 소신대로 모르는+아리까리한 8문제를 찍었고 절반은 맞은 것 같다.
사실 문제가 지엽적인 게 많이 걸렸으면 자신이 없을 거라고 생각했는데 정말.. 운이 다 했다. 평소에 나는 운이 좋다고 외치고 다닌 보람이 있는 걸까(?). 실기는 운에 기댈 수 없으니 내 특기인 개념 정리💪를 살려서 이참에 컴공 기초와 아주 친해져버릴 작정이다. 하지만 무엇보다도 흥달쌤을 만나게 된 게 인생 최고의 행운이니까 실기도 흥달쌤과 함께라면 문제없다! 동회차 합격 가보자고💪