이제 곧 프로그래머의 길을 가야할 시점이 온다. 대학생이라는 타이틀을 가지고 있을 시간도 얼마 남지 않은 것이다. 인생의 큰 방향을 선택해야 하는 순간이기에 이 시간이 그리 편하고 좋지만은 않다. 대학 동기들은 아무런 거리낌없이 취업을 하고 있지만, 난 아직 이 자리에서 머무르고 싶다는 생각을 떨쳐버릴 수 없다. 아직 준비가 되어 있지 않은 것일까? 무엇이 그토록 두려운 것일까?
간혹 개발자들의 글을 보게 되면 그 이유가 여실히 들어난다. '월화수목금금금', '새벽 출근', '늦은 퇴근', '소모품', '1회 용품' , 대한민국에서 IT를 하기 어렵다거나, 건강 챙기려면 다른 직종을 알아봐야 한다거나, 갑을병정이라는 관계, 정치 인사, 악덕한 사장, 터무니 없는 대우 등의 부정적인 시선이 많이 존재하고 있다. 개발자 커뮤니티에 들어가보면, 눈에 띄는 것들이 대부분 이런 내용들인 것이다. 내가 꿈꿔왔던 멋진 개발자의 모습과 그에 맞는 대우를 해주는 회사의 모습은 진정으로 없는 것인가? 내가 정말로 이 길을 선택해도 되는 것일까?
"사랑하지 않으면 떠나라." P259"프로그래밍을 사랑하지 않을 자세라면 지금 떠나라. 문은 언제든지 열려 있다." P259
선택은 어렵지만, 답은 아주 간단하다. 대한민국의 열악한 현실을 감내하고 이겨낼 수 있는 사람, 그러한 상황을 개선시키고, 발전시킬 수 있는 사람, 그만큼 프로그램에 애착을 가지고 할 수 있는 사람이라면 충분히 가능하며, 좋은 직업이라는 이야기이다. 일차적으로 부조리하고 좋지 않은 시선과 환경이 개선되어야 한다. 그리고 이와 더불어 우리가 올바른 의식과 높은 열정, 우수한 커리어를 통해서 이를 극복할 수 있는 기반이 필요한 것이다.
자, 그러면 먼저 생각해보자. 나는 정말 프로그래밍을 사랑하고 있는 것일까?
나에게 있어서 분명한 것은 프로그래밍은 아주 매력적이란 것이다. 스스로 무에서 유를 창조할 수 있으며, 좋은 아이디어만 가지고 있다면, 평범한 사람이 큰 사업을 일으켜 성공할 여지가 있는 분야이기 때문이다. 최근에는 스마트폰 어플리케이션을 직접 개발해보면서 스스로 기획, 설계하고, 프로그래밍을 통해 더욱 그러한 마음이 굳어지게 되었다. 프로그래머의 길이 아주 괜찮고 좋다는 생각이 들었다.
이제 첫 번째 관문은 통과했다. 그러면 이제 무엇을, 어떻게 해야 할까?
책 속에는 여섯 분의 멘토분들께서 자신의 인생 이야기를 해주신다. IT 분야에서 수 십 년간 해오신 분들의 경험담을 통해 IT분야의 현실과 내가 나아가야 할 길을 넌지시 알려주신다. 각각의 멘토분들은 다양한 IT 분야에서 일하고 계신다. 소프트웨어 개발자, 컨설턴트, 교육 강사, 데이터베이스 전문가, 연구원, 웹 개발자 등 다양한 곳에서 활동하셨던 분들이며, 현역으로도 활동하고 계신 분들이다. 각기 다른 IT 분야에서 활동하셨지만, 이분들께서 들려준 이야기의 핵심은 거의 동일하다고 볼 수 있다. '프로그래머가 가져야 할 자세, 마음가짐' 등의 추상적인 것에서부터, '유닛 테스트는 꼭 해야하며, 설계 문서는 꼭 필요하다.'라는 다소 구체적인 것까지 폭넓게 알려주신다. 프로그래머가 되고자 하는 분들이라면, 선배님들의 생각과 경험담을 한 번 읽고, 느껴보는 것이 매우 유익한 시간이 될 것이라 확신한다.
그 중 특별히 기억나는 내용 10가지를 적어본다.
- 프로그래밍을 진심으로 사랑할 것
- 슈퍼 프로그래머는 최고지만, 많지 않다. 그들보다 열정만큼은 뒤쳐지지 말자.
- 끊임없는 공부는 필수이다. 도전 정신을 바탕으로 평생 학습하자.
- 업무 일지를 작성하자.
- 보고서 작성, 설계서 작성 등 글쓰기가 매우 중요하다.
- 편하고 쉬운 길일수록 가질 수 있는 경험과 지식도 그 만큼 뿐이다.
- 설계는 꼭 필요하며, 문서화는 필수적이다.
- 앉아있는 시간보다 얼마나 좋은 품질의 코드를 작성하는지가 훨씬 중요하다.
- 다른 사람이 작성한 코드를 무작정 베끼지 말자.
- 코딩을 할 때 유닛 테스트를 꼭하자.