본문 바로가기

생각

개발자가 되려는 이유 2(부트캠프 수료 후기를 곁들인...)

부트캠프를 수료하고...

오지 않을 것 같던 4월이 왔다. 3개월의 부트캠프는 영영 끝나지 않을 것 같았는데 어느새 끝이 나있다. 그리고 이제 진짜로 취업을 앞두고 있다. 지난 해 9월, 개발자를 하겠다고 마음 먹고 공부를 시작했을 땐 언제 공부해서 부트캠프에 들어가나, 부트캠프는 언제 수료하나 싶었는데 시간이 빠르다. 부트캠프에서 공부한지는 3개월 되었지만, 개발 공부를 시작한지는 벌써 8개월차가 되었다. 이제 정말 프로 개발자가 되어도 괜찮지 않을까?

나는 자기자신에 대해 준비가 되었다는 확신이 들어야 자신감이 생긴다. 그래서 부트캠프에 들어가기 전에 공부를 많이 해두려했다. 안그러면 밀려오는 커리큘럼에 숨이 막히고, 쫓기듯 시간을 흘려보낼 것 같아서. 혼자 공부하면서도, 부트캠프를 시작하고서도 계속 부족하다고 느꼈다. 하지만 내가 불안감을 느끼던 사이에 어느 정도 준비가 되었나보다. 쉽지는 않았지만 이 3개월 과정은 내가 공부해둔 것들을 다지고, 그걸 기반으로 더 많은 것들을 배우고, 내가 익힌 기술을 제대로 이용해볼 수 있는 시간으로서 적절했다. '더 했어야 했는데' 싶은 아쉬움은 계속 남아있지만 지금은 이만큼 노력하고 성장한 나에게 시간을 헛되이 보내지 않았다고 인정해주고 싶다.

 

취업을 앞두며

이제 내가 공부한 것, 쌓아온 기술을 바탕으로 취업을 할 때가 됐다. 비로소 정말 개발자가 되는 것 같다. 공부하는 거랑 이걸로 돈을 받고 일하는 거랑 다르다보니 기분이 좀 묘하다. 개발자로의 취업을 앞두고 개발자로서의 나에 대해 그려볼 시간이 필요한 것 같다.

2021.10.02 - [생각] - 개발자가 되려는 이유를 보면 불과 반년 전인데 이때가 전혀 생각나지 않아서 신기하다. 지금은 벌써 개발 공부를 하는 나에게 너무 익숙해져버렸다. 다른 상황에서 다른 공부를 하던 내가 이렇게 생각했음을 잊고 있었다. 이 글을 다시 보니, 초심을 잃지 않아야겠다는 생각이 들었다. 그리고 지금 시점에서 개발자가 되려는 이유를 다시 써보고 싶다. 이제는 개발이 무엇인지, 개발자가 어떤 일을 하는지 조금 더 알게 되었으니까.

 

1. 나랑 잘 맞아!

1) 꼼꼼함

초등학교에서 받아쓰기 할 때부터 나는 맞춤법에 민감했다. 대학교에서 레포트를 쓰거나 글 읽을 때, 대외활동으로 블로그를 운영할 때, 항상 띄어쓰기와 오타를 잡아냈다. 발표할 때는 ppt 담당을 맡지는 않아도(미적 감각은 떨어짐), 팀원이 만들어온 ppt 슬라이드에 정렬이 맞지 않으면... 지켜보기 힘들어서 고치고야 말았다. 어렸을 때부터 그런 강박을 가질만큼 꼼꼼함이 있었다. 엄마는 나한테 출판사에서 일해보는 게 어떻겠냐는 말도 했는데 아무리 꼼꼼함이 좋은 능력으로 발휘될 수 있는 곳이라도, 글을 그렇게 읽고 싶지는 않았다.

그런데 프론트엔드로 개발을 경험해보니 꼼꼼함이 지루하게 글자나 서류에서만이 아니라, 웹/앱 화면에서도 발휘될 수 있었다. 프론트엔드 개발자가 디자인이나 퍼블리싱에 핵심이 있는 건 아니지만 꼼꼼함은 나쁠 것 없다고 느꼈다. 그리고 꼼꼼함은 코드를 쓸 때도 큰 장점이 되었다. 오타를 잘 안 낸다거나, 보기에 깔끔하고 가독성 좋은 코드를 쓰려는 습관이 몸에 밴다거나. 컨벤션을 지켜서 코드를 쓰려는 습관도 꼼꼼함과 그런 강박에서 나오는 것 같다.

2) 컴퓨팅적 사고

대학교 1학년 때 필수교양으로 "컴퓨팅적 사고와 문제해결"이라는 강의를 들은 적 있다. 문과생도 모두 들어야 하는 필수교양이라 수업 난이도는 낮았지만 여러 동기들이 적성이 안 맞는다며 매우 싫어하거나 힘들어했던 수업이다. 그때 스크래치라는 귀엽고 말랑말랑한 프로그램을 사용해서 간단한 게임도 만들고 했는데 나는 이때 처음으로 코딩이 적성에 맞을 수 있겠다고 느꼈다. 솔직히 말해서 이 수업 안에서는 어렵다고 느껴본 적이 없었고 그냥 재미있었다. 나한테는 날로 먹는 꿀교양이었달까.

이때는 스크래치를 하면서 "컴퓨팅적 사고와 문제해결"이 뭔지 감이 안 왔다. 그냥 강의 이름을 있어보이게 지었나보다 싶었다. 그런데 개발 공부를 시작하고 나니 "컴퓨팅적 사고와 문제해결"이 뭔지, 왜 중요한지 조금씩 와닿는 것 같다.

아직 내가 사용하는 툴이 돌아가는 모든 로직을 이해하지는 못하기 때문에 한계가 있지만, 내가 짠 코드에 한해서는 확실히 느끼는 점이 있다. 1이 없으면 2가 없고, 2가 없으면 3이 없다는 것이다. 그게 가능할 수 있게 도와주는 편의 도구들이 있기는 하지만, 기본적으로는 그렇다. 1이 없는데 3이 갑자기 존재할 수가 없다는 것! 그래서 문제가 있을 때 단계별로 연결고리를 잘 찾아보면 문제의 원인은 이 연결고리가 끊어진 곳에서 나타난다. 이렇게 사고하고 문제에 접근하면 쉽게 해결할 수 있는 간단한 문제도, 처음에는 이해가 안 되고 막막했다. 공부를 할수록, 더 복잡하고 어려운 문제에 직면할수록 가장 기본적인 이 점이 중요한 것 같다.

다행인 점은 내가 끊임없이 이러한 문제를 마주하고 해결하는 과정을 괴로워하는 것 같지는 않다는 점이다. 잘 적응하고 있는 것 같기도 하고, 내가 생각한대로 원인을 짚어냈을 때 은근한 쾌감이 있다.

 

2. 재밌어!

1) 성취감과 보람

어렸을 때부터 항상 장래희망을 적어내고, 진로를 고민할 때마다 하고 싶은 일이 뭔지에 초점을 두고 선택했다. 그런데 대학을 졸업할 때까지도 직업으로 뭘 해야 할지 정말 몰랐다. 하고 싶은 게 딱히 없어서. 그럭저럭 견딜만한 일을 하면 되겠거니 싶었다. 그러다 개발을 시작하게 되었는데 이때까지 해온 공부와 다르게 실용적이며, 프론트엔드는 특히 당장 눈앞에 결과물을 낼 수 있기 때문에 진심으로 재미있었다.

2) 집중이 잘 되고 시간이 잘 감