엔트리 레벨 게임 프로그래머의 일반적인 일상 업무는 무엇입니까? [닫은]


64

내가 알고 싶은 것은 : 게임 산업 직장에서 대학원 프로그래머의 일상 업무는 무엇입니까? 주로 코딩, 분석, 디자인 또는 무엇입니까?

감사합니다.

추신 : 저는 현재 대학 2 학년이며 게임 프로그래밍, 특히 게임 플레이, 도구 또는 UI 프로그래밍을 전문으로하고 있습니다.

답변:


103

내 경험을 바탕으로 (미국에서 프로토 타입을 얻었고 약 50 명의 팀이었던 프로젝트에 대학을 고용 한 후 취소되었다가 4 년 동안 두 번 더 게임을 계속했습니다. 총 개발자 기반이 약 200 인 곳)

  • 아마도 프로그래밍 시간의 약 50-70 %를 소비 할 것입니다. 이번에는 정말 영리한 기능을 만드는 것과 같은 '재미있는 것들'을 포함하고 있으며 8 시간 동안 메모리 덤프를 쳐다 본 시간을 정확히 파악하려고합니다. 아마도 그 중 25-50 %는 실제로 키보드에 앉아 현장에서 사용할 수있는 긴 형식의 프로그래밍 일 것입니다.
  • 버그 심사, 버그 심사에 대한 미팅, 예약, 다른 프로그래머 및 제작자를위한 고급 문서, 이메일, 전체 프로젝트 / 회사 상태 업데이트 등과 같은 회의 및 관리 작업에서 15-25 %가 추가되었습니다. 이것은 자율성에 달려 있습니다. 자율성이 없다면 자신의 일정을 설정하는 데 시간이 덜 걸리기 때문에 프로그래밍에 더 많은 시간을 할애 할 수 있습니다. 일정을 더 잘 제어하면 더 흥미로운 일을 할 수 있지만이 일을하는 데 시간을 소비해야합니다.
  • 또 다른 15-25 %가 디자이너 / 아티스트를 도와주고 실제로 게임에 대한 창의적인 회의에 참석하고 게임 디자인 문서를 최신 상태로 유지하는 등의 일을합니다.

급여 등급이 올라 갈수록 프로그래밍에 소비하는 시간이 줄어 듭니다 . 더 많은 관리 결정을 내리고, 경험이 적은 사람들이 팀에 도움을주고, 문서 및 코드 / 아키텍처 검토에 더 많은 시간을 할애해야합니다. 더하기 측면에서 품질 프로그래밍의 아마 올라갈 것입니다; 보다 흥미로운 기능 (그리고 더 실망스러운 버그)을 다루게됩니다.

디자이너와 아티스트가 올라가거나 내려가거나 실제로 변하지 않는 데 드는 시간은 작업하려는 영역에 따라 다릅니다. UI, 도구 및 게임 플레이에 대해 작업하려면 시간이 늘어날 것으로 예상하십시오. 경험이 많을수록 50 % 이상으로 증가합니다. 선임 설계자와 함께 새로운 도구를 계획하고 시연하고 기존 도구를 어떻게 사용하는지 확인할 것입니다. 불행히도 이번에는 프로그래밍 일정에서 나옵니다.


내가 기억하는 방법은 아니지만 훈련 파트너가 실제로 당신에게 물건을 가르 칠 때 도움이된다 ;-)
coderanger

@ coderanger : 우리 둘 중 하나가 교육 파트너로부터 많은 도움을 얻지 못했다고 생각합니다. ;)

26

Joe가 제기 한 높은 수준의 토론 요점 이외에도 알아야 할 몇 가지 사항이 있습니다.

  • 일반적으로 리더가 작업을 할당하는 데 사용할 일종의 버그 추적 또는 작업 추적 도구를 사용합니다. 때때로 그들은 동일합니다 (예 : FogBugz). 때때로 버그 목록은 게시자를 통해 이루어지고 작업 목록은 내부 위키에 있습니다. 당신은 앉아서 어떤 일을 시작하지 않고 , 당신의 작업이 지시 될 것입니다.
  • 때로는 작업을 추정하라는 메시지가 표시됩니다. 이것은 FogBugz와 같은 시스템을 사용할 때 암시 적입니다. 책임의 일부는 더 높은 수준의 기능을 여러 부분으로 나누어서 이정표를 마무리하는 데 걸리는 시간을 확인하는 데 걸리는 시간을 올바르게 추정하는 데 사용할 수 있습니다.
  • 많은 스튜디오가보다 민첩하고 스크럼 방식으로 전환했습니다. 번 다운 차트 업데이트 (예 : 작업 Y에 X 시간을 소비했으며 Z 시간에 완료 될 것으로 예상)는 매우 일반적입니다. 일일 스탠드 업 회의는 아마도 더 일반적 일 것입니다. 어느 쪽이든 작업중인 작업에 대한 가시성을 제공 할 수 있습니다.
  • 버전 / 소스 제어를 사용하게됩니다. 스튜디오가 클수록 Perforce를 사용할 가능성이 높습니다. 파일 체크 아웃, 파일 커밋, 로컬 병합 충돌을 해결할 수있는 기본 사항을 알고 있어야합니다. 분기 및 병합 분기를 이해해야 할 수도 있습니다. 일부 스튜디오는 모든 개발자가 현지 지점을 얻는 곳에서 일하며 지점을 방문 할 때 원하는만큼 체크인하고 병합 할 수 있습니다. 다른 스튜디오 (우리의)는 "주요 중단하지 않음"정책 만 가지고 있으므로 업데이트했는지 확인하고 빠른 테스트를 수행하여 아무것도 깨지 않았는지 확인한 다음 체크인해야합니다. 일부 스튜디오에는 없습니다. 그 정책과 사람들은 항상 혼란스러워하고 매우 성가 시며 그 문제를 해결하는 방법을 배워야합니다.
  • 코드 검토는 상당히 일반적입니다. 때로는 코드 부서 전체에서 사용되기도합니다. Google 팀은 체크인에 대한 검토를 위해 일대일로 코드 버디 방식을 사용합니다. 어느 쪽이든 다른 사람의 코드를 비판적으로 분석하도록 요청해야합니다.

11

방금 매우 큰 게임에서 4 개월 인턴쉽을 마쳤습니다. 프로젝트는 내가 도착했을 때 매우 늦게 진행되었으므로 대부분의 작업은 버그 수정이었습니다. 어쨌든 그것은 아마도 내 시간의 괜찮은 부분 일 것입니다 ... 게임 개발에 대한 경험이 아닌 기능을 디자인하거나 개발하는 대신 코딩 경험을 사용하여 버그를 수정했습니다.

내가 한 많은 일도 일종의 IT 관련이었습니다. 내부 도구 개발은 게임 개발에 직접 도움을주고 일부는 이전에 수동으로 수행 한 것을 자동화하는 큰 일이었습니다. 물론 Microsoft의 Games for Windows Live 설치 관리자를 포함한 다른 도구의 버그 수정.

플레이 테스팅은 상당히 큰 부분이었고, 또한 플레이 테스터에게 밀린 빌드를 만드는 일도 담당했습니다. 게임 세계의 버그는 추적하기가 매우 어렵고 원인을 파악하기 위해 많은 작업이 필요합니다.

나는 게임이나 그래픽을 전문적으로 다루지 않았으므로 아마도 당신이 한 직업은 이것보다 당신의 전문성과 관련이있을 것입니다. 그러나 그것이 당신에게 아이디어를주기를 바랍니다.


4

내 마지막 해 프로젝트는 HTML5 캔버스 요소에 있습니다. 현재 지난 2 개월 동안 기존 플래시 게임을 HMTL5 캔버스로 이식해야하는 인턴십을 진행하고 있습니다.

내가 여기에서 내 인생에 대해 말할 수있는 것부터는 힘들어. 요구 사항 팀에는 매우 구체적인 요구 사항이 있습니다. 마우스 클릭이 무엇을하는지, 게임에 효과가 적용되는 방식. 가장 까다로운 요청에도 프로그래머가 아무리 힘들어도 문제를 해결하고 모든 요구 사항을 구현 한 후에야합니다. 버그보고가 시작됩니다. 신은 그 성가신입니다. 그것은 실제로 당신의 신경을 얻기 시작합니다. 한 번의 클릭으로 1px의 오프셋은 당신의 인생을 지옥으로 만들 수 있습니다. 그것은 당신의 변덕과 환상에 적응할 수 있도록 전체 위치 및 상호 작용 공간의 새로운 구조를 의미 할 수 있습니다.

그러나 그것의 재미! :) 플래시가 자동으로 수행하는 기능을 다시 만들 수있는 방법에 대해 커뮤니티와 상호 작용하여 실제로 하나의 똑똑한 기능을 작성하는 기쁨. 그것의 모든. 그 일은 당신이 그 직업을 갖는 것을 후회하지 않는 것과 같은 시간입니다. 그것은 세상에서 가장 좋은 직업인 것처럼 느끼고 내 조카들에게는 세상에서 가장 시원합니다.

그래서 직장에서 규칙적인 하루가 기능 구현을 위해 왔습니다. 기능을 가능하게하는 하나의 기능을 연구하고 검색합니다. 그 코드에서 지옥을 테스트하기. 해당 코드를 수정하십시오. 해당 코드를 최적화하는 방법에 대해 커뮤니티와 논의하십시오. 그런 다음 지구상에서 가장 좋은 프로그램이라고 생각하는 것을 작성하십시오.

하루가 끝나면 대부분 내가 성취 한 것에 만족하고 때로는 더 잘 할 수 있었던 곳과 내가 다르게 할 수 있었던 것에 대해 여전히 긴장을 느낍니다. 나는 초보자 단계에 있기 때문에 앞으로 어떻게 될지에 대해 조언하지 못할 수도 있지만 현재로서는 .. 가장 멋진 일을해야한다고 생각합니다. :)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.