다시 블로그질을 하기로 다짐한 뒤 혹시나 도움이 될까해서 예전에 쓴 글들을 훑어보던 중 10년 전에 쓴 <한국에서는 찬밥이라는 소프트웨어 개발자, 미국에선?> 이 눈에 띄었다. 격세지감이라고 할만큼은 아니지만 10년이 지난 지금, 한국에서 개발자의 위상과 대우가 부쩍 상승했음을 보여주는 뉴스가 심심치 않게 눈에 띈다. 당연한 일 아닌가? 모든 산업에서 소프트웨어가 차지하는 중요성이 높아지고, 특히 스마트폰 없이는 아무것도 할 수 없는 한국에선 더더욱 개발자 수요가 늘어갈게 뻔하니 말이다.

개발직군이 억대 연봉을 받는다는 기사들과 함께 초등학교 아이들 사이에서 코딩 교육이 인기라는 기사도 본 적이 있다. 한 달 전 한국 방문 중 만난 몇몇 친구, 후배들도 자기 애들을 코딩 학원에 보내고 있다고 했다. 그런 얘기를 들을 때마다 유행과 시류에 쉽게 휩쓸리는 한국인들의 성향이 코딩 교육의 열풍을 일으키고 있다는 생각을 지울 수가 없다. 그리고 만약 개발직군의 연봉이 높지 않다고 해도 코딩 교육이 성황일지 궁금해졌다.

코딩 학원에서 무엇을 가르치는지는 학원마다 다르겠지만, 초등학생 아이를 학원에 보내고 있다는 후배 하나가 이런 얘기를 해줬다. “처음엔 애들이 관심을 갖게 하려고 게임 같은걸 해. 큐빅 같은걸로 뭘 만든다는가 그런거. 그러다가 점점 진도가 나가면서 그 다음 단계가 되면 파이선을 가르치더라. 그랬더니 우리 아들이 어렵다고 재미없어하는거야. 그리고 간단한 앱을 만드는 것도 하는데 안드로이드에서만 된다는거야. 우리 집은 다 아이폰을 쓰는데 말이지.”

그 얘기만 들어도 한숨이 나왔다. 앞으로 프로그래밍을 전혀 모르면 도태될 수 밖에 없는 세상이 될거라는 것을 누구도 부인하진 않을거다. 하지만 그런 세상에 적응시키기 위해 아직 수학, 과학도 잘 모르는 아이들에게 코딩을 가르치는게 과연 얼마나 도움이 될까? 오히려 내 후배의 아이처럼 어렵다고 흥미를 잃게 만드는 역효과를 일으킬 수도 있지 않을까?

내 생각에 조기 코딩교육의 목적은 아이들에게 논리적, 수학적 사고와 문제해결 능력을 키워주는 것이 되어야한다. 단순히 앱을 만들고 웹사이트를 만드는 것은 이제 코딩을 모르고도 할 수 있다. 우리가 키워내야 하는 인재는 우리에게 어떤 문제가 있고 그 문제를 해결하기 위해 어떤 앱, 어떤 웹사이트, 어떤 시스템을 만들어야 하는지를 생각해내고 설계할 수 있는 인재다. 코딩은 그런 아이디어를 구현해 내는 수단이고 그 수단을 배우는 것은 굳이 어려서부터 할 필요는 없다. 왜냐하면 수단은 계속 변하기 때문이다. 코더(coder)만을 양산해내는 교육방식으로는 현재와 미래의 개발 인력 수요를 충족시킬 수 없다.

나는 개발자로 일한지 20년 정도가 된 현직 개발자다. 나는 대학에선 순수인문학을 전공했고 개발과 전혀 관련없는 직종에서 4년 정도 일하다가 미국 유학을 온 20대 후반부터 프로그래밍을 공부해서 개발자가 되었다. 처음엔 간단한 코딩이 재밌어서 프로그래밍 수업을 들어봤고 그러면서 더 재미가 생겨 아예 커리어를 바꾼 경우다. 문과 출신으로 개발자가 되는 분들이 요즘엔 많지만 그 당시만 해도 적어도 한국엔 그런 예가 별로 없었는지 주변 분들이 신기해했다. 나는 문이과 기질이 50대 50 정도로 이도저도 아니라 전공 정하기가 힘들었는데, 그 옛날 입시제도하에서 단순히 수학 점수가 국어, 영어에 비해 현저히 낮다는 이유로 문과를 갔다. 미국에 와서 미국애들에 비해 내 수학 실력이 크게 떨어지지 않는 걸 알게 됐고 프로그래밍 수업에서도 좋은 성적을 내면서 나도 이걸 할 수 있겠다라는 자신감이 생겼달까. 돌이켜보면 어렸을 때 추리소설과 퀴즈 푸는 것을 엄청 좋아했고, 대학교 때 제일 재밌게 들은 수업 중 하나로 논리학 수업을 꼽는 걸 보면 나에겐 문제 푸는 것, 해결하는 것을 즐기는 기질이 있었던 것 같고, 그런 기질 때문에 프로그래밍의 매력에 빠진 것 같다.

개발자로 일하는건 끊임없는 배움이다. 코딩도 사실 아직 배워가면서 한다. 새로운 프로그래밍 언어, 새로운 기능이 계속 쏟아져 나오니 말이다. 때문에 미래의 개발자에게 제일 중요한 능력은 어찌보면 지치지 않고 공부할 수 있는 능력, 지식 습득력이다.

한국의 조기 코딩 교육이 단순히 코딩을 가르치는 것이 아닌 논리적 수학적 사고 능력, 문제 해결 능력, 지식 습득력을 길러주는 쪽의 교육이 된다면 개발인력 뿐 아니라 소프트웨어 산업의 다양한 분야에 필요한 인재 양성에 도움이 될 거라 생각한다.