• 코드리뷰
  • 블로그
  • 로그인

재밌게 일하는 방법

하기 싫은 일에 새로운 의미를 부여하여 하고 싶은 일로 만드는 방법을 사례로 알아봅니다.
한윤석

우리는 일을 할 때 다음과 같은 경우에 동기가 올라갑니다.

  • Skill variety: 한 가지 일을 할 때 다양한 스킬을 써야 / 계발해야 할 수록 동기가 올라감
  • Task Identity: 자신이 한 일과 그것의 최종적 결과물이 직접적 연관성이 있다고 느껴질수록(프로세스의 일부에만 관여하거나, 프러덕트의 일부에만 관여하지 않고 더 전반적으로) 동기가 올라감
  • Task Significance: 자신이 하는 일이 다른 사람들의 삶에 영향을 많이 준다고 느낄수록 동기가 올라감
  • Autonomy: 자신이 하는 일에서 자율적인 부분이 클수록 동기가 올라감
  • Feedback: 자기 일의 결과에 대해 더 많이 알수록 동기가 올라감

지금 하고 있는 일이 재미가 없다면, 일의 정의를 다시 해야 합니다. 내가 하고 싶고 재미있는 일로 만들어야 합니다. 면담 사례를 통해서 어떻게 일의 정의를 다르게 할 수 있는지 살펴보겠습니다.

면담 사례

철수: 지금 하고 있는 일이 너무 재미가 없어요. 일하기가 너무 싫어요.

윤석: 지금 어떤 일을 하고 계시나요?

철수: API를 자동으로 테스트할 수 있는 통합 테스트를 작성하고 있어요.

윤석: 왜 재미가 없다고 느껴지세요?

철수: 제가 하고 싶었던 건 CI/CD를 도입하고 싶었습니다. 파이프라인을 구축하고 나서 파이프라인에 자동화된 테스트와 통합 테스트를 추가하고 싶었는데, 팀장님이 원하는 것은 아니었습니다. 팀장님은 통합 테스트를 일단 추가하는 것만 원하시고 계세요.

윤석: 철수님이 하고 싶었던 것과 차이가 좀 있네요. 통합 테스트는 어떤 테스트인가요?

철수: QA 하시는 분들이 API가 올바르게 동작하는지 수동으로 하고 있는데, 스크립트로 작성해서 자동으로 실행할 수도 있는 테스트에요"

윤석: 그러면 QA 하는 분들은 유용하게 사용할 것 같은데, 그래도 별로 재미가 없으신가요?

철수: 네. QA 하시던 분은 좋아하시긴 하는데, 원래 하고 싶었던 것과 전혀 달라서 별로 하고 싶지도 않고 재미도 없어요.

윤석: 이게 개발이 되면 자동으로 테스트를 실행할 수 있어서 좋을 것 같네요. 테스트 하나를 작성하면 QA분들이 수동으로 하는 것을 대신해서 얼마나 시간을 아끼는 건가요?

철수: 음... 그건 잘 모르겠어요. 기존에 수동으로 테스트 하는 데 얼마나 걸리는지

윤석: 수동으로 하는 시간을 알고있고, 자동으로 테스트를 실행했을 때 걸리는 시간을 알면, 테스트 하나를 작성할 때마다 QA분의 시간을 얼마나 아낄 수 있는지 계산할 수 있겠네요?

철수: 음.. 네 그렇죠

윤석: QA 분의 월급... 을 모르겠지만? 월급을 대충 어느 정도 받는다고 가정해서 시급으로 계산하면, 한 통합 테스트를 만들 때마다 회사에 돈을 얼마를 아끼는지 계산할 수 있겠네요

철수: 그렇겠네요

윤석: 아마도 테스트는 반복적으로 실행할 테니, 아까 계산한 금액에 반복되는 수만큼 계산하면, 철수님이 통합 테스트를 작성할 때마다 한달에 아끼는 돈을 계산할 수 있겠네요.

철수: 와 맞아요

윤석: 그래서 통합 테스트를 작성하기 전후 를 비교해서 어떤 성과를 만들어냈는지 숫자로 표현도 가능하겠네요. 이렇게 하는 건 어떠세요?

철수: 그러면 제가 하는 일이 돈과 관련되어 있고 결과를 바로 볼 수 있어서 좋겠네요. 재밌을 것 같아요. 한 번 그렇게 해볼게요!

내가 하는 일이 어떤 영향을 미치는지 알지 못하면 일이 재미없습니다. 왜 해야 하는지도 납득이 되지 않습니다. 우리가 한 일과 그것의 최종적 결과물이 연관성이 높다고 느껴질수록 동기가 올라갑니다. 사례에서는 철수가 통합 테스트를 작성하면 회사에 바로 이익이 되고 숫자로 눈으로 확인할 수 있게 됐습니다.

그리고 우리가 하는 일이 다른 사람들의 삶에 영향을 많이 준다고 느낄수록, 자신이 하는 일에서 자율적인 부분이 많을수록, 자기 일의 결과에 대해 더 많이 알수록, 한 가지 일을 할 때 다양한 스킬을 쓸수록 동기가 올라갑니다. 사례에서는 QA 엔지니어에게 좋은 영향을 미칠 수 있으니 동기 수준이 올라갑니다.

철수의 일을 다시 정의했습니다. 통합 테스트를 작성하는 일에서 QA 비용 줄이기로. 그냥 시켜서 하는 일에서 내가 하고 싶은 일로.

우리는 스스로 일의 정의를 선택할 수 있으며, 그 선택에 따라 결과가 달라집니다. 만약 일이 재미없고 퇴사하고 싶을 때 일의 정의를 다시 생각해 보면서 일의 재미를 만들어보는 것은 어떨까요? 일이 재밌어질 뿐만 아니라 더 멋진 커리어와 경험을 만들어볼 수 있습니다.

참고

테스트, TDD, 코드리뷰, 올바른 협업 방법 등을 코칭하여 코드숨은 개인과 개발 조직의 성장을 돕고 있습니다. 🙏진짜 개발자로 거듭나는 방법
강의 알아보기