본문 바로가기

프로그래머의 삶

긍정적 프로그래머와 부정적 프로그래머



긍정적 프로그래머와 부정적 프로그래머



1. 혈액형별 성격


요즘은 잘 입에 오르내리지 않지만 ABO혈액형별 성격에 대해서 영화, 웹툰등등 엄청 회자 되던 시절이 있었습니다.


A형은 소심하고 서열을 잘 지킨다.


B형은 자유분방하고 모험을 즐긴다.


AB형은 계산적이며 알수 없는 성격


O형은 경찰관 남에게 별 관심이 없지만 누군가 룰을 깨면 갑자기 화를 낼수 있음


뭐 대충 위와 같은 식으로 분류했던거 같은데..


저는 위 내용을 굉장히 중요하게 생각합니다. 어떤 분이 저에게 세상사람을 4가지 성격으로 나눌수 없지 않냐고 물으시길래 O형에 대해서 말씀 드렸고 연애를 할때도 O형끼리 만나면 서로 연락안하다가 헤어지잔 말도 없이 그냥 끝나는 경우도 있다라고 말씀을 드렸더니 심히 고개를 끄덕이시더군요.


그분은 O형이고 저는 B형이었는데 저한테 한번 욱했던 적이 있었거든요.


그리고 이어서 한 얘기가 위 내용을 알고 있으면 그 사람이 O형이던 O형같은 B형이던 누군가를 이해하는데 도움이 많이 됩니다. 라고 말씀 드렸더니 수긍하는 눈치셨습니다.


사람을 저렇게 구분할순 없지만 이해하는데 많은 도움이 되고 피해야 할사람도 미리 파악할수 있고 자신의 장단점도 파악하는데 많은 도움이 됩니다.





2. 긍정적 프로그래머, 부정적 프로그래머


이런면에서 여러 성격의 프로그래머가 있겠지만 긍정적 프로그래머와 부정적 프로그래머에 대해서 생각해보았습니다.


긍정적(공격적) 프로그래머는 코드를 빨리 생산하려는 경향이 있고 일을 받아들이는데 있어서 별다른 거부감이 없어서 일을 시키기에 편합니다. 나의 코드가 잘돌아 갈것이라는 믿음이 있습니다. 테스트를 잘 안합니다.


클라이언트쪽 프로그래머분들이 이런분들이 많습니다.



부정적(방어적) 프로그래머는 코드를 생산하는데 오래걸리고 일을 시작할때도 굉장히 힘듭니다. 절대로 누구도 믿지 않기에 몇번이나 코드를 다시 확인하고 테스트 해봅니다.


서버쪽 프로그래머분들이 이런분들이 많습니다.


여러분은 어느 쪽에 속하시나요?





3. 지피지기면 백전백승


내가 긍정적 프로그래머라면 혹시 내가 마음껏 진행한 코드 때문에 다른사람이 고생하고 있지는 않는지

충분히 검증은 했는지 코드를 너무 신뢰하고 있는건 아닌지 나 자신을 감시할 필요가 있습니다.



내가 부정적 프로그래머라면 나의 고집으로 프로젝트가 앞으로 나아가기 힘든건 아닌지 다른 사람에게 너무 불친절 한건 아닌지 너무 완벽한 코드를 고집하다 나 자신의 정신건강을 갉아 먹고 있는건 아닌지 감시할 필요가 있습니다.



아마 프로그래머라면 일반인에 비해서 부정적 성향이 강할겁니다. 그럼에도 불구하고 그안에서도 나는 어느쪽에 가까운 사람인지 한번 생각해볼 필요가 있고 그로인해 생기는 단점을 잘 관리해줄 필요가 있습니다.



저는 부정적 프로그래머에 가까운데 가끔 에라 모르겠다 될대로 되라라는 심정으로 코딩을 할때가 있습니다. 지금은 끊었지만 술먹은 다음날내지는 매우 피곤한날 아니면 100% 원하는 답이 나오지 않았지만 너무 시간을 고민하는데 많이 썼을때 될대로 되라라고 해봤자 내가 원하는 코드의 80~90%정도는 되지만요.



암튼 요지는 자기 자신을 잘 알고 잘 대처하자.




4. 사수와 부사수


A. 사수가 긍정적인 프로그래머 인데 부사사수는 부정적인 프로그래머이면..


가끔 부사수가 사수를 무시할때가 있습니다. 사수 입장에선 저 자식은 왜이렇게 말을 안듣지 언제 한번 쉬원하게 네! 하는적도 없고 말이야. 부사수는 무지막지하게 진행되는 코드를 보며 한숨쉬며 따라가기 바쁘고 혹시나 저 긍정적인 코드땜에 일이 터지진 않을까 걱정합니다. 사수는 가끔 부사수의 코드에서 버그가 발견되면 그 근본적인 원인이 본인에게 있음을 모르고 엄한 부사수만 잡을때가 있습니다. 긍정적 사수는 가끔 일을 산더미 처럼 가지고 올때가 있습니다.(연구하고 테스트하는 기간은 산정안한거죠. ㅋㅋㅋ)



B. 사수가 부정적인데 부사수는 긍정적 프로그래머이면..


부사수는 맨날 혼날일만 쌓입니다. 꼼꼼한 사수덕에 숨쉬기 힘들며 코딩을 하는 재미를 잃게 됩니다.

사수에게 뭔가를 물어보는게 미안하면서 무서운일이 됩니다. 외부에서 이리저리 들어오는 요청을 논리정연한 말로 줄이거나 물리쳐내어 부사수는 안락한 직장생활을 하게 됩니다. 사수는 보통 한번은 자세하고 친절히 설명해주지만 같은걸 두번 설명해주긴 싫어합니다. 



C. 긍정적 사수와 긍정적 부사수


이 조합에겐 프로젝트의 수명이 길고 자그마한 버그가 치명적인 일은 가급적 맡기지 않는게 좋습니다.


그렇지 않은 일을 맡길때면 어마어마한 시너지 효과를 내면서 불도저처럼 일을 진행하는걸 볼수 있습니다.




D. 부정적 사수와 부정적 부사수


열심히 연구하는 조합입니다. 뭔 말만 하면 얘민하게 받아들이는통에 참 접근하기 힘든 조합이지만 막강한 맡은일은 책임

감있게 완수하는 편입니다. 


이 조합이 코드에서 어떤 문제를 일으킨다면 그건 누가해도 마찬가지 일겁니다. 둘은 최선을 다했을테니까요.





5. 끝으로..


프로그래머의 성향이라는건 긍정적 부정적인 요인 말고도 여러가지고 영향을 미치겠지만 


논리적인 일을 하는 프로그래머라지만 사실 프로그래머의 생활 그 안에는 오히려 주관이나 성격, 경험들이 논리적인 사고보다 훨씬 많이 작용한다는 얘기를 하고 싶었습니다.


제 경험으론 본인의 행동이나 선택에 대한 설명을 이렇게 저렇게 하지만 제가 보기엔 그냥 개취에요..^^