brunch

You can make anything
by writing

C.S.Lewis

by 김포터 Apr 08. 2021

지나간 모든 것에는 그 나름의 의미가 있다

비전공자의 개발 공부 이모저모

 비전공자로 프로그래밍을 공부해본 적 있는가?

  프로그래밍을 배우는 것이 일종의 붐처럼 불고 있는 느낌이다. 어떠한 근거도 없이 내 멋대로 한 추측을 꺼내 보자면 개발자의 채용 공고가 확연히 증가하고 있기 때문이지 않을까. 물론 이에 대한 어떠한 근거는 없지만, 내가 프로그래밍 전선에 뛰어들어야겠다고 마음먹은 이유도 여기에 해당한다.


 무언가 기술을 배우면 약간의 삶이 윤택해지지 않을까 하는 미약한 바람이 있었기 때문이다.


 그래서 나는 약간의 억지와 합리화를 바탕으로 프로그래머(혹은 기술직)로 입사하는 것을 끝으로 일본 취업을 마무리 지었다.


 물론 SI 업계여서 보다 문과인 내가 취업하기 쉬웠던 환경도 있지만, 아직도 일본 세태에 만연한 “입사 후 공부하면 된다”는 인식이 한몫한 덕택도 작게나마 있었다고 생각한다. (하지만 정말 이건 SI 업계라 가능했던 것이라 의심치 않는다, 유명 기업을 보면 요즘 일본도 코딩 테스트나 포트폴리오를 제출해야 하는 곳도 엄청 많다.)

 아무튼, 나는 그렇게 프로그래머의 길을 한때 (스치듯 아주 잠깐) 꿈꿨던 적이 있다. 지금부터는 그 기간 동안 어떤 여정(이라고 하기에는 너무 과한 듯하지만)을 거쳤는지 짧게 이야기해보고자 한다.




 JAVA와 ORACLE


 내가 가장 먼저 처음 배운 언어는 이 두 개였다. JAVA는 쉽게 말해 “객체지향프로그래밍 언어로서 C/C++에 비해 간략하고 쉬우며 네트워크 기능의 구현이 용이하기 때문에, 인터넷 환경에서 가장 활발히 사용되는 프로그래밍 언어(출처 : 네이버 두산백과)”라고 한다. 이걸 택한 이유는 아주아주 단순하다. 입사 예정인 회사에서 이 언어를 배우라고 했기 때문이었다. 


 나는 오히려 이렇게 회사에서 지정해주는 것에 감사했다. 물론 이는 회사의 이해타산적인 사고와 행위에서 비롯된 결과겠지만, 프로그래밍의 ‘ㅍ’도 모르는 내 입장에서는 사실 어떤 언어로 도전하면 좋을지 어려웠던 것은 사실이었다. 노베이스로, 어떠한 배경지식도 없이 무턱대고 언어를 선택하기엔 너무도 두려운 요소들이 많았다. (물론, 보통 처음 프로그래밍 언어를 공부한다고 하면 Python을 많이 추천한다. 경험해본 바에 따르면 정말 정말 언어 구조가 굉장히 심플하다.)


 그렇게 나는 첫 프로그래밍 언어를 JAVA로 입문했다.


 JAVA 이외에도 데이터베이스 관련 언어 중 하나인 ORACLE SQL도 함께 배울 것을 명받았다. (더 정확히는, 이전 브런치 글에서도 언급한 바기 있는데, 이 회사는 OJT의 일환으로 본사 직원이 매달 주기적으로 한국에 방문해서 프로그래밍 및 비즈니스 매너 교육을 해주었다. 이때 이런 언어가 있으며 배워야 한다는 이야기를 듣고, 실제로 다 같이 배워보기도 했다.) 


 그렇게 3개월 정도 기초만을 다지고 있다가, 입사일이 밀리면서 언제 입사가 가능한지 알 수 없게 되자 자연스럽게 이 언어에서 점차 멀어지게 되었다. 약간의 강제성이 없으면 쉽게 행동으로 옮기기 힘들어하는 내 성향상, ‘입사’라는 강제성이 현실과 멀어지다 보니, 관심도도 낮아지게 된 것이다. (물론 입사일이 밀렸다고 해서 바로 그만둔 것은 아니었다. 나름 온라인 강의도 내돈내산하면서 지속해서 공부를 해나가려고 했다. 하지만 점차 심화하는 내용을 독학으로 따라잡기에는 내 역량은 그리 높지 않았다.) 


 그런데도 미약하게나마 감상을 적어보자면 솔직히 나쁘지 않았다. 프로그래밍 언어의 정석이라고 조심스럽게 표현하고 싶다. 아마 그렇게 느낄 수밖에 없는 이유는 지극히 개인적인 영향이 있기 때문이라고 생각한다. 나는 JAVA를 통해 프로그래밍의 A to Z를 익혔다.(Z보다는 한 C 정도가 적당하겠지만, 통용되는 언어로 표현하자면 그러하다.)  다시 말해, int가 무엇이며 변수가 무엇이며 하는 지식도 이 언어를 통해 처음 배운 것이다. 그렇기 때문에 더욱더 정석이라고 칭하게 되지 않았을까?


 ORACLE SQL도 JAVA와 마찬가지로 3개월 정도하고 그 수명을 다했는데도 개인적으로는 JAVA보다 더욱 좋아했었다. (하반기 때는 SQLD 자격증 시험도 신청해서 볼 정도였으니까. 물론 떨어졌지만!) 문법을 입력하면 그대로 데이터 테이블이 쉭쉭 변하는 모습에 묘한 뿌듯함을 느꼈던 모양이었다. JAVA는 잘 모르겠지만 SQL은 조금 더 공부하고 싶은 의향이 들기까지 했다.



 

HTML/CSS/JS


 많은 사람이 알듯이 HTML/CSS는 프로그래밍 언어라 칭하기 어려운 부분이 분명 존재한다. 그런데도 이 글에서는 쉽게 언어라는 표현을 하도록 하겠다. 그 부분은 양해 바란다.


 JAVA에 지쳐갈 무렵 회사에서 또 다른 과제를 부여했다. HTML/CSS/JS를 무료로 배워볼 수 있는 교육 사이트에서 해당 언어들을 배우라는 내용이었다. 이번에도 마찬가지로 그렇게 강제적으로 접하게 되었다.


 해당 사이트에서 알려주는 내용은 정말 기초적인 내용이었다. 하지만 확연하게 말할 수 있는 것은 생각보다 프론트엔드 쪽의 언어를 좋아했다는 것이다.(더 정확하게는 내가 적은 것들이 즉각적으로 혹은 시각적으로 반영되는 것을 좋아했던 모양이다. 거기서 뿌듯함을 얻는 성향이라는 것을 새삼 발견하는 기회가 되기도 했다.) 회사 과제를 다 마치고 주저 없이 온라인 강의를 끊었다.


 HTML/CSS 은 심화하면 할 수록 그 속도에 따라가지 못해 헤매는 나를 발견할 수 있었다. 하지만 배우면서 굉장히 “즐겁다”라는 생각을 들 수 있게 해주었던 언어였다.(바로 다음 파트에서 설명하겠지만 나만의 기능을 만들어보는 시간이 생겨 스스로 그림을 그리며 HTML/CSS를 구현했던 적이 있다. 이 과정에서 이것들 또한 결코 만만히 볼 수 있는 애들이 아님을 정말 뼈저리게 느꼈다.)


 내가 허들을 느낀 부분은 JS 쪽이었다, 그 당시 아직 JAVA에 익숙해져 있던 내게 JS의 문법은 낯설기 짝이 없는 것이었다. 물론 프로그래밍 언어가 그러하듯 논리 구조가 완벽히 다르지 않았으나, 1:1 매치가 완벽히 되는 언어는 없듯, 새로 배워가야 할 것이 버겁게 다가왔다.


나는 온라인 영상을 따라 하기 급급했고, 실제로 강사님이 말씀해주시는 그 어떤 것도 오롯하게  내 것으로 만들지 못했다. 이 과정에서 나는 성취감을 잃었고, 그와 동시에 흥미도 잃게 되었다. (JS가 멀어지니 HTML과 CSS도 함께 멀어졌다.)



 

Python/JQuery


 일본 취업을 할지 말지를 고민하게 되었을 때, 사실 나는 가지 않는다는 쪽으로 마음이 많이 기울어져 있었다. 다만 한국에서 취업을 할 수 있을지 불안했던지라 함부로 일본 회사에 가지 않겠다고 선언하는 것은 쉽사리 시도할 수 없었다. 하지만 하나씩 정리해나가자는 마음은 한쪽에 계속 가지고 있었다.


 그래서 일본 취업을 했다는 어떠한 증거를 갖고 싶었다. 이러나저러나 나는 일본 회사를 가지 않겠다고 선언하는 순간 대학 졸업으로부터 공백기가 생길 수밖에 없고 이 기간 동안 내가 공부한 것들을 증명해줄 어떠한 것이 필요했다. (형태는 상관없었다. 사실 더 정확히는 마음 안정제가 필요했다. 기다렸던 몇 개월 - 합격한 그 시점을 생각한다면 약 1년 - 이라는 시간이 절대 헛되지 않았음을 나 스스로 증명하고 싶었다.)


 그때, 한 프로그래밍 학원 광고를 보게 되었다. 3개월 동안 매주 2일 수업을 들으면서 프론트~백~서버까지 다 구현해볼 수 있다는 내용의 것이었다. 지금까지는 단편적으로 배워왔던 경험을 하나로 응축해줄 수단이 필요했고 나는 이 광고가 내 현 상황에 무척이나 적합한 것으로 판단해, 바로 학원을 등록했다.


 거기서 배운 것이 바로 Python과 JQuery이다. 이 두 개의 느낀 점은 이 단어 하나로 설명할 수 있다. “간단하다.” (이는 문법이 간단하다는 것으로 프로그래밍 언어 자체가 쉽다는 의미는 아니다.)


 Python이 프로그래밍 초보자들에게 배우기 쉬운 언어라고 하는 것도 이해할 수 있었다. JAVA가 갖는 특징들을 덜어내고 덜어내서 사용성을 높인 느낌이었다. (그 당시만 해도 JAVA가 더 친숙한 상태였기 때문에 무의식적으로 JAVA 문법을 가져다 썼다가 에러라는 빨간 줄 표시가 나타나 당황한 적도 있다.) JQuery는 JS의 단축형 느낌인데, 그러다 보니 써야 하는 문법 자체도 간결해졌다. 이와 반대로 덕분에 JS에 대해 조금 더 이해할 수 있던 계기가 되기도 했다.


 하지만 개인 프로젝트에 돌입하면서 꽤 혼란한 상태가 지속했다. 이 프로그램은 몇 주간은 모든 것들(프론트~백~서버)의 기초를 배우고 이후에 내 프로젝트를 하면서 한 번에 실현해보는 커리큘럼이었는데, 막상 배운 내용을 끄집어 내려고 하면 머리가 백지 상태가 되었다. 정말이지 무사히 제출기한 내에 개인 프로젝트를 제출할 수 있었지만, 이것은 멘토님의 서포트가 없었다면 불가능했을 것이다.(멘토님 지분이 이미 내 지분을 아득하게 넘어섰다. 그래서 “내” 프로젝트라고 칭해도 되는 것에 대한 의문은 남는다.)




나의 작고도 짧았던 개발일지는 이렇게 막을 내린다. 


 지식인처럼 논했지만 사실 이 글은 나의 짧은 개발 공부 경험 후기를 적어놓은 것에 불과하다. 여기 적힌 내용이 실제로 그러하기보다 나의 감상문에 지나지 않는다는 점을 놓치지 않았으면 좋겠다.(너무도 얕은 지식을 아는 척하며 적은 것 같아 그것도 참 기분이 그렇기는 하다.) 


 그래, 비전공자로서 개발자 도전은 명백하게 실패했다.제대로 배워본 경험이 있는 것도 아니었고, 모든 지식이 파편화된 채, 이어지지 못하고 그대로 사라져버리고야 말았으니까. 그런데도 깨달을 수 있던 것은 개발이라는 것이 나에게 큰 울림으로 다가오지 못했다는 것이다. 


 조금 더 배워봤다면, 나 스스로 무언가를 이뤄내 보았다면 달라졌을까 하는 생각이 들지 않는다면 거짓말이겠지만, 개발에 대한 꿈은 한동안 접어두기로 했다. 앞으로 미래는 어떻게 하면 될지 아무도 모르기에 함부로 단정짓지는 않겠지만 근 몇 년 이내에는 결코 펼쳐보지 않지 않을까 생각한다. 


 일본 취업을 계기로 개발에 관심을 가질 수 있던 것은 큰 보람이라고 생각한다. 미약하지만 어쨌든, 나에게 개발의 기초 지식 부스러기 정도는 줄 수 있었으니까. 

  

이전 06화 낡은 종이는 미련 혹은 추억을 싣고
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari