서평

개발자여, 지금 당장 이 4가지 상식을 버려라!

데브테드 2019. 10. 9. 01:32

나는 4년 남짓 개발자라는 직업으로 살아가면서 당연하게 생각하고, 행동했던 부분들이 있었다. 예를 들어 내 커리어를 어떻게 펼쳐나갈까 고민될 때 프런트엔드 개발자와 백엔드 개발자의 가치를 비교했고, 블록체인 개발자와 인공지능 개발자의 가치를 비교하며 저울질했었다. 혹은 개발자는 처음 받는 연봉이 중요하다는 말에 혹해서 초봉을 높게 받기 위해 노력하기도 했었다. 사실 이런 생각들은 개발자라면 누구나 하는 상식과도 같은 고민들일 것이다. 하지만 최근 책 '상식 밖의 경제학'이라는 행동경제학의 대가인 '댄 애리얼리'의 책을 읽으며 이러한 나의 생각이 조금은 비이성적인 부분이 있었지 않았나 질문을 갖게 됐다.

 

상식 밖의 경제학
국내도서
저자 : 댄 애리얼리(Dan Ariely) / 장석훈역
출판 : 청림출판 2018.10.18
상세보기

 

사람들은 대부분 스스로를 '이성적'이라고 생각하며 살아오지만, 우리의 행동과 선택을 되돌이켜 보면 '충동'적이고 '감정'에 치우쳐져 있다는 걸 알 수 있다. 그리고 이는 개발자로 살아가며 컴퓨터와 상호작용을 하느라 이성적인 사고가 비교적 더 훈련된 개발자들 또한 마찬가지다. 그리고 우리 개발자들이 흔히 저지르는 '비이성적' 행동들이 무엇이 있는지 돌이켜 보고, 어떻게 하면 좀 더 나은 선택과 행동을 할 수 있을지 돌아보도록 하자.

 

행동경제학(行動經濟學, behavioral economics)은 이성적이며 이상적인 경제적 인간(homo economicus)을 전제로 한 경제학이 아닌 실제적인 인간의 행동을 연구하여 어떻게 행동하고 어떤 결과가 발생하는지를 규명하기 위한 경제학이다.

 

 

상식 1: 프론트엔드 개발자보다 백엔드 개발자가 더 뛰어나다.

 

답: 그럴 수도 있지만, 아닐 수도 있다. 즉, 단순 비교로 결론을 내릴 수 없다.

 

흔히 우리는 아는 만큼 보인다고 한다. 만약 당신이 아직도 저런 문장에 쉽게 동의한다면, 스스로 아는 게 적다고 말하는 것과 같다. 단순 팩트로 말하자면 지금에 와서는 프런트엔드 개발에도 웹 어셈블리 등 저수준 기술(하드웨어의 동작과 가까울수록 저수준, 사람과 가까울수록 고수준이라고 표현함)이 도입되고 있고, 프런트엔드가 돌아가는 브라우저들도 굉장히 고도화된 기술(이미지, 미디어 랜더링, 통신기술을 활용한 최적화 등)이 적용되고 있다. 

 

C언어 개발자가 JAVA 개발자보다 낫다. 안드로이드 개발자가 ios개발자보다 낫다 등등 우리는 수많은 비교를 하고 있다. 어떤 이들은 이 비교 자체가 나쁘다고도 하지만 그렇지는 않다. 비교는 인간에게 자연스러운 행동이고 비교를 통해 유익을 얻는 것도 많다. 다만 이 비교라는 게 자신이 비교하기 쉬운 것만 기준으로 비교하게 될 때 오류가 발생하기 쉽다는 단점이 있다. 즉, 비교를 자기가 하고 싶은 부분만 골라서 하는 것이다. 

 

우리에게는 이것과 저것을 비교하고자 하는 성향만 있는 것이 아니라 서로 비교하기 쉬운 것만 비교하려 드는 성향이 있다. 쉽게 비교하기 어려운 것은 잘 저울질하려 들지 않는다. -p35-

 

우리가 이런 함정에 빠지지 않으려면 비교하려면 제대로 하든가, 아니면 비교의 굴레에서 벗어나 자신만의 기준을 갖추는 것도 방법이다.(힘들겠지만)

 

상식 2: 개발자 연봉은 초봉이 중요하다.

 

답: 오히려 초봉을 높게 받는게 성장에 안좋을 수 있다. 그 외에도 연봉을 올릴 방법은 많다.

 

대기업처럼 일괄적으로 초봉이 높은 회사가 아닌, 중소기업, 중견기업에서 무리하게 초봉을 높게 받으려다보면 아무래도 부작용이 있다. 회사에 높은 초봉으로 고용됐다고 상황을 가정해보자. 개발팀장이나 대표의 입장에서 높은 임금에 고용한 만큼 기대하는 바가 큰데, 만약 고용된 사람이 자신들(팀장 혹은 대표)의 기준에 안맞는 행동을 하면 그때부터는 미운털이 박히거나 그 외 다양한 불이익을 받을 수 있기 때문이다.

 

이제 초봉이 중요해진 이유가 뭔지부터 생각해보자. 초봉이 중요해진 이유는 인사팀이나 회사 대표들이 연봉협상을 할 때의 기준이 '이전 회사에서 받던 연봉'에 있는 경우가 많기 때문이다. 행동경제학에서는 이런 식으로 기준을 선정해두는걸 '앵커(Anchor)'라고 한다. 단어 뜻은 '닻'이다. 배에서 쓰는 그 닻. 이런 이유에서 봤을 때 개발자가 연봉을 올리는 방법은 간단하다. 앵커를 바꾸면 된다. 개발자 연봉에 크게 영향을 대표적인 앵커로 세 가지가 있다. '학력', '거주지역', '전문분야(AI개발자, AR개발자 등)'. 만약 연봉 퀀텀 점프를 하고 싶다면 이러한 앵커를 개선하면 된다.

 

우리는 최초의 가격을 앵커로 받아들인다.  - p63 -

 

상식 3: 상위 1% 개발자들은 의지력이 강한 사람들이다.

 

답: 오히려 많은 뛰어난 개발자들이 스스로를 게으르다고 표현한다. 농담 같지만, 정말 그렇다. 대신 그들은 스스로의 게으름을 알고, 자신을 행동하게 하는 환경설정에 강하다.

 

우리가 뛰어나다고 찬양하는 개발자들, 그들중 많은 이들이 공통적으로 개발자의 덕목으로 뽑는 게 '게으름'이라는 것. 아이러니하지 않은가?

나도 이 사실을 처음 접했을 때 이사람들이 '진짜' 게으른 게 뭔지 몰라서 그러는구나 싶었다. 하지만 그게 아니었다. 그들 중 대부분은 '실제로' 정말 게으른 사람들이고, 그런 스스로의 모습을 알기 때문에 게으름에 대응하기 위한 '환경을 설정'한 사람들이었던 것이다. 스스로가 게으른 편이라고 생각된다면, 한 번쯤 게으름을 차단할 수 있는 환경을 조성해보길 권한다.

 

자신에게 미루는 경향이 있다는 것을 모든 학생들이 알아차리고 있는 것은 아니다. 그런 낌새를 눈치채고 있다 하더라도 문제의 심각성을 제대로 알지 못하는 경우가 많다.  - p167 -

 

상식 4: 구글이 '사악해지지 말자'고 한 이유는 힘이 너무 세기 때문이다.

 

답: 초기의 구글은 힘이 없었다. 다만, 이는 개발자로서 빠지기 쉬운 도덕적 헤이를 경계하는 구글 창업주들의 깨어있는 생각이 담겨있는 문장이다.

 

많은 개발자들이 해커를 동경한다. 그들의 능력, 그들의 정의를 구현하는 듯한 쿨한 행동. 하지만 이는 매우 잘못됐다. 왜냐하면 결국 그들이 저지르는 행동은 범죄이고 명백히 피해자가 있기 때문이다. 하지만 우리는 이를 직접적인 범죄라고 인식하기 어려운 경향이 있다. 왜냐하면 우리는 돈이 직접적으로 있고 없고에 따라 혹은 강력범죄인지 아닌지에 따라 판단하는 범죄 여부를 스스로 판단하는 경향이 있기 때문이다. 예를 들어 사회의 수많은 직장인들이 직장 내의 비품을 집으로 훔쳐가거나, 적은 금액들을 횡령하는 것과 같은 맥락의 문제다. 

 

회사에서 빨간 펜 하나를 가져오는 것은 별 거리낌이 없을지라도, 현금을 빼서 쓰는 것은 좀 불편할 것이다. - p300 -

 

실제로 구글 본사에 걸려있던 문구. 현재는 'Do the right thing'으로 바뀌었다고 한다.

 

특히 개발자들은 이런식으로 돈과 같이 직접적 가치가 있는 데이터들을 잔뜩 접하고 조작할 수 있는 최첨단에 위치한 직업군이다. 그렇기 때문에 더 쉽게 유혹에 빠지고, 아무렇지 않게 Evil이 되어 사악한 행동을 하게 된다. 바늘도둑이 소도둑이 된다고 작게 시작한 범죄가 큰 범죄를 불러올 수도 있고 말이다. 그렇기 때문에 우리는 개발자로서 데이터를 대할 때 스스로 더 높은 도덕적 기준을 적용할 수 있도록 주의해야 할 것이다. 마치 구글처럼.

 

'Don't be evil.'

 


개발자뿐만 아니라 우리 인간들은 이성적이고 싶어 하는 경우가 많지만, 어쩔 수 없이 비이성적으로 행동하는 경우가 많은 것 같다. 물론 이성적인 혹은 합리적인 것만이 올바른 것은 아니다. 하지만 우리 사회에서는 이성적인 행동이 필요한 때가 더 많기에 우리가 이성과 비이성의 사이에서 헤매고 있는 게 아닐까 싶다.

 

만약 당신이 이 차이에 대해 좀 더 자세히 알고 싶다면, 책 '상식 밖의 경제학'을 한 번쯤 읽어보길 권한다. 작가인 댄 애리얼리가 쉬운 문장과 다양한 사례로 당신의 머리에 행동경제학에 대한 상식을 쏟아부어 줄 것이다.

 

프로그래밍에 대한 생각
  1. 개발자 A씨: 망하는 프로젝트, 살릴 방법이 없을까?
  2. 내향적인 개발자를 위한 직장생활백서
  3. 일 잘하는 개발자가 꼭 알아야할 4가지 프로세스