계속해서 성장하는 개발자가 되는 방법 - 동기편

더 편하게 보시려면 여기를 눌러주세요.

우리는 목표를 가지고 살고 있습니다. 그리고 대부분의 나의 시간과 노력은 이 목표를 달성하기 위해 사용합니다. 앞으로 나아가고 더 나은 미래를 바라보면서 움직이는 것은 너무나 자연스러운 모습입니다. 그리고 시간이 지나면 더 잘 해질 것이라는 기대도 하고 있죠.

개발을 잘해지는 미래에 도달하려면 학습하고 연습할 에너지와 시간이 필요합니다. 즉 동기가 필요하다는 뜻 입니다. 동기의 정의를 살펴보면 행동하게 만드는 힘입니다. 더 자세하게 적보자면 “동기는 행동을 시작하게 만들고 방향을 설정하며 행동을 유지하게 만드는 힘” 입니다. 그러므로 내가 목표하는 바를 이루기 위해서는 에너지가 필요하고 그 에너지의 정체는 동기였던 것 이죠. 그리고 이 동기에는 2종류가 있습니다.

바로 외적동기와 내적동기 입니다.

내적동기와 외적동기

내적동기란 내가 하는 활동이 즐겁기 때문에 행동하게 만드는 능동적인 힘입니다. 보상이 주어지지 않아도 내가 즐거워서 하도록 만드는 힘입니다.

예를 들면 책임감, 성취감, 보람, 재미와 같은 것들이 있습니다.

행동과 활동 자체에 만족감이 있기 때문에 여러 방면으로 관심을 가지게 됩니다. 그렇기 때문에 활동에 지속해서 관심을 가지고 오랜 시간 유지할 수 있는 모습을 그리게 됩니다. 활동을 하면서 겪는 경험과 배움 자체가 의미가 있고 재미를 느끼며 새로운 동기를 찾아냅니다.

개발을 하는데 내적동기가 있다면 이 코드는 왜 이렇게 동작하는 걸까? 라는 호기심이 생기거나 다른 방법으로 문제를 해결할 수는 없을까? 내가 드디어 이 문제를 풀었어와 같은 성취감 재미를 느끼고 있을 것 입니다.

이와는 반대인 외적동기입니다. 활동의 즐거움과는 별개로 활동의 결과로 따라오는 것들이 주는 즐거움 때문에 활동을 하도록 만드는 힘입니다. 보상에 따라 발생하기 때문에 수동적인 힘입니다.

예를 들면 결과에 따른 보상받기 혹은 벌을 피하기 위한 것들이 있습니다. 외적동기는 외부에서 주어지기 때문에 언제든지 사라질 수 있습니다. 그리고 더 이상 외적동기가 주어지지 않는 사람은 활동을 멈출 것 입니다.

예를들면 “이 알고리즘 문제를 풀어서 내가 등수가 올랐어.” “이 코드를 완성하면 포트폴리오에 사용할 수 있어.” “이 기술을 모르면 나만 취직할 수 없어”와 같은 동기들이 외적 동기들 입니다. 외부에서 무언가를 바라거나 벌을 받지 않기 위한 동기들 입니다.

우리는 나를 구성하는 동기들이 내적동기와 외적동기들로 이루어져있고, 이 들을 구분할 수 있어야 합니다. 그렇지 않으면 나의 미래를 알기 힘들기 때문입니다.

개발의 시작과 외적동기

개발을 시작할 때 내적동기로 시작하기는 쉽지 않습니다. 왜냐하면 추상적인 개념들과 생소한 개념들 결과적으로 배우기가 어렵기 때문입니다. 내 안에서 배움을 원해서 즐거워서 개발을 시작하신 분이 계신다면… 천직입니다!

많이 접한 목표들은 높은 연봉과 좋은 회사에 취직 그리고 보장되는 미래와 같은 외적 동기들입니다. 물론 동기들이 100:0으로 구성되어 있지는 않지만 무언가를 시작할 때는 외적동기로 시작하는 것도 이상하진 않습니다. 그리고 빠른 추진력을 주기도 합니다.

하지만 외적 동기만으로 개발학습, 코딩, 프로젝트 활동들을 계속 이어가는 것은 힘듭니다. 심하면 번아웃이 오거나 하던 것들을 그만두고 이탈을 하는 일도 발생합니다. 그래서 우리는 계속 개발자로 성장하려면 에너지가 필요한데 이때 필요한게 내적동기 입니다.

그리고 여기서 내적동기로 움직이려고 했을 때 크게 두 가지 어려움이 있습니다.

  • 내적동기를 만드는 법을 모른다
  • 외적동기가 미치는 영향을 알지 못 한다

개발과 내적동기

개발을 하면서 내적동기를 만들려면 재미있어야 합니다. 그래서 우리는 개발을 하면서 계속 돌아봐야 하는 부분들이 있습니다.

  • 나는 언제 즐거움을 느끼는가?
  • 나는 어떻게 성취감을 느끼는가?
  • 호기심을 자극 하거나 궁금한 부분들은 어디인가?

위의 것들에 답을 찾지 못하고 계속 외적동기로 개발을 공부하게 된다면, 학습을 이어가기 어려울 수 있습니다. 더 나은 보상 아니면 불안감과 벌을 피하기 위해서 개발을 한다면 재미없어지고 힘들고 지쳐나갈 것 입니다. 배워야하는 것들은 너무나 많은데 시간은 없고 나 혼자 뒤쳐져야하는 것 같은 느낌이 유쾌할리 없기 때문이죠. 이런 상황 보다는 “내가 이 문제를 해결해냈어!”, “다른 것을 하려면 어떻게 해야할까? 너무나 궁금해”, “빨리 다음 문제를 해결하고 싶다”와 같은 내적동기로 개발을 해야만 계속 학습을 이어나갈 수 있습니다. 기본적으로 기술이 빠르게 변하고 해야 할 학습의 양이 많기 때문에 호기심과 성취감 같은 것들이 없다면 많은 노력과 체력을 써야해서 계속 학습하기 어려울 수 있습니다.

나 자신 속에서 하고싶은 마음을 만들어내는 힘 이기 때문에 다른 사람으로 부터 답을 얻을 수는 없습니다. 다만 다른 사람들이 얻었던 방법을 참고하거나 일반적으로 동작하는 방법들을 시도하는 것들은 나의 내적동기를 만드는 방법을 찾는데 도움을 줄 수 있습니다.

외적동기가 내적동기에게 미치는 영향

내적 동기가 충만한 상태에서 외적동기가 주입되면 처음에는 효율과 에너지가 더 생기는 것 처럼 보이더라도 곧 내적동기가 사라지게 됩니다. 예를 들면 자원봉사자에게 금전적인 보상을 준다면 처음에는 신나고 더 열심히 할 것 같더라도, 외적동기가 사라지거나 기대치와 맞지 않게된다면 더 이상의 행동을 하지 않게 됩니다.

이 처럼 내적 동기와 외적동기를 함께 가져갈 수는 없기에 내적동기가 잘 동작하고 있을 때 외적동기가 생기면 망가질 수 있음을 조심해야합니다.

이에 대한 실험은 다양하게 존재하기 때문에 이 곳에 적어두지는 않겠습니다. 자기결정성 이론이라고 검색하시면 많은 실험들이 나오니 찾아보시기 바랍니다.

https://ko.wikipedia.org/wiki/자기결정성_이론

우리의 마음속에 개발에 대한 내적동기가 잘 생겨났다면 외적동기가 들어오지 않도록 보호하는 것도 중요합니다. 내적동기가 자라나기 위해서, 움직이기 위해서 외적동기를 이용하는 것은 좋지만, 이미 내적동기가 자랐다면 그리고 그것을 인지했다면 더 이상 외적동기가 그 내적동기들을 헤치지 못하게 보호해줘야합니다. 이미 나는 코딩하는게 재미있는데 “아직도 이거 못했어? 그러면 개발자 못되는데” 이런 불안함의 외적동기나 “지금 이거 공부할 때가 아니야 최신 트렌트는 다른거라서 그거 해야해”와 같은 외적동기로 부터 스스로를 지켜주세요. 그렇지 않으면 내가 힘들게 키운 내적동기가 사라지고 다시 외적동기만 남아서 꾸준히 성장하는 개발자를 추구하던 나의 목표에 도달하지 못 할 수 있습니다.

계속해서 성장하는데 필요한 에너지

결국 계속 성장하는 개발자가 되려면 성장에 필요한 에너지가 필요한데 우리는 그 정체를 알아보았습니다. 내적동기가 좋은 것이고 외적동기가 나쁘다 라는 이야기가 아닙니다. 각각의 동기의 특성을 이해하고 내가 지속적으로 성장할 수 있는 개발자에 필요한, 하지만 지금은 비어있는 것을 알아보고 채워보자는 이야기입니다. 내가 계속 외적동기를 계속 따라가면 어떤 미래가 펼쳐질 수 있는지, 그렇게 되지 않으려면 어떤 것들을 찾아야 하는지 알게 된다면 또 다른 미래를 그려볼 수 있을 것 입니다. 내가 좋아서, 스스로 더 나은 나를 위한 성장방법을 고민해야할 것 입니다. 개발자가 사람의 심리를 들여다 보는 것은 어렵네요. 혹시나 다른 견해나 더 좋은 의견이 있다면 언제나 피드백 부탁드립니다. 꾸준히, 계속해서 성장하는 개발자가 되기위해서 모두 화이팅입니다!

댓글

  1. 성취감으로 개발하는 걸 좋아했으나.. 어느 순간 성취감 얻질 않고 있네요. 공허하다고 해야할까. 업무에서 성취감이 발생하면 성취감으로 끝나면 되는데, 성취감에서 끝나지 않고 성과에 반영되겠지 라는 생각을 합니다. 결국엔 성과(보너스나 승진)에 반영되지 않거나 않을거라 생각에 '내가 굳이 왜 해야하지?'로 빠져버렸고 해야하는 일만 합니다.. 해야하는 일만해서는 호기심 -> 시련 -> 해결 -> 성취감 일련의 과정을 격지 않아 공허하고 번-아웃 상태로 빠진 것 같네요...
    문제는 이 내적 동기(성취감)이 없는 것을 깨닫지 못하고 더 큰 보상(외적 동기)를 위해 이직을 생각하고 있는거죠... 만약 이직을 해서 더 좋은 조건을 받아도 결국은 성취감이 없어 또 같은 상태가 될텐데 말이죠..

    두서 없이 그냥 제얘기 한번 써봤습니다.
    덕분에 제가 뭘해야하는지 알겠네요.

    외적 동기: 편안한 삶...
    내적 동기: 행복한 삶...

    답글삭제

댓글 쓰기

이 블로그의 인기 게시물

[IOS] AppDelegate는 뭐하는 녀석이지?

[git] git의 upstream과 origin 헷갈리는 사람 손!

[git] Github 이슈 라벨(issue labels)