-
내가 코딩을 하는 이유 (feat. 내가 왜 개발자가 되어야만 하는가)About me 2022. 8. 3. 22:59
나의 백그라운드
나는 컴퓨터 공학과를 졸업하지도 않았고, 컴퓨터 공학과 수업을 하나도 들어본 적도 없다.
나는 대기과학과라는 많은 사람들에게 생소한 학과를 졸업했고, 이 과를 선택했던 이유는 지구과학이 너무 재밌고, 지금 대기과학과의 전신인 모교 천문대기학과를 졸업하신 고등학교 지구과학 선생님을 존경했기 때문이었다.
대기과학과라는 학과는 취업이 쉽지 않은 학과인데, 입학 때부터 취업은 고려를 안하고 있었기 때문에 취업에 관한 준비를 대학 생활 내내 하나도 하지 않았었다.
나는 학계로 나아가 연구자가 되거나 교수가 되어 연구를 하는 게 꿈이었다.
운이 좋게도 2학년 때 좋은 지도교수님을 만나서 연구실 인턴을 조금 빨리 시작하게 되었는데, 2학년 때 교수님의 도움으로 파이썬으로 자료를 분석하는 일을 하면서 교수님을 도와드렸고, 3학년부터 논문을 쓸 준비를 하고 논문을 쓰기 시작했다.
자료를 코딩으로 분석하는 건 재밌었지만, 당연한 걸 수도 있지만 분석한 자료에서 새로운 사실을 발견하는 게 너무 어려웠다.
어찌저찌 교수님의 도움으로 논문을 써서 저널에 보냈지만, 해당 내용이 자료로 충분히 뒷받침 되는지 모르겠다는 답변과 함께 거절되었다.
하지만, 논문은 작성이 되어야 했다. 그래서 논문을 어떻게든 내려고 열심히 노력했었다.
그런데, 저널에서 보낸 내용에 너무도 공감이 되었다. 나조차도 해당 자료가 내 주장을 충분히 뒷받침하는지 설득이 안되었기 때문이었다.
하지만 새로운 논문을 쓸 주제를 찾는 것도 쉽지 않고, 연구 자체도 점점 즐겁지 않았고, 안그래도 포장하는 걸 잘 못하는데, 포장이라도 잘 해야됐기 때문에 논문을 쓰는 과정이 설득력이 없는 것 같은 주장을 어떻게든 설득력이 있어보이게 만드는 일처럼 느껴졌다.
하지만 그 길을 향해 달려왔기 때문에, 다른 길을 선택하는 게 쉽지 않았다.
그만 두려고 했을 때 교수님도 부모님도 말리셨고, 그렇게 대학원 진학까지 하게 되었지만, 결국 그만두게 되었다.
정말 순수한 호기심으로 재밌는 논문들을 읽고, 새로운 사실을 발견하는 건 정말 흥미로운 일이라고 생각하지만, 연구를 업으로 삼는다는 건 새로운 사실이 발견되었을 때만 논문을 작성하게 되는 게 아니고 새로운 사실을 발견 해야만 하는 경우도 있기 때문에 연구를 업으로 삼지 못할 것 같다고 생각했고, 조금이라도 일찍 다른 길을 찾는 게 나을 것 같았기 때문이었다.
하지만 학부 4년 내내 취업을 위한 준비를 하나도 하지 않아서 정말 막막하고 어떻게 해야하나 고민이 많았다.
안그래도 취업이 안되는 학과인데, 복수전공도 없고, 인턴도 없고, 자격증, 등등 하나도 없었다.
내가 취업을 할 수 있는 길은 전공보다는 실력을 우선 시 하는 직무를 선택하는 방법뿐이라고 생각했다.
코딩과의 첫 만남
고등학교 수업 중에 정보 수업이 있었는데, C언어를 공부하는 수업이었다.
이 때 처음으로 프로그래밍을 접하게 되었었다.
하지만 코딩과의 첫 만남은 그리 좋지 않았었다.
C언어로 시작했던 것이 문제였을 수도 있고, 모두가 다 처음에는 겪는 과정일 지 모르겠지만, 정말 수업시간이 외계어 시간인 줄 알았다.
아직도 기억나는 수업이 선생님께서 퀴즈를 내셨는데, C언어로 절댓값을 도출하는 함수를 작성한 코드를 보고 이게 무엇을 하는 코드인지 알아맞춰보라는 것이었다.
그런데 나는 한 학기가 지나도록 그 코드가 왜 절댓값을 도출하는 함수인지 이해를 하지 못했었다.
당연히 시험 점수도 처참했다.
그렇게 정보 수업이 마무리 되었고, 나는 평생 코딩을 안 하고 살 생각도 이 때는 했었다.
전공을 선택할 때도 이 점을 고려했었는데, 그 때는 몰랐다. 대기과학과가 포트란(고대 프로그래밍 언어) 시절부터 코딩 교육을 하는 학과이었다는 것을..
그런데 어떻게 코딩을 하게 되었는가
백그라운드에 살짝 언급했지만, 연구실 인턴을 시작하면서 감사하게도 교수님께 1:1 교습을 받을 수 있었다.
그리고 우리 학과는 포트란이라는 언어를 가르치는 강의를 수강하는 게 졸업 요건이었다.
1학년 때 교양 수업에서 컴퓨터공학과 친구를 사귀게 되었는데, 그 친구가 졸업한 고등학교에서 후배들에게 파이썬 입문 교육을 한다고 해서 따라가서 듣기도 했었고, 지도교수님께서 기상프로그래밍이라는 강의를 여셨기 때문에 포트란과 기상프로그래밍 수업과 교수님의 1:1 교습과 컴퓨터공학과 친구의 강의로 겨우겨우 프로그래밍의 문턱을 넘었다.
이 때에 되어서야 고등학교 때 이해가 되지 않았던 붕어빵과 붕어빵틀 비유와 퀴즈를 이해할 수 있었다.
그리고 코드의 퀄리티는 지금와서 생각해보면 정말.. 문제가 많지만 4학년 쯤에는 코드로 내가 원하는 대로 자료를 분석하는 건 마음대로 할 수 있는 수준이 되었다.
나는 왜 코딩을 좋아하는가
코딩으로 원하는 대로 동작하는 코드를 만들 수 있게 되면서 많은 일을 효율적으로 할 수 있게 되었다.
사람이 하면 실수도 많이 나올 수 있고 정말 시간도 많이 들고, 따라서 비용이 큰 일을 코드로 간단하게 만들기도 하고, 간단하게는 한글 매크로도 만들어서 교육 자료를 편집하는 일을 하는 시간을 단축하기도 하였다.
비록 돈을 까먹기만 해서 지금은 일단 멈춰두었지만 파이썬으로 업비트 api를 이용해서 자동매매 프로그램도 구글클라우드플랫폼을 이용해서 비용 없이 돌려보기도 하는 등의 재밌는 하고 싶은 일들을 마음껏 할 수 있게 되었다.
프로그래밍을 할 수 있으면 상상의 나래를 실체화할 수 있다.
그래서 나는 프로그래밍이 좋다.
앞으로의 계획
그래서 나는 개발자가 되어서 세상을 조금 더 효율적으로 만드는 데 기여하고 싶고, 나의 기여로 조금이라도 더 나은 세상을 만드는 게 나의 바람이다.
운이 좋게도 개발을 제대로 배우기 전에 실무를 먼저 해볼 수 있는 기회가 있었지만, 기본기가 부족해서 오는 어려움들이 많았고, 장기적으로 볼 때 제대로 공부를 하는 게 좋을 것 같다고 생각이 들었다.
그래서 메가테라라는 프로그램을 6개월동안 정말 몰입해서 부족했던 부분을 채우고, 자신감을 가질 수 있는 상태를 만들고 싶다.