우리집 막내의 코딩전문역량인증시험 도전기

어린이에게 알고리즘을 가르치는 방법과 부모의 역할

By 전경원

막내는 초등학교 4학년 겨울방학을 앞두고 있었습니다. 수학은 초등학교 6학년 과정까지 선행했지만, 중학교 1학년 과정의 방정식은 어려워해 멈췄습니다. 경시대회 문제를 풀 정도로 수학 실력은 갖췄지만, 현 학년 내용의 심화도 충분히 나아간 상태여서 선행을 더 이어 가기 어려웠습니다. 마침 다니던 바둑 학원도 쉬고 있어 새로운 도전을 찾다가 프로그래밍을 골랐습니다. 게임과 영상 시청에만 빠지지 않도록 흥미거리를 만들어 주고 싶었습니다. 호기심과 도전적인 성향이 있는 아이라 프로그래밍으로 문제를 해결해 보기로 했습니다.

게임을 좋아하는 아이, Unity로 시작하다

요즘 아이들이 그렇듯 우리 막내도 게임을 무척 좋아합니다. 스스로 좋아하는 게임을 만들 수 있다는 말로 코딩에 흥미를 붙이게 했습니다. 아직 어린 아이여서 적은 작업만으로도 가지고 놀 만한 게임을 만들 도구가 필요했고, Unity가 가장 적합해 보였습니다. 저도 Unity를 다뤄 본 적이 있어 기본 사용법을 알려줄 수 있었습니다. 웹에서 아이에게 Unity를 가르친 사례를 찾다가 괜찮은 교재를 발견했습니다. 그림으로 이해하고 만들면서 익히는 유니티 교과서(저자: 가타무라 마나미, 번역: 김은철, 출판사: 길벗)를 구입해 아이와 함께 공부를 시작했습니다. 이 교재는 삽화로 컴포넌트의 역할과 사용법을 쉽게 파악하도록 설명합니다.

하지만 어린 아이가 프로그래밍 언어, 알고리즘, 게임 엔진을 한꺼번에 접하기에는 무리였습니다. 곁에서 쉽게 설명하려고 했지만, 아이에게는 벅찬 부분이 많아 흥미가 떨어지는 모습이 보였습니다. 그래도 수확은 있었습니다. 기본 C# 문법을 접했고, 문자로 이루어진 프로그램이 눈에 보이는 실행 결과로 이어지는 과정을 경험했습니다.

광주교대 영재교육원 SW·AI 코딩 중급반 합격이라는 새 목표

기존 영재 수업 등 여러 활동에 회의적인 반응을 보이며 이것저것 다 하기 싫다는 시기가 찾아왔다. 역시 수업에서 아이가 좋아하는 로블록스를 다룬다는 말로 꼬드겨서 SW·AI 코딩반의 선발 시험에 응하게 유도했습니다. 아이가 응시할 5학년 반은 중급반으로 초급반에서 올라오는 학생을 제외하면 소수를 추가로 선발하는 형태였습니다. 수학적 사고력은 제법 갖추고 있었지만, 코딩 경험이 절대적으로 부족한 아이가 이 시험에 합격하기는 어려워 보였습니다.

알고리즘 문제 해결력을 키우기 위해 프로그래머스 문제 풀이를 시작했습니다. Unity로 이미 C#에 익숙했기에 언어는 C#으로 유지했습니다. 언어를 바꾸면서 생기는 부담을 줄이고 사고력과 문제 해결에 집중하기 위해서였습니다. 알고리즘 문제 풀이에 필요한 문법 난이도는 C#과 다른 언어가 크게 다르지 않아, 언어 선택이 문제 풀이에 미치는 영향은 크지 않다고 판단했습니다.

언어의 키워드가 영어라는 점이 걸림돌이 될 수도 있지만, 이미 Unity의 인터페이스에 나오는 영어 용어를 익히는 과정에서 아이가 영어에 대한 거부감이 크지 않다는 것을 확인한 상태였습니다. 다만 영어는 담임 선생님이 “다른 과목에 비해 눈에 띄게 떨어진다”며 학원 수강을 권할 정도이며, 영어 활용은 좋아하지만 영어 학습은 싫어한다는 점이 우려되기는 했지만 아이가 영어의 쓰임새를 이해할 수만 있다면 흥미를 가질만 하다고 생각했습니다.

프로그래머스 입문 문제 풀이 시작

2025년 11월 12일경부터 프로그래머스 입문 문제를 풀기 시작했습니다. C# 문법은 Unity 교재에서 다룬 기본 문법 수준만 알고 있는 상태였고, 알고리즘에 대한 개념빅오(Big-O) 표기법 등을 알려주기 위해 그림으로 개념을 이해하는 그로킹 알고리즘(저자: 아디트야 바르가바, 번역: 김도형, 출판사: 한빛미디어)을 간단히 학습한 뒤 바로 문제 풀이에 들어갔습니다. 이 책은 원서로 접했을 때 알고리즘을 쉽게 설명하는 점이 워낙 인상 깊어서 아이에게도 권해주고 싶어서 골랐다.

문제보다 ‘이해’를 먼저 두는 학습 방식

문제를 푸는 일보다 알고리즘 예제로 문제 해결 방식을 익힌다는 생각으로 접근했습니다. 필요한 프로그래밍 언어와 알고리즘을 모두 공부한 뒤 시작하면 흥미가 떨어질까 봐, 문제를 푸는 느낌을 최대한 살리려 했습니다. 프로그래밍 언어와 알고리즘을 충분히 익히지 않은 상태에서 도전하는 만큼 ChatGPT로 학습 자료를 만들어 적극 활용했습니다.

풀 문제를 긁어서 ChatGPT에 넣고, 접근하고자 하는 방향으로 풀이 과정, 알고리즘 등과 함께 필요한 프로그래밍 문법까지 설명하는 자료를 생성해서 사용했습니다. 이러한 방식으로 접근할 때 체계적인 접근이 부족할 수 있지만, 다행히도 아이가 학습한 내용을 잘 구조화해서 이해하는 능력이 출중해서 큰 어려움 없이 진행할 수 있었습니다.

문제 풀었을 때 나오는 점수를 게임을 할 수 있는 시간으로 환산해 주는 등, 동기 부여에도 신경 썼습니다. 초반에는 문제를 많이 푸는 것보다,

  • 문법 숙지
  • 기본 코딩 패턴 익히기
  • 에러 메시지를 이해하고, 문제인 부분을 찾아내기

에 더 많은 시간을 썼습니다.

처음에는 하루에 한 문제도 버거웠지만, 점차 속도가 붙어 레벨 0 문제는 한 시간에 2~3문제를 풀 수 있을 정도로 향상됐습니다.

답을 주기보다 길을 열어주는 부모의 역할

문제 풀이 중 모르는 문법이나 알고리즘이 나오면 풀이 전에 설명합니다. 풀이 도중 질문이 나오면 바로 답을 주기보다 정답으로 이어지는 질문을 던집니다.

다만 한 가지 기준은 분명히 세웠습니다.

한 문제에서 10분 이상 막히면 반드시 개입합니다.

너무 오래 막히면 흥미가 꺾입니다. 이미 배운 내용을 잊거나 단순한 패턴을 이해하지 못해도 조급해하지 않고 다시 설명합니다. 이 과정이 반복되며 이해가 쌓입니다.

언어 선택과 시험 현실

알고리즘 문제는 기본적인 프로그래밍 문법만으로도 충분히 풀 수 있습니다. 그래서 어떤 언어를 사용하든 본질적인 차이는 크지 않다. 다만, 파이썬처럼 편의 기능이 많은 언어가 유리한 면은 분명히 있습니다.

현실적인 제약도 있습니다.

  • PCCE(코딩필수역량인증시험) 는 C#을 지원하지 않습니다.
  • 반면 PCCP는 C#을 지원합니다.

5학년 개학 전까지 예정된 PCCP 일정이 있지만, 그 시점까지 PCCP를 보는 데 의의를 가질만한 준비를 하기에는 어렵다고 판단했습니다.

스킬체크로 방향을 튼 전략 수정

그래서 목표를 스킬체크로 조정했습니다.

  • 레벨 0: 100문제
  • 레벨 1: 50문제

이 분량은 2월 안에 충분히 소화 가능할 것으로 보입니다. 이후 3월 전에 스킬체크 레벨 1 응시를 목표로 하고 있습니다.

응시는 2월 마지막 일요일을 기준으로 계획 중입니다.

2025년 12월 15일 기준, 약 60문제를 풀었습니다.

마무리하며

아이를 가르치다 보면 처음 계획과 다른 방향으로 흘러갈 때가 많습니다. 알고리즘 풀이도 그렇습니다. 아이가 단순히 타이핑 장난에 빠질 수도 있고, 단순 테스트 전략으로 문제 풀이에 접근할 수도 있습니다. 그래도 아이가 알고리즘 문제 풀이에 흥미를 보인다는 점이 중요합니다. 이 흥미를 유지한다면 효율적인 학습 방법을 계속 찾아갈 수 있을 것입니다.

Share: LinkedIn