일전에 비슷한 글을 쓴 적이 있습니다 그에 이어지는 2탄이라 볼 수 있겠네요 ^^;
많은 분들이 프로그래머는 당연히 언어! 이지 라고 판단하시지만 실제론 아니죠
언어를 잘 다룰 줄 아는 능력, 생각할 줄 아는 능력, 등과 같은 기본적인 조건을 빼고 좋은 프로그래머의 필수 조건 세가지가 있습니다.
1. 영어를 잘 할 것,
절대 대화를 위한 영어를 이야기하지 않습니다. (물론 대화가능하면 좋죠.)
못해도 레퍼런스. 그리고 기술문서 또는 시방서, 주문서, 기술제원서 ....등등 원할하게 읽고 이해하고 또 작성할 줄 아셔야 합니다.
황당하죠? 왜 영어를 하라는 건지.. 기계를 다루기위해선 첨부된 메뉴얼을 읽어보시는건 당연하다고 다들 생각하시죠?
그러면 프로그래밍 하기위한 참조문서들은 어떤언어로 작성되어 있을까요?
영어 입니다. 모든 컴퓨터공학의 에센셜인 문서는 영어로 되어있으며 읽어내고 습득하고 또 작성해 내야 됩니다. 문제점이나 궁금증
등의 피드백도 영어로 보내야 하니까요. 가능하면 코드내의 주석은 영어로 작성하시는 게 좋습니다.
아! 몇분은 이러시겠죠. "요즘에 한글로 래퍼런스 제공해 준다. 그러니까 큰 문제가 되지 않는다." 그러면 그분들에게 말씀하세요 갑에게 "래퍼런스 한글번역이 완료되지 않아 프로젝트 진행이 안됩니다" 라고 한번 말해보라고 ㅋㅋ
2. 문서화 능력
많은 분들이 그럽니다. 프로그램을 만들 때 주석은 나만 볼 수 있으면 된다.
엿먹으라 하세요.
솔직히 말할게요 코드를 짜는 시간은 하루에 길어봤자 5시간 이내입니다. 그럼 나머진 뭐하느냐? 문서화 하는 일에 하루종일 걸립니다.
이건 업무회의, 스케쥴관리 도 포함되는 일이죠. 협업에서 제일 중요한 것은 누구든지 알아 볼 수 있는 문서 구조를 구축하는 것.
유지보수에 필요한 모든 문서를 구축해 놓을 것 등. 뭐 물론 중대 프로젝트를 진행하는 곳에선 이걸 잘하는 매니저분께서 잘 조율해 주십니다..
3. 체력
??????????????? 여기서 여러분이 "이 작성자 무슨 개소리야?" 라고 하실겁니다.
쓸대없이 잡다한 설명 안하겠습니다. 제가 설명한 세가지 필수 능력중 하나 선택하라면 전 체력을 선택합니다. 그만큼 중요하죠.
이 직업을 가지면서 롱런하기 위해 필요조건 이며 반드시 필요한 자기관리라고 짧게 정리할 수 있습니다.
체력의 부족함을 느끼는 순간이 은퇴할 시기라는 것이 이 업계의 중론으로 받아들이고 있습니다, (선배님들이 자주 하시는 소립니다)
쓸대 없이 이렇게 세가지 조건을 골라 봤습니다. ~_~
공감 해주시길 바라면서.. 이 업계에 대해 너무 쉽게 생각하지 말아주세요. 쉽게 생각하면 할 수록 스스로 몸값을 떨어뜨리는 자승자박이 됨을 알아주시길 바랍니다