Published on

앞으로도 잊지 않았으면 하는 태도들

Authors

  고등학교를 다닐 때에는 그냥 좋은 대학교에만 가면 된다. 대학교를 다닐 때에는 그냥 학점을 잘 받으면 된다. 부끄럽지만, 진로 탐색에 대한 관심이 부족했던 건지 그냥 또래들이 그랬는 던 건지 잘 모르겠지만 나는 그냥 그랬다. 대학교를 졸업 할 즈음 까지만 해도 프로그래밍이라는 영역이 존재하는 지도 알지 못했다.

  회사 생활의 시작으로 작은 스타트업을 다니기 시작 하면서부터 프로그래밍의 존재를 알게 되었다. 일을 하다 보니 프로그래밍을 업으로 삼고 싶다는 욕망을 가지게 되었고, 지금까지 만났던 좋은 회사, 좋은 동료들의 응원과 도움으로 지금 현재까지 약 3년 째 웹을 개발하면서 먹고 살고 있다. 곧 4년 차를 맞이하면서 스스로의 실력을 돌아 보면 여전히 많이 부끄럽다.

  두 번째 회사에서 운 좋게도 너무 좋은 사수를 만났고, 그 사수가 가르쳐 주었던 태도들이 그래도 비전공자인 지금까지 개발을 하면서 먹고 살 수 있게 해준 동력이 되었다고 믿는다. 프로그래밍을 처음 할 때에는 위와 같은 태도들을 까먹지 않으려고 더 신경쓰며 공부했고 작업했기에 더 선명했다면, 최근에는 존경했던 사수도 옆에 없이 혼자 작업해야 하고 '이제는 조금 안다'라는 진짜로 오만한 생각을 가지게 되면서 중요하다고 생각했던 태도들이 조금씩 흐려지고 있다는 생각이 들었다.

  그래서 블로그의 첫 글로 그 태도들에 대한 이야기를 박제하고 다시 선명히 하고자 한다. 다음의 태도들이 프로그래밍에만 한정적으로 작동하는 것은 아니겠지만, 프로그래밍을 공부하면서 나에게는 굉장히 도움이 되었던 태도들이다.

TL;DR

  • 알게 된 것 같다는 느낌에 속지 말자!
  • 작업하면서 불편했던 점을 그대로 두지 말자! (돌아 와서 해결하자!)
  • 새로운 기술에 대해서는 '왜'라는 질문을 잊지 말자!
  • 시작할 때 정했던 목표까지 도달하기 전에 멈추지 말자!

알게 된 것 같다는 느낌에 속지 말자

  프로그래밍 관련해서 학습을 할 때에 보통 영어로 되어 있는 자료들이 많다 보니, 어느 정도 이해하고 '이런 느낌이구나'라는 식으로 학습을 마무리할 때가 많았었다. 지금도 여전히 빠르게 학습해야 한다는 핑계로 그렇게 지나갈 때가 많다. 하지만, 프로그래밍을 하면서 스스로 작성한 코드가 어떤 의미인지 모르면서 작성하고 있는 것은 굉장히 위험한 일일 뿐만 아니라, 스스로의 성장에 정말로 하나도 도움이 되지 않는다. 정확히 이해하지 않고 사용하면 그냥 복사, 붙여넣기해서 사용할 뿐이고, 다음에 똑같은 문제에 부딪히게 되면 또 똑같이 헤매게 되더라. 여전히 이런 좋지 않은 습관을 완전히 버리지 못했지만, 매번 되새기면서 그러지 말아야 겠다라고 생각하고 또 생각한다.

작업하면서 불편했던 점을 그대로 두지 말자

  결국 우리에게 주어진 시간은 한정되어 있다. 어떻게 보면 한정된 시간 안에서 얼마나 더 좋은 프로그램을 짜느냐 또한 좋은 프로그래머가 가져야 하는 덕목 중에 하나라고 생각한다. 그렇기 때문에 우리는 계속 빨라 져야 한다. 겪었던 경험 중에 특정 작업을 하면서 시간의 압박으로 노가다로 손을 빨리 움직여서 작업을 완료할 수 밖에 없었을 경우가 있다. 분명히 더 빨리 효율적으로 할 수 있는 방법이 존재한다는 사실을 알지만 노가다를 할 수 밖에 없는 경우가 있다. 이것이 나쁘다고 생각하지 않지만, 스스로 그런 불편했던 점들을 까먹지 않고 시간이 있을 때 어떻게 했으면 더 효율적으로 더 빠르게 해결할 수 있었을 지에 대한 회고와 학습은 꼭 필요하다. 분명히, 지금 노가다로 해결했던 문제는 언젠가 우리가 꼭 다시 마주치게 될 것이니까.

새로운 기술에 대해서는 '왜'라는 질문을 잊지 말자

  트렌드와 얼마나 많은 사람들이 해당 기술을 사용하고 있고 해당 커뮤니티가 얼마 만큼이나 활발한 지는 기술 선택에 있어서 중요한 이유 중의 하나지만, 단순히 위와 같은 이유로 해당 기술의 사용을 결정하는 것은 효율적이지 못하다. 지금 내가 어떤 문제를 해결하려고 하고 있는 지 명확히 하고 이 기술은 어떤 문제를 해결하기 위해서 만들어 졌는 지 확인하고 그 둘이 일치했을 때에 그 기술을 사용해야할 정당성 명확해진다고 생각하자.

시작할 때 정했던 목표까지 도달하기 전에 멈추지 말자

  특정 지식이나 기술을 숙지하는 데 까지는 시간이 필요하다. 고등학교 시절 수학을 공부할 때 수학의 정석 첫 번째 장인 집합만 수 십번을 풀지만 그 끝인 수열까지 가지 못하는 경우가 많다. 프로그래밍에서도 마찬가지다. Tutorial에서만 몇 개월 동안 머무르는 경우가 많다. 나도 스스로 그렇게 Tutorial만 읽은 것이 얼마나 많던가. Tutorial을 보고 한 달 있다가 다시 Tutorial보고 이런 식으로. 무언가 하나 학습하기로 목표를 정했다면, 어느 정도까지 익히고 싶은 지 그것을 확인할 수 있는 결과치는 무엇인지 명확하게 하고 시작했으면 무조건 세팅했던 목표까지는 너무 길지 않은 시간 안에 도착해내는 끈기가 필요하다. 명심하자. 시작했으면, 다른 데에 눈을 두기 전에 우선 정했던 목표까지는 달리자.