코딩과의 만남

개발자로서 항상 개발을 하는 동안에 계속해서 머리속에 떠오른 생각이 하나 있다, 실제로 천성 자체가 '개발자’에 특화되게 태어난 사람은 존재하는가 가 그에 대한 질문이였다.

물론 필자도 개발을 꽤나 어릴시절부터 접하긴 했었다. 15살 당시 학교 도서관에 들어온 과학잡지(아마 청소년 과학잡지로 기억한다)에서 잠깐 코딩에 대해서 다룬적이 있었는데 - 원래는 개발보다는 인체학이나 기계공학에 대해서 다루는 과학잡지였다 - 내가 컴퓨을 하기 위해 사용했던 모든것들이 사실은 엄청나게 많고 복잡한 코드로 이루어져있었다는 사실을 알고 모종의 충격을 받았던 기억이 있다.

그때부터 개발이라는 분야에 조금씩 관심을 가지게 되고 처음으로 만들게 된것이 바로 쯔꾸르게임이였다. 한창 아오오니 라는 공포 쯔꾸르 게임이 유행세를 탈 시기였는데 그런 종류의 RPG게임을 툴을 사용해서 만들 수 있다는 것을 알고 꽤 오랫동안 코드에 대해서 배우며 게임을 만들었던 적이 있었다. 아마 Game Maker라는 툴이 그당시에는 가장 유명해서 그 툴로 게임을 만들었던 것으로 기억한다.

과거 정말 많이 사용되었던 툴인 게임메이커 스튜디오

지금이야 게임개발툴로는 언리얼 엔진이나 유니티가 압도적인 점유율을 차지하고 있지만 그당시에는 쯔꾸르게임하면 게임메이커였었다.

실력의 기준

본론으로 돌아오자면 코딩이란것이 있다는걸 알게되고 관심을 가지게된게 15살정도라면 본격적인 코딩에 대한 공부를 시작한 시기는 18살(고2)에 학교 동아리에 참가하면서였다. 그때부터 개발분야를 웹으로 정하고 프론트 백 구분하지않고 배우다보니 지금은 미약하지만은 웹개발자가 되어있었다만은 초기에 코딩공부를 할 당시에는 열등감도 많이 들었고(지금도 그렇게 줄어들지는 않았다) 힘든점도 많았던것 같다.

그 당시의 큰 고민이 “내가 이 분야에 재능이 있는가?” 였었는데 그 척도를 얼마나 빨리 프로그래밍 언어를 빨리배우느냐, 얼마나 할줄 아는 언어가 많으냐 로 구분지었었다. 지금 생각해보면 정말 부끄럽기 그저없지만 깊이나 이해도는 생각하지 않고 그저 많은 것들을 최대한 빠른시일내에 배우고 활용할 생각을 했던것 같다.

후에 가면 갈수록 많은 언어를 다루고 빠르게 문법을 배우는것이 실력의 척도가 (절대로)아니며 언어와 프레임워크(그 당시에는 프레임워크의 존재도 몰랐고 필요성도 느끼지 못했다)의 이해도와 활용도, 코드 최적화 능력이 실력에 영향을 끼친다는것을 느끼고 php언어로 다양한 프로젝트를 진행하며 웹코딩에 대한 이해도를 높였었다.

처음 시작하는 사람들의 고충

비록 초라한 실력이긴 하지만 어쨋든 코딩을 배운 입장인지라 친구들이나 후배를 가르쳐주거나 취업분야에 대한 조언아닌 조언을 해주기도 했었다. 이때 어느정도 코딩에 대한 기본기가 있든, 완전 처음 시작하는 비전공자든간에 비슷한 고민을 한다는것을 알게 되었는데 이 고민이 바로 “개발자란 직업에 나에게 적합한 직업일까?” 라는 것이였다.

뭔가 개발을 한다면 많은 창을 띄워놓고 키보드를 쉼없이 타이핑하며 불꺼진방에서 에너지음료를 마시며 일을 하는(…) 이미지를 상상하기에 자신이 하는 공부와 습득속도에 좌절해 Learning Curve를 넘기지 못하고 공부를 포기하거나 매우 더디게 진행하는 경우를 여러번 보았다.

세간에서 보이는 개발자들은 어려운 전문용어를 난사해대는데 이게 대체 무슨의미인지 감도 안잡히고, 누구는 Github가 초록빛으로 뒤덮혀 있을정도로 작업량이 많은데 나는 레파토리는 커녕 git설치하는것 조차 제대로 하지 못하는것에 좌절해 공부를 포기하는경우가 생각보다 많았기에 항상 코딩에 대해서 설명하거나 가르칠 기회가 생길때마다 "이루려는 목표치는 높게 잡되, 단기적인 목표를 여러개를 잡고 하나씩 해나가보아라"라는 말을 많이 하는 편이다.

검색 엔진을 만들고 싶다면 가장 기본이 되는 HTML의 Form을 배우고 그 다음에는 POST통신에 대해 배우고, 그 다음에는 Database Insert, Select에 대해 배우며 한발자국씩 내가 아는것들을 늘리다 보면 결국은 검색 엔진과 같은 프로세스도 구성할 줄 알게 된다는 식이다.

그럼에도 불구하고 나 또한 진지한 고민을 자주 하는 편이다. 내가 이 일을 정말 사랑하는가? 이 일을 10년후에도 하고있다면 후회하지 않을 자신이 있는가? 다른 하고싶은 더 매력적인 일은 정말 없었는가? 등등 스스로에게 많은 질문을 던진다.

이에대한 대답은 쉽게 나오지 않고 어떨때는 몇개월씩 그 생각을 하며 지낼때도 있지만 결국 ‘그래’ 라는 대답을 할 수 있을때는 웹사이트든 무엇이든 만들어내고 그것이 작동하는것을 보며 계속해서 더 나은 코드를 짜고 기능을 추가하는 과정에 충만감을 느끼는 나 자신을 발견할 때였다.

나가며

개발을 새로 시작하는 모든 초심자들에게 하고싶은 말이 있다면 “자신의 능력에 알맞는 프로젝트를 만들어보아라” 정도가 될것같다. 그것이 기존에 있던것이던, 너무 간단한 것이던, 상업성은 커녕 기술수준에서 한참 떨어진다고 생각되더라도 일단 만들어 보아라. 프로젝트에 애정이 생기고 더 낫게 만들고싶은 욕구가 드는 자신을 발견하게 될것이다.

가장 처음에 던졌던 질문인 "천성 개발자는 존재하는가"에 대한 답을 할 때가 온것같다, 내생각에는 ‘아니다’. 하지만 누구든간에 자신이 만드는 창작품에 대해 애정을 가지고 성취감을 느낀다면 그 사람은 충분히 개발자가 될만한 자질과 재능을 가진 사람이라고 생각한다.