개발, 그게뭐죠?

대학교에 진학했을 때 나는 산업 전반적인 설계를 담당하고 싶어서 산업공학과에 입학을 했었다. 내가 일하고 있는 사이트의 모든 업무 프로세스를 안다는 것이 굉장히 매력적이라고 느껴졌기 때문이었다. 그러다 2학년 무렵에 C++수업과 컴퓨터 시스템 기초라는 수업을 듣게 되었다. 프로그래밍 언어는 너무 어렵다, 이것때문에 학점 포기했다 등의 얘기를 많이 들었기 때문에 너무 두려웠는데 막상 수업을 들어보니 다른 수업들보다 훨씬 재미있게 느껴졌다. 그 때 MFC로 처음 만들었던 프로젝트가 도서관 자리 예약 시스템이었는데, 지금보면 엄청 허접하지만 도서관 자리를 눌러서 예약했을 때 화면이 바뀌고 다른 사람이 예약을 못하고 하는 등의 기능을 만들면서 하나씩 기능이 완성될때마다 굉장히 보람찼던 기억이 난다.

그 뒤에 데이터베이스 수업을 들었는데 사용자가 보는 화면에서 저장이나 수정을 하면 데이터베이스가 변경되고 하는게 신기했다. 나는 점점 프로그래밍 쪽에 매력을 느끼게 되었다. 3학년 1학기가 끝날때 쯤 학교에서 특성화사업단에서 하는 안드로이드 수업을 들을 기회가 생겼다. 이 때 자바 6버전에 대한 내용도 배우고, 안드로이드 스튜디오를 깔아서 스도쿠만들기 등의 실습도 해보게 되었다. 내가 만든 코드가 화면에서 실행되는 모습이 너무 좋았다. 그래서 이때 들었던 수업이 프로그래밍 쪽으로 진로를 정하게 된 결정적인 계기가 되었다.

첫 SI 그곳은

취업을 개발자로 정하긴 했지만 컴퓨터 공학과도 아니고 주위에 개발자로 취업한 사람도 없어서 취업에 대한 정보가 너무 없었다. 그래서 사람인을 뒤적이던 중 면접을 본 곳에서 취업을 하게 되었다. 처음 출근을 했던 날이 아직도 생생하다. 회사에서는 외부 프로젝트 투입을 하게 되면 정식으로 계약서를 작성하고 했다. 물론 그 전까지는 무급으로 출근을 해야했다. 그곳에는 나 이외에 대기하고 있는 사람이 10명 남짓은 되었다. 지금에 와서야 생각해보면 정말 바보같은 짓이었지만 프로젝트만 투입되면 나도 정직원이다! 라는 생각에 매일 출근하여 열심히 공부했다.

하지만 프로젝트가 투입되고 상황이 매우 안좋았다. 내가 처음 들어갔던 프로젝트는 공통기초자료시스템 고도화였는데, 담당 업무가 리눅스로 프로세스가 잘 작동되고 있는지 체크하고, 스토리지, 메모리가 안정적인지 체크, 파일 송수신이 잘 되고 있는지 체크를 하는일이었다. 나는 자바로 프로그래밍을 할 줄 알았는데 하는일이 항상 리눅스 cli만 다루는 것이었다. 게다가 담당자가 꽉 막힌 사람이어서 연차는 쓸 생각도 못했다. 6개월간 중간에 단 한번 퇴근한 적이 있는데, 급성 위염이어서 얼굴이 새파래질때까지 집에 보내주지 않았다.

이렇게 살면 정말 불행할 것 같다는 생각이 들었다. 이직을 고려하던 중에 프로젝트를 하며 만난 다른업체 대표의 제안으로 회사를 옮기게 되었다. 이번 회사는 다를것이라 생각했지만 그 전 회사와 별반 다르지 않았다. 수직적인 문화로 위에서 하기 싫은 잡일은 다 떠맡아야 했고, 너도 나도 책임을 지려고 하지 않아서 결국 내가 담당자의 욕받이가 되고, 결국 공황장애 증상이 보이기 시작했다. 나는 나를 위해서 탈출해야 했다.

코딩 부트캠프?

직장을 다니다가 그만두기를 결정하는 것은 정말 쉽지 않은 일이었다. 고정적 수입이 0이 된다는 것을 의미하고, 당장 앞날이 막막했다. 고민을 하고 있는 중에 코딩 부트캠프에 대해 알게되었다. 교육 프로그램을 보니 굉장히 체계적이었고 무엇보다 스스로 코딩을 할 수 있게 만들어주는 문화가 마음에 들었다.

부트캠프 생활은 생각만큼 정말 하루하루가 치열했다. 코드를 한줄이라도 짜면 이걸 왜 이렇게 짰는지에 대해 다른사람이 납득을 할 수 있을 때까지 설명을 해야했다. 하지만 그런 과정들이 정말 너무 재미있었다. 내가 설명하는 것도 재미있었지만 다른사람은 이렇게 생각할 수 있구나 라는 생각이 들었다. 정말 멋진 경험이었다. notion, git, react, NodeJS 등등 처음 접해보는 언어, 도구들도 정말 새롭고 신기했다. 처음에는 이런걸 귀찮게 왜해? 라고 생각이 되었던 것들도(뭐, 예를들면 블로깅이라던지…) 하다보니 정말 재미있는 것이다. 부트캠프 생활을 하며 완전 다른 내가 된 것 같았다.

부트캠프 생활 중 가장 재미있었던 세션이 Data Structure와 N-Queens였던 것 같다. Data Structure는 Queue나 Stack, Tree, Linked List 등의 알고리즘을 공부하고 직접 구현해 보는 것이었는데 이를 통해서 코드를 짤때 가장 우선 어떤 것을 고려해야 하는지 많이 배웠던 것 같다. N-Queens는 N*N의 체스판에서 N개의 퀸이 서로 죽일 수 없는 위치에 놓일 경우의 수를 구하는 것이었는데, 굉장히 어려운 세션이었지만 동시에 제일 재미있었던 세션 중 하나였다. 이 때 나는 어려운 것을 도전해서 성공할 때 가장 성취감을 느낀다는 것을 알게 되었다.

나는 개발자다

이제 곧 코드스테이츠의 생활이 끝나고 나는 다시 야생의 취업시장에 놓이게 될 것이다. 아직도 아는 것이 많이 없고 부족한 개발자이지만 이전과는 달리 좀 더 자신있게 나는 개발자다 라고 말할 수 있을 것 같다. 그리고 앞으로도 더욱더 개발자스러운 개발자를 향해 달릴 것이다.