컬처핏 면접을 준비하면서 ‘내가 왜 이 일을 하게 되었을까’를 정리하다 보니, 결국 내가 개발(소프트웨어 엔지니어링)을 시작하게 된 과정 자체가 지금의 나를 꽤 잘 설명한다는 생각이 들었다. 그래서 여러 경험을 돌아보며 블로그 글로 기록해두기로 했다.
첫 Hello World
초등학교 6학년 때, 일주일에 하루 있던 컴퓨터 수업에서는 한컴 타자 연습을 시켰다. 초반에는 한글 두벌식을 연습하고 이후에는 알파벳 쿼티를 연습했던 걸로 기억한다. 나는 영타가 빠르다는 이유로 주말 컴퓨터 특강에 참여하게 되었다. 그곳에서 처음으로 C로 Hello, World!를 찍어봤다. 당시 검은 화면에 나오는 흰색 글자를 보면서 깊은 인상이 남지는 않았지만, 당시에 “저 기계가 내가 원하는 대로 동작하게 만드는 게 가능한 일이고, 그걸 실제로 하는 사람들이 있다”는 인식 정도는 가졌던 것 같다. (정확히 기억이 나지는 않지만… 파워포인트로 게임을 만드는 인터넷 카페 같은 곳에서도 놀았었다)

한국에서 아이폰이 정식 발매되기 시작됐을 때부터 아이폰을 사용한 가족들 덕분에 애플 제품을 접할 기회가 종종 있었다. 애플이라는 회사와 그 회사가 만드는 기계들을 둘러싸고 한창 UI와 UX라는 단어가 많이 들릴 때였다. 자연스럽게 ‘ 사용자 경험 (UX) ‘이라는 모호하고 생소한 단어에 관심이 생겼다.
희망 진로
그 영향이었는지 중고등학생 시절의 희망 진로는 UI/UX 디자이너였다. 포토샵으로, 고등학교 졸업 이후에는 Sketch로 기존 제품에서 마음에 들지 않는 UI를 내 의견을 담아 프로토타입으로 새롭게 그려보며 놀았고, 이런 일을 하는 직업을 가졌으면 좋겠다고 생각했다.

딱히 영양가가 많지는 않은 일이었던 걸로 기억하지만 이런 이미지를 만들면서 놀았다. (아직 Behance에 이미지 몇 개가 더 남아있는 걸 확인했지만 차마 여기에 링크는 못 하겠다)
다만, 내 의견을 담은 프로토타입이었다고는 해도 ‘왜 내가 만든 건 실제로 작동하지 않는 프로토타입으로만 남아야 할까’ 하는 아쉬움은 늘 있었다. 이런 이유로 이때부터 소프트웨어 개발과 조금씩 친해지고, 첫 번째 index.html도 만들어 보고 했던 것 같다.
디자인 시스템이라는 개념에 처음 관심을 가지게 된 것도 이때쯤이었다. 구글이 Android 롤리팝과 함께 머티리얼 디자인이라는 새 디자인 랭귀지를 공개하던 때였다. Dribbble에 있을 법한, 이미지 하나로 소비되는 예쁘기만 한 프로토타입을 넘어, 디자인에 ‘규칙’을 부여하고, 그 규칙 안에서 구성 요소들을 통일하고 정리해둔 게 인상적이었다.
그때까지만 해도 나는 계속 (기술 친화적인) UI/UX 디자이너가 되고 싶다고 생각했다. 하지만 중고등학교 때의 장래 희망이 대학 전공으로 이어지지는 못했다. 고등학생 때 과학 과목들에 막혀 문과를 선택했고, 디자인을 전공하기 위해 예체능 입시를 준비한 것도 아니었다. 그 결과, 비교적 잘했던 영어를 전공하게 되었다.
대학교에 입학한 이후에도 왜인지 막연히 디자이너가 될 것 같다고 생각했다. 그런데 군대에서 생각이 바뀌었다. ‘프론트엔드 엔지니어로 일해봐도 좋겠다’는 생각이 들었다. (군대 얘기만 날마다 하는 사람처럼 구구절절 쓰고 싶지는 않지만 중요한 내용이다)
도구를 만드는 경험
군대에서 나는 컴퓨터 앞에 앉아 교대 근무를 했다. 컴퓨터로 하는 업무는 실시간성과 정확성이 중요한 일이었고, 그와 동시에, 나와 같은 시간에 컴퓨터 앞에 앉아 있는 다른 사람들과 빠르게 협업하는 것이 중요했다.
2021년, 부대가 제공하던 업무 환경은 윈도우 7과 인터넷 익스플로러였다. 군대답게도 제공되는 플랫폼은 반쪽짜리였다. 그 플랫폼 위에서 실무를 하는 사람들은 예전부터 전해져 내려오던, 같을 일을 하던 사람들이 직접 개발한 다양한 도구들을 함께 사용하며 일하고 있었다. 업무 정확도와 협업 편의성을 향상시키고, 어느 정도 업무를 반자동화할 수 있도록 돕던 그 도구들은 대부분 비주얼베이직과 IE API로 만들어졌고, 당시에도 이미 몇 년째 쓰이고 있었다.
전역이 1년쯤 남았을 때, 상급부대에서 ‘업무 환경 개선’이라는 이유를 내세워 플랫폼을 완전히 교체했다. IE는 사용하지 못하게 되었고, 크롬 사용이 권장되는 환경이었다. 예고는 된 일이었지만, IE 사용을 가정하고 돌아가던 모든 도구가 하나도 작동하지 않는 상황을 실제로 마주하게 되었다. 모두의 업무 효율이 눈에 띄게 떨어졌다. 그 상황을 직접 경험하고 나니, ‘적어도 div를 가운데 정렬이라도 해 본 내가 해결해야겠다’는 생각이 들었던 것 같다.
인터넷이 제한된 환경에서 크롬 확장 프로그램을 두 개 만들었다. IDE나 제대로 된 개발 환경이 존재할 수 없었기에, 대체 왜 깔려 있었는지 모를 Notepad++로 몇 달 정도 개념 증명을 하고 기능을 붙였다. 크롬 기반으로 업그레이드된 플랫폼조차도 반쪽짜리였던 덕분에 해볼 수 있는 일과 넣어볼 수 있는 기능들이 많았다. 결과적으로는 기존에 사용하던 IE 기반 도구들보다 두세 배의 생산성을 제공하는 도구가 되었고, 내가 만든 제품은 부대에서 나처럼 컴퓨터 앞에서 교대근무를 하는 사람이라면 모두 사용하는 제품이 되었다. (자만같지만 이 점은 자신할 수 있다)
돌이켜보면 내가 자신들의 업무 생산성을 다시 예전처럼 높여줄 수 있을 것이라 믿고, 근무 시간의 일부를 개발에 쏟을 수 있게 해준 분들께 정말 감사하다. 그분들이 내가 만든 도구가 일하는 데에 큰 도움이 된다고 상부에 많이 간증(?)해 주신 덕분에 보상도 받을 수 있었다.
아무튼 이 경험 이후로 소프트웨어 개발에 대한 막연함과 두려움이 조금씩 사라졌다. 엔지니어링이 단순히 프로그램 만드는 일 이상이라는 점도 배웠다. 내가 컴퓨터로 만드는 무언가가 사람들이 실제로 겪는 불편함을 개선하고, 그들이 더 효율적으로 일할 수 있도록 도울 수 있다는 점을 체감하는 것도 정말 재밌었다.
디자이너가 되고 싶던 사람이 영어를 전공하고 개발자가 되어 버린 계기는 이 정도이다. 전역 이후 학교로 돌아온 뒤에는, 운 좋게도 웹 프론트엔드 엔지니어로서 멋진 분들과 함께 디자인 시스템 개발에 직접 참여해볼 수 있는 기회가 있었다. 한때 디자이너를 꿈꿨고, 또 남들이 쓰는 도구를 만드는 재미를 알아 버린 사람에게, ‘디자인 관련 도구 만들기’는 정말 즐거운 경험이(었)다. 덕분에 지금은 디자인-엔지니어링-도구 가 만나는 지점에 있는 무언가를 만드는 일이 내가 좋아하는 일이라는 약간의 확신이 있다.