회고록
"생각대로 살지 않으면 사는 대로 생각한다"는 말에 따라, 다짐한 내용의 실천 여부와 감정을 되짚어보며, 자아를 잃어버리지 않으려고 작성합니다.
Search
대학 입시, 공무원 임용 시험을 거치면서 전통적인 교육 방법을 많이 경험했는데 우아한테크코스에서 근무하면서 한국의 전통적인 교육과 어떠한 점이 다른지 생각해 보는 계기가 있었다. 그런데 한국 교육은 교육의 본질과는 거리가 멀다는 생각이 들었다.
들어가며
최근 우리 사회의 문제점 중 가장 부각되고 있는 것은 “출산율”이 아닐까? 점점 출생아 수가 줄고 있다. 왜 이런 현상이 지속될까? 나는 그중 하나가 바로 과열된 경쟁이라고 생각했다. 그리고 그 과열된 경쟁은 10대인 학창 시절부터 시작되는데 이를 경험했던 청년들이 피로감을 느껴서 다음 세대를 위한 도약을 포기하게 되는 것은 아닐까? 한정된 자원을 놓고 벌어지는 싸움에서 경쟁은 어쩔 수없다지만, 우리 사회는 과하다는 생각도 든다. 특히, 교육 분야에서는 더욱이 그렇다. 학문을 배우면서 효능감을 느끼고 자기 신뢰감을 느껴야 하는데 한국 사회에서는 그보다는 등수가 몇 등인지를 먼저 묻는다. 그리고 등수를 가르기 위해 교육에서는 “정답”을 두고 가르친다.
출처: 중앙일보
교육자로 1년간 우아한테크코스에서 일하면서 한국 교육에서 어떤 문제점이 있는지 고민했다. 그리고 이를 통찰하면서 깨닫게 된 점에 관해 글을 적으면 좋겠다고 생각했다. 우아한테크코스에서 교육을 진행하면서 수십 년간 배웠던 전통적인 한국의 교육 방식과 우아한테크코스에서 지향하는 교육 방식은 상반된다는 것을 느꼈다. 한국의 교육 방식도 이곳에서의 철학이 스며든다면, 좀 더 나은 한국 사회를 만들어 나갈 수 있지 않을까? 언젠가 한국 교육과 대조되는 모습을 띠는 우아한테크코스의 교육 철학과 관련된 글을 쓰고 싶었는데 마침 “한국에서 발견된 특이한 공부 습관? 서울대가 이 상태라면 더 이상 천재는 없다”라는 영상을 시청하게 되면서 생각을 정리하며 글을 몇 자 적게 되었다.
영상 개요
본질에서 멀어진 한국 교육
교육의 본질보다는 과열된 경쟁을 유도하는 한국 교육
한국 교육 과정에서 나는 교육의 본질을 배우지 못했다. 학창시절을 마친 뒤 교육에 관해 크게 고민할 거리가 없었는데 우아한테크코스에서 학생들을 교육하면서 ‘교육의 본질’에 대해 고민하게 되었다. 왜냐하면, 이곳에서는 우리가 경험했던 학교처럼 교육하는 곳이 아니기 때문이다. 우아한테크코스의 특성 중 하나는 등수가 없다. 그러나 한국의 전통적인 학교 교육에서는 중간고사, 기말고사와 같은 시험 제도를 통해 학생들 사이에 등수를 매기는 경쟁 체제가 깔려 있다. 이로 인해 많은 학생들이 학습의 본질보다는 시험 점수와 순위에 집중하게 되며, 그 결과 학습의 본질과 멀어지게 된다. 그럴 수밖에 없는 것이 한국에서는 상위권 4년제 대학교에 진학해야 사회적인 성공이 수월해진다. 이것은 인정할 수밖에 없는 현실일 것이다.
시험이라는 목적의 변질
우아한테크코스에서 발견한 교육적 통찰
팀블라인드 소개
팀블라인드는 직장인이 회사 이메일로 가입하면 특정할 수 없는 회사 소속의 개인이 글을 자유롭게 남기며 소통할 수 있는 커뮤니티 서비스이다. 뉴스 기사에서 부당한 직장 이야기가 다뤄진다면 팀블라인드 커뮤니티의 캡처 화면은 흔히 접할 수 있다. 그런데 입사 이후에 미국에도 별도의 서비스가 있다는 것을 알게 되었다. 한국의 블라인드 서비스처럼 미국의 블라인드 서비스도 마이크로소프트, 구글, 아마존, 메타, 테슬라 등 유명한 기업에 종사하는 사람들이 많이 사용한다고 한다. 그런데 한국과 미국은 문화가 다르다 보니 서비스가 독립적으로 운영되고 정책에서 두드러지는 차이가 있다. 그래서 한국 개발자 분들이 미국 서비스까지 개발을 맡다가 점점 미국 서비스도 한국만큼 규모가 커지면서 미국/캐나다 등 각지의 개발자를 영입하여 서비스를 운영하고 있는 시기였다.
한국 서버 개발팀이 서비스를 운영하다가 미국/캐나다 개발자에게 바톤을 넘기면서 긴밀히 협력해야 하는 시점에 있었다. 주기적으로 서로의 업무 내용을 공유하기 위해 한국 시각 기준 오전 9~10시에 양국 개발팀이 서버 개발에 회의를 온라인으로 진행했다. 꼭, 업무 내용이 아니더라도 개발에 도움이 되는 툴을 소개하거나 좋은 개발 문화 만들기 위한 주제, 그리고 특정 기술을 주제로 발표하는 기회로 발표할 수 있는 시간을 만들어가고 있었다. 첫째로 희망자가 자원하거나 그렇지 않은 경우에는 순번을 정하며 발표를 준비하게 되었는데 그중 내가 발표를 자원하게 되었다.
발표를 준비한 이유와 준비하게 된 주제
순번으로 걸렸던 것도 아니고 지목 당한 것도 아니었다. 도대체 내가 왜 나서게 됐을까? 나는 개인적으로 두 번 다시 태어나더라도 이런 기회를 경험하기 어렵다는 판단이 든다면 본능적으로 나서게 되는 면이 있다. 그래서 미국 개발자들과 함께 교류하고 싶은 마음에 선뜻 나서게 됐다. 마치 그 시기에 “자바스크립트는 왜 프로토타입을 선택했을까”라는 글에 꽂혀 있었다. 당시에는 이 포스팅을 몇 번을 읽어도 전부 이해하기에는 역부족이었다. 그런데 내가 한번 다른 사람들을 대상으로 한 발표를 준비한다면 보다 잘 이해할 수 있지 않을까? 하는 마음에 이 어려운 주제를 선택했다.
어떤 개념을 이해하거나 정복해 보겠다는 다짐을 하면서도 막상 큰 벽에 부딪히게 되면 거기서 헤어 나올 방법을 찾아야 한다. 그러나 자발적인 동기로는 오래 가지 못한다. 마찬가지의 경우로 PT를 받는 것도 혼자서는 레그프레스 무게 만땅 치고 4개밖에 못 밀겠다고 생각하던 것이, 옆에 사람이 붙어서 개수를 세고 있으면 10개까지도 하게 된다. 그래서 발표도 외부 동기를 이용한다면 나의 역량을 한층 더 성장시킬 수 있을 것이라고 생각했다.
발표 준비와 과정
한국과 미국 개발자 분들을 대상으로 하다 보니까 한글로만 발표 자료를 준비할 수는 없었다. 그래서 통역하시는 분과 협업이 필요한 상황이었다.
통역하시는 분이 계셨지만, 굳이 내가 직접 영어로 말하고자 했던 이유가 있었다. 몇 번의 한/미 양국 개발자의 세미나를 들어 보니 통역하는 과정에서 언어간 스위칭 비용(시간)이 많이 드는 것을 알게 되었다. 내용이 영어로만 적혀 있는 경우에는 전적으로 통역사 분의 힘을 빌려야 하기 때문에 통역할 차례가 올 때까지 마냥 기다리는 수밖에 없었다 보니 집중력이 흐려지는 경우도 있었다. 20분 분량의 간단한 발표일지라도 언어 스위칭 비용 때문에 2배의 시간이 걸리는 것이 일반적이었다. 그래서 통역이 전문적으로 필요하지 않은 부분은 슬라이드 노트에 미리 메모해 외운 체(?)하며 내가 직접 언어를 스위칭하여 시간을 절약하며 집중을 유도했다(오, 저 사람 영어 할 줄 아나 봐!).
PPT 화면에 글자가 많이 들어가는 것을 좋아하지는 않지만, 양국 개발자의 원활한 이해를 돕기 위해 불가피하게 2개국어를 모두 화면에 실었다. 양국 개발자의 원활한 이해를 돕기 위해서는 PPT 자료도 2개국어가 모두 적혀 있으면 좋겠다고 생각했다. 내가 먼저 한국어로 발표하면 다음에는 통역사가 번역해 주시는 형식으로 진행됐다. 이때 내가 한국어로 말하는 틈에 미국 개발자는 통역사의 번역을 듣기 전에 화면을 통해 내용을 먼저 접하게 된다면 보다 집중을 끌어올릴 수 있을 것이라고 기대했다.
한/미 개발자 대상 글로벌 발표를 하고 난 뒤…
나는 왜 운동을 싫어했을까?
나는 막대사탕을 먹다가 흘린 침 때문에 손가락에 묻은 끈적이는 촉감도 예민해했을 정도로 촉각이 유달리 예민했다. 젖병을 빨다가 옷에 흘린다면 갈아입어야 직성이 풀릴 정도였으니 말이다. 이후 유년기 시절에도 이런 끈적이는 느낌은 극히 싫어했을 뿐만 아니라 땀을 흘리는 것에도 예민했다. 물도 아닌 촉촉하고 끈적이는 액체가 내 몸에 착 붙는 촉감이 불편했다.
도전하기 전 나의 모습
학창 시절에 체력장이라는 제도가 있었다. 자세히는 기억나지 않지만, 마치 국가대표 선발전처럼 많은 종목을 매년 실시해야 했다. 나에게는 지옥과 같은 일정이었다. 공부도 하기 싫은데 이제 체력장까지 하라고?
•
체력장 종목
조금은 창피하지만, 학창 시절에 걷기 말고는 운동을 하나도 안 했던 나로서는 오래달리기 종목이 내게는 가장 유리한 종목이었고 유일한 상위권 종목이었다. 당시 멸치라고 불릴 정도로 키에 비해 체중이 낮았다. 모두가 살 좀 찌우라고 걱정해주시던 시기에 다행히도 폐활량은 좋았던지 오래 달리는 것엔 강했다. 하지만, 이마저도 고등학생 때는 워낙 날고 기는 급우들이 많아서 중위권으로 내려갔다.
학창시절에는 내가 잘하고 재미있어 하는 것에는 무한한 흥미를 지녔지만, 내가 어렵다고 생각하거나 약하다고 생각하는 부분을 보강하고자 하는 의지가 없었던 것 같다. 내겐 운동이 그러했다. 정말 창피한 일이지만, 아직도 나는 구기종목에서는 탁월한 둔재이다. 운동신경이 나쁘다고 생각해서 공을 날려 차는 것조차 힘겨워하던 내게 운동하는 것은 어렵고 두려운 일이었다. 학업과 내가 좋아하는 일을 하면서 도전적인 일까지 하기에는 내게 에너지가 모자랐나 보다.
도전의 시작
운동을 시작하게 된 이유
남자들에게는 보통 군생활을 하면서 반(半)강제적인 운동이 시작된다. 나에게도 그러했다. 하지만, 정말 창피하게도 나의 군생활 시절 체력 검정 성적은 형편없었다. 심지어 신병훈련소에서 5주간 억누를 수밖에 없었던 나의 식욕은 자대에 가서 폭발하고 말았다. 사회에서는 초코 과자를 그다지 좋아하지 않았는데 유달리 자대에 가서는 다이제 초코 과자에 끌렸다. 습관적으로 취식한 결과 입대 전보다 20kg가량 체중이 늘었다. 물론 근육이 아니라 체지방이었다. 다행히도 군생활 막판에 꾸준한 유산소 운동과 절제된 식습관으로 체중을 감량했지만, 정말 체중만을 감량했을 뿐 체지방을 감량했던 것은 아니었다. 볼록 튀어나온 나의 뱃살을 보면서 체중계에 보이는 숫자가 목표가 되어서는 안 된다고 생각했다. 군대에서 체중을 감량했지만 여전히 남아있던 뱃살이 내게 큰 부담감으로 다가왔다. 거울에 비친 내 모습을 보며 '이제 이 뱃살을 마저 빼야겠다.’ 이 시기가 내게 보디빌딩 태동기였다. 운동에 소질은 없지만 그래도 꾸준히 한다면 뱃살은 빠지지 않을까 하는 생각이었다.
운동을 시작한 이후 뱃살도 들어가고 어느 새 운동한 흔적이 몸에 하나 둘씩 보이게 되었다. 마침 그 시기에 나는 공무원을 그만두는 시기였다. 인생에서 남들이 원하는 일보다는 내가 하고 싶은 일을 하는 것 나다움을 찾는 여정이 아닐까? 하는 고민을 하던 찰나 바디프로필 촬영이라는 버킷리스트를 이뤄 보고 싶었다. 소위 먹는 것까지가 운동이다 라는 말이 있는데 나의 경우 이전까지는 운동하더라도 운동은 운동에서 그쳤다. 하지만, 바디프로필 촬영을 준비하면서 먹는 것까지 운동임을 알게 되었다. 단백질 목표치를 정하고 목표량에 맞게 단백질을 섭취하기 위해 닭가슴살을 먹는 습관이 시작되었다.
두려워했던 운동을 취미로 삼기까지…
팀블라인드를 알게 된 계기
팀블라인드로 옮기기 전에 근무했던 회사에서는 Spring boot, Vue를 이용한 작업을 주로 맡게 되었는데 그중 Vue 작업을 많이 하게 됐다. 그러다 보니 자바스크립트를 많이 공부하게 되었다. 프로젝트를 진행하면서 서버가 Node.js로 구성된 프로젝트도 맡았었다. 팀에서 담당하는 프로젝트를 문맥 교환이 자연스러울 정도로 익숙해져야 한다는 정책에 따라 나는 거의 3개월 주기로 다른 성격의 프로젝트를 접하게 되었다. 그런데 기술 스택이 조금씩 차이가 있었다. 백엔드는 Spring을 쓰는 프로젝트도 있었지만 Node.js 기반의 프로젝트도 있었다. 두 가지 영역을 왔다갔다 하면서 작업해야 하니 Java까지 사용해서 두 개의 언어를 다루는 것보다는 하나의 언어를 다룰 수 있는 Javascript 진영에 마음이 끌렸다. 백과 프런트 둘 다 구현하면서 한 가지 언어만 신경쓰면 되니까!
당시 근무했던 SI 회사 분위기
그런데 SI 업무 특성상 갑작스러운 신규 프로젝트를 팀에서 담당하게 되고 내가 담당하진 않았지만, 인원이 모자라게 되면서 급하게 투입되었다. 그리고 주말에도 불려나가게 되었다. 회로를 불태우는 평일을 위해 주말엔 쉬고 싶었는데 마음대로 안 나갈 수 있는 상황은 아니었다. 회사에서는 불가피한 업무에 양해를 구한다는 느낌보다는 필요하다면 당연히 나올 것처럼 생각했다. 그리고 격무에 시달리는 동료들의 코드 품질이 나날이 하락하는 것을 체감했다.
아직까지도 이 이후로 5중으로 둘러싸인 반복문을 본 적은 없었다. 당시에는 내 두 눈을 의심했다. 얼마나 프로젝트 기한이 촉박했으면 이런 선택을 할 수밖에 없었을까? 그런데 당시에는 내가 신입사원이니까 5중 반복문을 하나의 덩어리로 인식하는 데 훈련이 필요하지 않은 걸까? 하는 생각까지 해봤다. 지금 시점에서 생각하면 얼마나 우스운 일인지… 이때부터 커리어에 대한 진지한 고민을 시작했다. 이 프로젝트가 마무리되더라도 똑같은 일이 반복될 것 같았다. 그렇다면, 성장할 수 없는 데다가 코드를 리팩터링하지 않고 만드는 것에만 급급한 습관이 내 몸에 스며들 것 같았다.
사람 일은 어떻게 될지 모른다는 불안감에 틈틈이 개발자 시장 상황을 살피던 중 우연히도 팀블라인드 회사를 알게 되었다. 당시 근무하던 회사와 비슷한 기술 스택을 사용하고 있었다. Vue.js를 사용하고 Node.js 기반으로 작업하고 있으니 이직하더라도 도메인 학습만 된다면 바로 업무를 할 수 있을 것 같다는 기대감이 들었다. 그리고 회사가 만들고 키우는 서비스를 보면서 ‘나도 서비스에 애착을 가지면서 성장할 수 있지 않을까?’ 하는 기대를 품게 되었다. 결국 나는 팀블라인드에 서버 개발자(Node.js)로 지원하여 입사하게 되었다.
팀블라인드에 합류하기로 한 이유
직장 문화 현대화를 위한 사명에 동참
블라인드 커뮤니티에서는 내가 소속한 회사가 보이고 익명 사용자로서 소통할 수 있는 공간을 제공해 준다. 이 공간에서 사내 부조리한 일들이 어떻게 벌어졌는지 공론의 장이 된다. 그중 몇몇 충격적인 사건은 몇 번 방송을 타거나 뉴스 기사로 올라오기도 한다. 파급력이 커지면서 회사원이라면 대개 이 커뮤니티에 가입할 것이다. 나는 공직자로 생활한 적이 있는데 2010년대에도 고위직 공무원들이 “관습”을 핑계로 부조리한 일을 저지르는 것을 봤다. 1980년대에 머물러 있는 퇴폐적 직장 문화가 현대화되길 바라는 마음이 있었던 것 같다. 그래서인지 이 회사가 계속해서 눈에 밟혔고 내가 구성원으로 합류하게 된다면 좀 더 나은 사회를 만드는 데 기여할 수 있을 것 같았다. 물론 혹자는 익명이라고는 하지만, 지켜질지에 의문을 품는 사람들도 있을 거다. 나도 그런 생각을 품었던 적이 있다. 실제로 공직에서는 익명으로 설문을 진행하지만, 사실 추적하면 다 나온다는 우스갯소리가 돌기도 했다. 그만큼 익명성이 지켜지기 힘들기는 했다. 이런 구시대적 사회를 경험하고 나온바, 나도 그 부분이 걱정됐다. 하지만 블라인드는 “잃어버리면 안 되는 것은 가지고 있지 않는다.”는 보안 철학을 가지고 있었는데 그걸 믿어보기로 했다. 경험해 보니 실제로도 그랬다.
나에 대한 뜨거운 관심
정말 신기한 것은 2021년까지 나에게 가장 많은 관심을 보여주었던 회사였다. 인터뷰에서는 같이 일하게 될 팀원 분들이 들어오셔서 이런 저런 물음을 주셨다. 나의 이력서에 밑줄까지 쳐 오시고 궁금한 점을 하나 하나 물어 주셨다. 누군가는 “그게 뭐 대수라고”라고 생각할 수도 있다. 하지만, 내가 공무원을 했다가 때려 치우고 첫 커리어를 내딛기 위해 개발자로서 면접장에 들어섰는데도 이걸 안 물어보는 회사도 있었다. 서로의 관심이라는 것을 중요하게 느꼈던 터라 팀블라인드에서도 내게 관심을 가져주지 않으면 어떡할까 하는 걱정도 있었다. 그런 걱정이 무색하게도 인터뷰에서는 블로그에 쓴 글까지 꺼내 질문해 주셨는데 사람을 뽑는 것에 진심이라는 것이 느껴졌다. 심지어 블로그에 왜 글이 안 올라오냐는 질문까지 받았다. 지원자일 뿐인데도 이렇게 많은 준비를 해 오신 것이 인터뷰 자리에서 보였다. 긍정적으로든 부정적으로든 일을 하는 데 동료가 영향을 가장 많이 끼친다고 생각했는데 팀블라인드 동료와 함께라면 일상이 즐거울 것 같았다. 실제로도 그랬다.
입사 첫 날의 감동과 기대했던 점
그동안 일방적인 합격 통보 메일과 입사 안내 메일은 받아봤어도 이렇게 회사 구성원 한 분으로부터 한 사람을 대한다는 느낌을 받아 본 경우는 처음이다. 오퍼 수락 후 친절하게 챙겨주시는 직원분의 따뜻한 메일에 입사하기로 나의 결정은 공고해져 간 채 입사 첫 날이 다가오게 되는데…
팀블라인드에 입사하기까지…
과거의 선택은 현재의 나를 만들었다
모두가 처음엔 장밋빛 미래를 꿈꾸듯 나 또한, 주무관으로서 펼쳐질 희망찬 미래만 꿈꿨고 이면에 숨겨진 모습을 바라보기에는 통찰이 부족했다. 이전에 공무원을 그만두고 개발자가 된 이유에서도 적었지만, 다시금 회고해 본다. 당시에는 "왜 공무원을 그만 두나? 너 문제 있어?"로 해석할 여지가 아주 아주 많았기 때문에 풀지 못했던 사연까지 구구절절...
하고 싶지 않은 일 내려놓기
하고 싶은 일을 하려면, 일단 하고 싶지 않은 일부터 내려 놓는 과감한 결단이 필요하다. 생계가 걸린 문제이다 보니 쉽게 용기내기 어려운 문제임이 분명했다.
공무원을 그만두고 싶었던 이유
대입 시험은 원하는 만큼의 성적이 나오지 않더라도 점수에 맞춰 대학을 갈 수는 있지만, 공무원 시험에서는 상위 20%에 들지 못하면 탈락이다. 그렇게 어려운 시험에서 합격해 놓고서 왜 나는 그만둬야 했을까?
1. 적성에 맞지 않았던 사실상 사무직 업무
적성에 맞지 않아도 잘할 수 있으니까 업으로 삼아도 괜찮겠지 했던 생각은 굉장히 잘못되었다는 것을 깨달았다. 시간은 째깍째깍 흘러가지만, 일이 너무 하기 싫었다. 개발자가 개발만 잘한다고 다가 아니듯 사무직도 사무자동화 프로그램만 잘 다룬다고 해서 다가 아니었다.
개발자 커뮤니티의 익명의 누군가로부터 "개발은 취미일 때 즐겁다"는 조언을 맥락없이 받아들인 내 탓이 크다. 물론, 마감 기한 안에 무리한 요구사항을 쳐 내야만 하는 기업에 근무했다면, 스트레스 받는 것이 맞다. 나도 SI에 다닐 때 그런 비슷한 고민을 했던 적이 있으니까. 하지만, 돌아 보면 적어도 개발 자체가 싫었던 적은 없었으며 인생을 살면서 개발을 업으로 삼았을 때 제일 낙이 컸다. 지금도 그렇다.
2. 수직적인 조직 문화와의 갈등
수직적인 문화를 체험하고 싶다? 그렇다면 살아있는 레거시 박물관인 공직의 문을 두드리면 된다
함께 하고 싶은 시니어 동료의 부재
개발자가 적성에 맞는 지금도 체력이 달려서 일이 힘든 경우가 있다. 그렇지만, 함께 일하는 동료가 좋고 문화가 좋아서 이건 크게 문제되는 일이 아니다. 내가 알아서 컨디션 회복해서 열심히만 하면 해결되기 때문이다. 공무원으로 재직했던 때에도 타 부서 동료에게 무시당하지 않도록 잡아주시던 든든한 과장님이 계실 때가 있었다. 일이 힘들더라도 보람차고 재미있었다. 군대에서 근무했을 때부터 전산과 관련된 보직은 거의 일반적으로 암적인 면을 떠올릴 때의 슈퍼 을의 이미지라고 생각하면 된다. 타 부서 동료의 전산 장비가 고장나면 가져다 주는 것이 일반적이었다. 그런데 당시 과장님은 타 부서가 직접 찾아오라고 바꾸셨고 곤란한 내부 민원 전화를 받으면 당신에게 돌리라고 하실 정도로 파격적인 분이셨다. 그런데 안타깝게도 내가 임용된 지 얼마 되지 않아 과장님이 다른 부서로 발령을 받으심과 함께 이 문화는 사라졌다.
나다움을 찾기 위한 여정
군무원에 도전하기
군무원에 도전하기 전, 나의 상태는
“개발자는 수명이 짧아서 40세가 되면 은퇴해야 된다더라. 지금 상황에서 취업도 잘 안되고 야근만 줄창 해”. 개발이 정말 재미있지만, 주위에서는 “개발은 취미로 해야 재미있다”는 이야기를 현실 세계에서도 종종 들었고 인터넷 개발자 커뮤니티에서도 많이 봤다. 우스갯소리로 개발자 커리어의 끝은 치킨집 사장님이라는 이야기도 있었으니까. 개발이 잘 안될 때 치킨집 사장님한테 물어보라는 이야기까지 떠돌았을 정도니까. 시장 상황이 좋지 않다는데 섣불리 도전하는 것이 꺼려졌다. 그런 상황에서 이러한 이야기를 외면하고 개발자가 되기에는 용기가 부족했다. 더더군다나 나는 급격한 변화와 새로운 도전을 그다지 좋아하지는 않는다. 개발자가 되기 어렵다고 하는데 그렇다면, 대학교 졸업 이후에 무슨 일을 할 수 있을지 고민하는 시간을 보냈다. 고민 끝에 “공무원”을 생각해 보기로 했다. 2015년 당시만 하더라도 공무원이라고 하면 인식이 굉장히 좋았었는데 이 기류에 나도 영향을 좀 받았다.
군무원 도전 과정과 군무원을 선택한 이유
연필을 그만 잡는 것이 꿈이었다. 학창시절, 대학교 장학금을 노리기 위해 과 수석을 위해 피말리는 공부를 했던 적이 있다. “이번에 1등을 하지 못해서 전액 등록금을 받지 못하면 어떻게 하지?” 하는 두려움을 이겨내는 지난한 싸움을 해야만 했다. 이런 공부보다는 성장을 위한 공부를 하고 싶었다. 그래서 개발자 되기를 꿈꿨지만, 냉랭한 현실 앞에서 용기를 내기에는 부족했었나 보다. 그렇게 나는 연필심을 부러뜨리는 용기 대신, 다시 연필을 잡고 최상위권을 노려야 하는 군무원 임용 시험에 도전했다. 그리고 군대라는 곳은 한국 대부분 남성들에게는 익숙한 장소이기도 하고 나도 다시 군에 “민간인” 신분으로 들어간다면 일은 가장 잘할 수 있겠다는 (근거 없는) 자신감이 있었다. 군인은 내 직업관에 맞지 않지만, 민간인으로 들어간다면 해 볼 만하지 않을까? 하는 생각이었다.
사실 처음부터 군무원을 생각했던 것은 아니다. 공무원이 되기 위해서는 여러 가지 과목의 시험을 봐야 하는데 “영어”라는 과목의 장벽이 높기 때문에 단기 합격을 위해서는 영어 시험을 보지 않는 군무원이 유리했기 때문이다. 엄연히 따지자면 영어를 완전히 배제하는 것은 아니다. 토익, 토플, 지텔프(G-TELP) 등의 공인 영어 성적을 증명하여 대체한다. 그래서 당시에는 전산 직렬은 한국사, 국어, 컴퓨터 일반, 프로그래밍언어론 이렇게 4가지를 응시하면 됐다. 당해 시험에서는 프로그래밍언어론에서 과락 때문에 탈락하는 지원자가 상당했는데 다행히도 나는 공부를 시작한 지 약 5개월 만에 합격을 거머쥘 수 있었다.
군무원 생활하기
둥지 떠나 생활하기
내게 기회가 생각보다 빠르게 찾아왔다. 최종으로 발령 받은 곳은 충북 영동군에 있는 군 부대였다. 충청북도가 어디 있는지는 아는데 충주시, 제천시, 음성군, 진천군, 단양군, 괴산군, 청주시, 보은군, 옥천군까지는 알았는데 영동군? 너무 생소했다. 다른 사람들에게 위치를 설명할 때도 직접 영동군이라고 말하기보다 전라북도 무주군 위, 김천시 왼쪽이라고 설명하는 것이 빨랐다. 서울에서도 꽤 멀리 떨어진 지역이어서 도시 지역을 떠나 생활한다는 것이 조금 어렵게 느껴졌다.
온보딩
신병이 입대하면 신병교육대대에서 5주간 훈련을 받듯, 군무원에 임용되면 육군종합행정학교에서 군무원 기본 교육을 받고 직렬별 학교에서 전공 교육을 받아야 했다. 나의 경우 육군종합행정학교에서 군무원 기본 교육을 받은 뒤 바로 정보통신학교에 입교해서 교육을 받았다. 연필을 그만 잡는 것이 꿈이었던 내 포부와는 다르게 이곳에서도 우수한 성적을 거두면 좋겠다는 생각이 들었다. 열심히 하지 않는다고 문제될 것은 없었지만, 그래도 매 순간 후회하고 싶지 않았던 나에게는 최선을 다하는 것만이 방법이었다.
군무원 도전에서 퇴직까지 짤막한 여정
아직 만 1년의 시간을 채우려면 몇 달의 기간이 필요하지만, 그래도 입사 후 몇 달간 많은 경험치를 얻어냈다는 판단이 들어서 글을 써보겠다고 다짐을 하게 되었다.
그동안 개발을 혼자서만 공부하면서 성장을 했었는데 현업에서 어떻게 경험치를 쑥쑥 키우게 되었는지에 관해 회고해보고자 한다.
1년차 개발자의 성장 회고
1. Javascript 언어의 이해
현업에서는 Front-end는 자바스크립트를, Back-end는 Java 언어를 사용하는 환경에서 작업을 하고 있다. 풀 사이클로 업무를 수행하지만, 보통의 경우에는 Javascript를 이용하여 Front-end단의 작업을 수행하는 이슈가 훨씬 많다. 그런데 생각보다 토이 프로젝트로 작성했던 프로젝트가 아닌 이상 SPA로 만든 프로젝트 소스 코드를 확인하는 것은 이번 회사가 처음이었기 때문에 조금 긴장이 섞였었다.
모던 Javascript 튜토리얼을 통한 학습으로 기본기 다지기
물론 하나의 이슈를 작업할 때 모든 소스코드를 훑어보는 것이 아니라 필요한 문서(.js)만 살피면 되는 것이지만, 그래도 이러한 문서들이 낯설게 느껴지면 안 되겠다고 생각하여 모던 Javscript 튜토리얼을 학습해 가며 소스코드를 병행해 보기 시작했다. 그런데 확실히 자바스크립트 소스 코드에 많이 익숙해져서인지 이제는 소스코드를 읽을 때 예전보다는 좀 더 빠른 속도로 읽어내려갈 수 있었다.
프로토타입 언어에 관해 알아가기
자바스크립트는 객체지향이라는 패러다임도 공유하지만, 확실히 자바와는 다른 무언가가 있었다. 프로토타입 기반 언어라는 것을 몰랐던 것은 아니었지만, "자바에서는 클래스였다면 자바스크립트는 프로토타입기반의 언어이다."라는 정의 정도만 말할 수 있을 정도였다. 그런데 지금은 이 프로토타입 기반의 언어는 클래스와는 어떠한 차이가 있는지에 관해 조금은 설명할 수 있다.
this 이해하기
예전에는 강사가 화살표 함수를 쓰니까 따라 쳤던 기억이 난다. "ES6에서는 () => {...}와 같이 간략하게 적을 수 있으니까 화살표를 선호하는구나" 정도에서 멈췄었다. 물론, 지금도 완벽하게 알고 있다고 자신할 수는 없는 상황이지만, 적어도 해당 Context의 내용을 공유하기 위해서 간편하게 화살표 함수를 사용한다는 것 정도까지는 설명할 수 있다.
예를 들어, obj가 가리키는 {} 객체 내부에서의 this는 객체 자신을 가리킨다. obj에 say라는 메서드가 있다고 가정하고 이곳에서 console에 this.name을 출력하고자 한다면홍길동 님이 될 것이다.
1년차 개발자의 성장 회고