Home

[Develop] 훌륭한 프로그래머 되는 법 [ Part 3. 개인적인 일로 받아들이기 ]

훌륭한 프로그래머 되기

훌륭한 프로그래머 되는 법

날짜: 2019.10.01 ~ 2019.12.11

Part3. 개인적인 일로 받아들이기

목차

  1. 배움을 사랑하며 살기
  2. 테스트 기반 개발자
  3. 도전 즐기기
  4. 부진피하기
  5. 윤리적인 프로그래머
  6. 언어에 대한 사랑
  7. 프로그래머의 자세

배움을 사랑하며 살기

  • 프로그래머란 직업은 배움, 즉 기량과 능력의 향상이 지속적으로 요구된다
  • 선택하고 시도할 수 있는 것은 많다. 하지만 그 중에서도 배우고 싶은 어떤것들 혹은 알지 못하는 알려지지 않은 것을 목표로 하라. 이를 위해서는 재미있을 만한 것을 조사하는 데 우선 시간을 들여라. 그리고 그중에서 자신에게 이득을 줄 수 있는 것을 선택하라.

    • 새로운 기술
    • 새로운 기술적 용법
    • 사람과 함꼐 일하는 방법
    • 새로운 문제 영역
    • 어떻게 배워야 할지 배워라
    • 완전히 다른 것을 배우라
  • 배움의 질을 향상시키기 위해 가능한 한 많은 자료를 이용하라
  • 나중에 버릴지언정 지금 배우고 있는 것을 기록하라
  • 지식 포트폴리오를 작성하라. 포트폴리오를 유지 및 강화하기 위해 힘써라
  • 배운 것을 블로그에 기록하고, 대화를 하며, 친구에게 가르치고 멘토가 되어라. 이는 자신에게도 매우 이로운 행위이다
  • 간단하게 설명할 수 없다면, 충분히 잘 이해하지 못했다는 증거이다

테스트 기반 개발자

  • 운전과 프로그래밍은 흥미로운 유사성을 가진다
  • 운전을 잘하기 위해서는 자동차의 기능, 규정, 에티켓을 알아야 하며 잘하기 위해서는 충분히 많은 연습과 노력을 해야한다. 개발자가 개발을 잘하기 위해서는 도구와 언어에 통달해야 하며, 어느 수준에 이르면 주제에 대해 더 큰그림을 보게 된다. 문제를 처리하는 세세한 방법까지 신경 쓰는 대신 문제를 해결하는 대략적인 경로를 계획할 수 있다
  • 교통사고의 대부분은 운저자의 잘못인 것처럼 코드 문제의 대부분은 프로그래머의 잘못으로 발생한다
  • 좋은 개발자가 되기 위해서는 안일함을 극복해야 한다. 안일함은 문제를 발생 시킨다
  • 연습이 완벽을 만들며, 부주의는 사고를 불러온다

도전 즐기기

  • 적극적이고 활동적인 프로그래머는 새롭고 흥미로운 도전을 지속적으로 찾아다닌다
  • 도전적인 문제에 적극적으로 임하는 자세는 더 배우고 발전할 수 있도록 장려하고 흥분시킬 것이다
  • 스스로가 어떤 일을 할때 흥분하고 재미를 느끼는지 찾아보자. 그리고 시도하자
  • 온종일 지루한 업무를 수행하느라 바쁜 와중에 오히려 그 안에 흥미로운 도전을 끼워넣어 균형을 맞추는 것이야말로 더 나은 프로그래머가 되기 위한 길이다

부진 피하기

  • 편한 삶이란 곧 학습하지 않고, 진행하지 않으며, 더 이상의 발전이 없는 것을 의미한다. 안전지대에 있다는 것은 정체되었다는 뜻이다
  • 자신의 기술들을 유지하기란 어려운 일이라는 점에 주의하자. 이를 위해서는 스스로를 불편한 상황에 두어야 하고 많은 노력을 쏟아 부어야 한다
  • 의식적으로 자신의 기술에 투자해야한다. 그리고 그런 결정을 지속해야 한다
  • 해볼만한 실천 방안

    • 키보드 단축키에 대해 알아보고, 작업 흐름에 어떤 영향을 주는지 확인해보라. 마우스를 사용하지 않도록 의식적으로 노력하라
    • 새로운 주제에 대해서 알아보라. 현재로서는 알아야 할 필요가 없는 주제에 대해 알아보라. 예를 들면 수학적 지식이나 정렬 알고림즘에 대해 깊게 알아보라
    • 개인적인 프로젝트를 시작하라. 그리고 소중한 여가 시간의 일부를 괴짜스럽게 할애하라. 오픈 소스로 게시하라
  • 아무런 도전거리도 없이 같은 일만 반복하는 것은 위험하다. 협소한 영역의 전문가가 되기 싶다. 새로운 도전을 위하여 떠나라

윤리적인 프로그래머

  • 윤리적인 가치관은 프로그래머로서 어떤 행동을 해야 하는지, 그리고 직업적으로 어떻게 사람들과 관계를 맺어야 하는지에 영향을 준다
  • 적당히 석고를 붙이거나 땜질하는 식의 방법으로 버그를 수정하지 말라. 만약 기술 부채로 남았다면 이는 빠르게 처리해야 하는 것이다
  • 윤리적인 프로그래머는 가능한 한 최고의 코드를 만드는 것을 목표로 한다. 어떤 시간이나 상황에서도 자신의 능력 안에서 최선을 다하라
  • 하면 안될짓은 하지 말아라. 그리고 다른 사람의 인생을 저해할 수 있는 소프트웨어를 만들지 말라. 이는 힘의 남용이다
  • 대접 받고 싶은 대로 대접하라

언어에 대한 사랑

  • 좋은 프로그래머가 되기 위해서는 지속적으로 새로운 도전을 접하고, 배우며, 새로운 문제를 해결하고 새로운 기술을 사용해야 한다
  • 하나 이상의 언어로 프로그래밍하는 것 역시 성장 과정의 일환이다. 여러 언어를 배우며 성장하라
  • 하나의 언어로 좋은 코드를 작성하려면, 자신의 스타일을 고집하기보다는 언어 고유의 방식과 관습에 몰입해야 한다

프로그래머의 자세

  • 이번 챕터는 일을 할 때 바른 자세로 일을 하는 방법과 눈 건강을 지키는 방법이 소개되어 있다
Loading script...