SMS처리 도우미
E-mail
  ldwin@naver.com
제목
  프로그래머로써 꼭 필요한 자기개발사항, 덕목 (From. 소스놀이터)


개인적으로 프로그래머로서 꼭 필요하다고 생각하는 것이 있습니다.

1. 의사전달능력, 이해력

누군가, 우리에게 "이러이러한 프로그램을 만들어주세요." 라고 할 수 있습니다.

그런데, 그의 말을 들어보니, 생각을 구현할 시, 너무 부족한 점이 많은 겁니다.

즉, 빠뜨린 점들이 많은 걸 알게 된거죠.

그런데, 그런 점들을 설명해주면 전문 용어를 많이 얘기하게 되고, 상대방은 잘 이해하지 못하게 됩니다.

불행히도 그렇게 의사소통해야 할 사람이 오너라면, (또한, 컴퓨터를 잘 모른다면) 앞으로 험난한 여정을 예상하셔야 합니다.

그런 문제를 타개할 수 있는 방법은 컴퓨터 용어나 관련 사항을 쉬운 말로 바꿔 설명할 수 있는 능력입니다.

혹, A를 만들어 달라고 했는데. 나온 결과물이 B 라면....  티격태격 싸우거나. 다시 만들거나, 일을 그만두어야 할 지 모르니 쉽게 넘어갈 수 있는 일이 아니죠 ! 

 

2. 팀원들과의 연합

프로그래머가 주로 혼자 작업하여서, 팀원들과의 조화가 힘들수 있습니다.

하지만, 연합은 무척 중요합니다. 

서로 힘을 합치지 않는 조직이 어떻게 성공할 수 있을까요~?

최대한 대화를 하고, 팀원들과 연합을 유지하면서 좋은 결과물을 만들어 내어야 합니다.

그런 곳이라면 일하고 싶은 의욕이 살아나지 않을까요?

3. 고객의 요구를 잘 이해하기

고객이, "이러이러한 걸 만들어달라"고 하면 그 의도를 충분히 파악할 필요가 있습니다.

의도를 파악한 후에는 어쩌면 프로그램을 더 쉽게 바꾸도록 제안할 수 있겠죠. 그 후 OK 사인이 떨어질 수 있습니다.

고객의 의도를 빗겨가면서 말하길, "이건 시간이 많이 걸린다"고 하면, 따가운 눈초리를 맞이할 가능성이 많습니다.

 

4. 쓰는 사람이 편하도록

전 개인적으로 고급 프로그래머와 초급 프로그래머를 구분하는 것이 프로그램 실력보다 기획능력... 쓰기 편하게 만드는 능력과 관련 있다고 생각합니다.

쓰기 편하게 한다는 게 꼭 어렵게 프로그래밍하는 것을 의미하지 않습니다.

"어떻게 메뉴를 배치하고, 어떻게 기능을 구현하며 최대한 적은 클릭으로 기능을 실행하게 하는가" 하는 점입니다.

화면을 보고, 자연스럽게 버튼으로 손이 가며, 자연스럽게 별 다른 설명 없이도, 사용 가능하다면.... 그런 프로그램이 좋은 프로그램이고 또, 그것을 제작한 프로그래머가 뛰어난 프로그래머가 아닐까요?

5. 예외사항 잘 파악하기

이제 프로그래머로서 기술적 자격을 이야기해보죠.

그 만큼 앞서 설명한 것들이 중요하다고 생각했기에, 이제서야 프로그래밍에 대한 이야기를 쓰게 됩니다.

프로그램을 짜게 될 때 예외상황이 발생할 수 있습니다.

흔히 말하는 버그나 에러의 주원인이죠.

금액을 입력받을 때, 프로그래머는, "당연히 숫자가 입력되겠지"하고 생각하게 됩니다.

하지만 사용자는 가지각색입니다.

어쩌면 오천원 이렇게 적을 지 모릅니다.

그럼 당연히 에러가 나죠.

혹은 -3000 이렇게 적을 지 모릅니다.

이런 예외사항을 잘 캐치해서 각각의 상황에 어떻게 대처할 수 있을지 생각해야 합니다.

만약, 오천원 이라고 적었다면 '금액을 숫자로 입력해 주세요'라고 알릴 수  있겠죠.

 

6. 소스코드 파악능력

이제 새로운 프로그래머가 들어왔는데 이렇게 말합니다.

"이 프로그램은 너무 복잡하게 짜여져 있습니다. 이런 프로그램은 누구도 사용할 수 없습니다.

나중에 이러한 문제가 생길수 있습니다.

모두 바꿔야 될 것 같은데요"

만약, 누군가 이렇게 말한다면 프로그래머 자질을 의심해 보아야 합니다.

어쩌면 그는 이렇게 말하는 겁니다.

"저는 이 프로그램을 이해할 능력이 없어요. 이걸 어떻게 수정하면서 사용한다는 거죠.

차라리 제가 할 수 없으니 처음부터 새로 만들어야겠습니다"

네 소스코드를 분석하는 능력은 대단한 힘을 발휘할 수 있습니다.

추가기능을 넣어야 할 때 꼭 필요한 부분만 바꾼다면, 에러도 없고 속도도 빠르고 작업시간이 적게 걸리게 되겠죠.

 

7. 다른 사람도 알아보기 쉽게 만들기

다른 사람도 알아보기 쉽게 프로그램을 짠다면 다른 사람뿐 아니라, 자신에게도 유익을 줍니다.

한 달 뒤에 코드를 다시 보게 되었는데, 주석도 잘 달려있고 알아보기 쉽다면, 우리는 아주 휘파람을 불면서 프로그래밍을 하게 됩니다.

 

8. 원하는 기능을 구현하기 힘들 때 문제해결능력

"혹시 엑셀로 저장하는 기능을 만들어 달라"는 요청을 받는다면, 엑셀과 관련된 함수를 알아야 합니다.

모른다면, 어떻게든 찾아내야 겠죠.

인터넷에는 생각보다 많은 정보가 있습니다.

대개 모두 찾을 수 있죠.

그래도 찾아지지 않으면, 구글을 이용해서, 해외사이트를 검색하세요 ~

머리를 싸매고 영어사전과 씨름하면, 문제의 해결책을 찾을 수 있습니다!

 

트위터, 페이스북 공유 부탁드립니다~!
트위터   페이스북


  • 패스워드
           
X