이런 성격을 갖고 있다면 프로그래머는 그만두는 게 낫다 일반 S/W관련




 누구나 프로그래머가 될 수 있는 자질을 갖고 있지는 않습니다. 물론, 누구나 프로그래밍을 배울 수는 있지만 프로그램을 짜는 법을 배우는 것과 프로그래머로서 자신의 경력을 쌓아가는 것과는 별개입니다. 코딩에 대한 재능을 가진 사람이라도 프로페셔널 프로그래머로서는 적합하지 않을 수도 있습니다. 제 말이 기묘하게 생각되겠지만 실제로 일어날 수 있는 일입니다.  


저는 컴퓨터 사이언스 학위를 따기 위해서 10년 이상을 투자했고 그 동안 '프로그래밍이야말로 내가 나아가야 할 길'이라고 생각했지만 결국 그렇지 않다는 것을 깨달았습니다. 저는 프로그래밍 워크 플로나 그와 관련된 다양한 도전을 즐기는 사람을 보고서 이러한 결론에 도달하게 되었습니다.  

프로그래머가 된다는 것은 단순히 코딩 작업을 하는 것만을 의미하지 않습니다. 전체적인 이미지를 잘 생각해야 하는 일입니다. 만일 당신이 프로그래머라는 직업과 맞는다는 확신이 들지 않는다면 올바른 방향을 제시해 줄지도 모르는 몇 가지 체크 항목을 소개할까 합니다.  


1: 실험적인 창조성이 결여되어 있다


프로그래밍이란 확실히 로직에 의존하는 바가 크긴 합니다만 결국에는 창조적인 예술입니다. 새로운 프로그램은 하얀 캔버스이고 당신이 사용하는 붓은 프로그래밍 언어, 프레임워크, 라이브러리 등입니다. 프로그래밍이란 무(無)에서 무엇인가를 탄생시키는 작업이며 이것을 실현하기 위한 프로세스에는 실험을 두려워하지 않는 정신이 필요합니다. 

코딩의 권위자라면 좋은 코드를 작성하기 위한 「유일하고 올바른 방법」이 있다고 말할지도 모르지만 그것은 완전히 잘못된 생각입니다. 그런 말은 집을 건축하거나 소설을 쓰거나 스튜를 만드는데 유일하고 올바른 방법이 있다는 말과 같습니다.  소프트웨어를코딩하는데는 몇 가지 방법이 있고 프로그래머는 이러한 방법을 진행하며 시도하는 과정을 거쳐야 합니다.  

타고난 호기심이 없으면 시야가 좁아져서 코딩 문제에 대해서 항상 똑같은 방법으로 임할 수 밖에 없습니다. 그렇게 되면 프로그래밍은 단순한 반복 작업이 됩니다. 결국 프로그래밍의 진정한 맛을 상실하게 되는 것이죠.  


2: 자주적으로 행동하는 타입이 아니다


뛰어난 프로그래머가 되려면 목적에 맞춰 스스로 행동할 수 있어야 합니다. 본질적이 아닌 사소한 부분을 모두 제거하면 프로그래밍이란 기본적으로 반복 작업입니다. 작성 중인 코드에 대한 개인적인 열정이나 야심이 없다면 비참한 기분만이 들게 마련입니다. 

이 이야기는 모든 창조적인 시도에도 해당됩니다(그리고 누가 뭐라고 말하던 프로그래밍은 창조적 작업입니다). 코딩에 대한 의욕은 내부에서 끓어올라야 합니다. 코딩이란 작업 자체를 사랑해야 합니다. 프로세스를 중요시 하지 않으면 최종 제품에 도달할 수 없습니다. 

아침에 일어났을 때 지금 하고 있는 프로젝트에 대한 불타는 열정을 느낄 수 없다면 프로그래밍은 당신과 맞지 않는 일입니다. 


3: 논리적인 문제 해결을 선호하지 않는다


프로그래밍은 창조적인 시도이지만 한편으로 만드는 작업보다 수정하는 부분에 많은 시간이 소요됩니다. 다른 창조적인 활동의 경우도 수정 프로세스가 포함되곤 하지만 (예를 들어 작가는 자신의 저작을 퇴고합니다)프로그래밍의 경우 대부분의 문제가 논리적인 오류에서 기인한다는 점이 특징입니다. 

디버깅이란 수정 프로세스는 프로그래밍의 핵심입니다. 수수께끼 풀기나 논리적인 퍼즐에 매력을 느끼십니까? 고장난 것을 고치고 싶다는 천부적인 욕구를 갖고 있습니까? 또한 사물의 내부의 구조에 대해서 알고 싶다고 생각하십니까? 프로그래머라면 이들 질문에 모두 '그렇다!'라고 답할 수 있을 것입니다. 

프로그래밍을 하면서 느끼는 대부분의 보람은 디버깅을 하면서 느낄 수 있습니다. 버그가 복잡하면 복잡할 수록 최종적으로 해결했을 때의 달성감은 강해집니다. 이러한 작업에서 만족감을 얻을 수 없다면 당신 입장에서 프로그래밍은 끝없는 짜증의 연속일 뿐입니다. 


4: 오랫 동안 앉아있을 수 없다


기본적으로 프로그래밍은 기본적으로 아주 긴 시간 동안 컴퓨터 앞에 앉아있어야 하는 작업입니다. 스탠딩 데스크 (일어서서 일을 할 수 있는 책상)를 도입하면 이런 부분을 다소 개선할 수는 있겠지만 근본적인 사항은 달라지지 않습니다. 당신은 컴퓨터 앞에서 매우 긴 시간을 보내게 됩니다. 

컴퓨터 앞에만 앉아있는 작업은 여러가지 문제의 소지가 있으며 오랫 동안 그러한 점을 무시하고 있으면 건강 상의 심각한 문제를 일으킬 가능성이 있습니다. 또한 집중력 결여, 밀실공포증, 생산성의 추락 등 정신적인 문제에도 대처해야 합니다.  

결국 중요한 것은 하루의 대부분의 시간을 컴퓨터 앞에서 그럭저럭 잘 보낼 수 있느냐? 라는 질문이라 할 수 있습니다. 실제로는 그럭저럭 정도로는 충분하지 않을 수도 있습니다. 오히려 컴퓨터 앞에 안아 있는 것을 좋아하는 수준이어야 할 것입니다. 그렇지 않다면 뛰어난 생산성이나 행복을 느끼기란 힘들 것입니다.  


5: 일반적인 근무 시간을 희망한다


프로그래머로서의 경력 사항은 2가지 중 하나로 정리됩니다.  1) 회사에서 누군가를 위해서 일하던가 2) 독립해서 자신을 위해 일하던가겠죠. 두 가지 모두 철야 작업, 계속해서 이어지는 코딩 세션, 종합적인 생활 수준의 저하 등으로 이어지기 쉽습니다. 

소프트웨어 개발 업계는 기한이 가장 중요한 분야이며 여기서의 기한은 일반적인 9시~5시 업무시간을 감안해서 여유있게 설정되지는 않습니다. 기한이 닥쳐옴에 따라 개발팀은 철야의 연속 이른바 '「몰아치는 기간」에 들어가기도 합니다. 독립한 프로그래머라고 해도 경쟁에서 승리하기 위해서는 매일 장시간을 투입해서 일해야 하겠죠. 

게다가 프로그래밍에 대한 문제는 머리에서 떠나지 않고 어디를 가도 따라오곤 합니다. 샤워를 할 때나 침대에서 자고 있을 때에도 문제 해결을 위해 이리저리 생각을 하게 됩니다. 프로그래밍 작업의 대부분이 머리 속에서 펼쳐지다 보니 머리 속에서 일에 대한 생각을 떨치기란 어려운 일입니다. 

운이 좋다면 「몰아치는 기간」스타일의 철야를 하지 않는 회사를 발견할 수도 있겠지만 저는 불가능하다고 봅니다. 


6: 재빨리 많은 돈을 벌고 싶어한다


소프트웨어를 개발해서 쉽게 돈을 벌 수 있던 시절도 있었습니다. 그러나 요즘에는 단기간에 큰 돈을 버는 프로그래머는 극소수입니다. 프로그래밍 업계에서 일을 하는 주된 목적이 가능한 한 단기간에 많은 돈을 벌기 위해서라면 실망할 것임에 틀림없습니다. 

게임처럼 하룻밤 사이에 대성공을 거두는 스토리는 잘못된 기대와 착각으로 연결됩니다. 많은 사람들이 같은 성공을 찾아서 개인 규모로 게임 개발에 도전하지만 모두 좌절하고 업계에서 물러나곤 합니다.   

프로그래머 업무로 많은 돈을 벌 수 있을까요? 답은 '그렇다'이지만 간단하진 않습니다. 만일 단기간에 많은 돈을 벌고 싶다면 복권을 사는 게 나을지도 모릅니다.  


정리


만일 당신이 이 글을 읽고 프로그래밍은 내가 할 일이 아니다라고 판단했다고 칩시다. 하지만 지금까지 몇 년에 걸쳐서 쌓아온 프로그래밍 기술이나 지식은 활용하고 싶다면 어떻게 해야 할까요? 


문서 작업

프로그래밍에서 얻은 기술 분야의 경험은 기술문서(매뉴얼, 사양서 등)나 저널리즘(최첨단의 정보를 캐치하는)또한 교육(지금까지 얻은 지식을 타인에게 가르치는) 분야 등에 활용할 수 있습니다. 


분석

경험 분야에 따라서 보안 시스템, 웹 플랫폼, 게임 개발, 비즈니스 모델 등의 컨설턴트가 되어서 지금까지 얻은 지식을 활용하는 것은 어떨까요? QA 직종도 분석 노하우를 활용할 수 있는 분야입니다. 


경영

비즈니스 마인드를 갖고 소프트웨어 업계에 머물고 싶다면 개발팀을 이끌어 보는 것은 어떨까요? 현실적으로 코딩을 이해할 수 있는 관리자는 극히 드뭅니다. 

제가 말씀드린 것은 요점에 불과합니다. 만일 당신이 이제부터 프로그래머가 되지 않겠다고 결정했더라도 지금까지 쌓은 스킬은 다른 분야에 응용할 수 있고 당신이 투자한 시간은 결코 헛되지 않았습니다.  

6 Signs That You Are Not Meant To Be A Programmer|MakeUseOf

Joel Lee(訳:Conyac
Photo by ShutterStock


덧글

  • 小さな願いのあすか 2014/12/16 15:35 # 답글

    솔직히 초기에는 저게 지켜지는게 가능한데... 상사를 잘못만나서... 시간이 가면 갈수록 힘들어 지더군요.
    지금은 진짜 쉬고 싶다는 생각만 드네요..
  • 떠리 2014/12/16 15:40 # 답글

    일반적인 9시~5시 업무시간 .......
  • 샛별 2014/12/17 01:20 # 답글

    1,2,3 IT밸리의 통곡의빛님께 딱 들어맞네요
  • 명탐정 호성 2014/12/18 14:47 # 답글

    힘들군요
  • Active 2014/12/19 22:21 # 답글

    IT계의 3D(...)
댓글 입력 영역



통계 위젯 (블랙)

084
468
4721127

이 이글루를 링크한 사람 (블랙)

605