게임 프로그래머의 만담, 게임코디 2nd
+1 vote
1.1k views 만담 (6p) , 1.1k views
작은 회사에서 2년 정도 근무 하고 이직을 했습니다.

전 회사에서는 거의 업무는 혼자하면 되었는데

지금은 클라 서버 프로그래머분들도 몇분 계시고

모르는것 있으면 질문을 하라는데 뭘 물어봐야 할지 모르겠네요

지금은 소스 읽는 중인데 보통 다른분들 같으면 어떤질문을 하실까요?

만담에 대한 답글을 하려면 로그인 또는 가입해야합니다.

3 answers

+2 투표
저는 숲-나무-잎 이런식으로 큰쪽에서 작은쪽으로 들어가는걸 좋아하는 편이라 전체적인 시스템 구조를 먼저 파악합니다.

서버든 클라든 어플의 시작 지점, 스레드 관리, 리소스 로딩, 패킷 입력 후 로직코드까지 전달 과정, 다시 유저에게 응답하는 부분까지.

모바일이라면 유저의 터치 입력부분 부터 세부 로직까지 도달하는 과정, 다시 유저에게 피드백을 보여주는 부분

이렇게 한 싸이클이 어떻게 돌아가는지를 파악하죠.

그 뒤에 기능 하나하나가 어떻게 구현되었는지 세부적으로 분석 합니다.

 

이런 부분은 문서화가 되어 있으면 이해하기 더 좋아서 이런게 어디에 정리되어 있냐를 물어보고요.

(대부분 문서화가 없을테니) 코드 몇번 훑어보다가 정말 안찾아지거나 분명히 이런게 있을텐데 왜 없지? 할 때 물어보죠.

세부 로직은 코드 보면서 파악하는게 더 좋죠.

 

구조 파악이 어느정도 되면 데이터 분석으로 넘어가는데 게임 데이터, 유저 데이터 이렇게 나눠서 파악합니다.

게임 데이터는 몬스터 테이블, 맵 테이블, 캐릭터 테이블, 아이템 테이블 등등 이런 정적 게임 데이터들이

어디서 로딩 되고(파일인지 디비인지) 어디서 관리하는지를 봅니다.

대부분 기획팀에서 엑셀로 작업할텐데 그걸 어떻게 변환해서 쓰는지 그 코드는 어디인지 등등...

 

유저 데이터는 실제 게임을 플레이 하는 유저의 실시간 데이터들이죠.

인벤토리 정보, 생성된 캐릭터 정보, 소지한 아이템, 스킬 등등

최종적으로는 디비에 저장될테지만 메모리에 어떤 클래스가 어떻게 들고 있는지

이런것들은 혼자 파고드는것보다 서포트 받으면 분석하기 훨씬 수월하죠.

 

신규가 아닌 라이브팀에 들어가면 이정도만 대략 본 다음에 실제 작업하면서 알아갈 수 밖에 없더라고요.

서비스가 오래되었을 수록 히스토리도 알아야 되고 혼자 했을때 처럼 다 파악하고 꿰뚫고 있긴 힘든것 같습니다.
답글 (1.9kp)
조언 감사합니다~~
코드 한번 쭉 따라가 봐야겠습니다
저는 개인적으로 Data가 정의된 곳부터 봅니다. 게임의 대부분 것은 Data 흐름이 주된 것이라 생각하기 때문이죠.  그러다 보면 어디서 Data를 저장하고, 생성하고, 로드하고, 전달하고, 표현하는 곳을 알게 되면,
그때부터는 이해가 잘 안 가는 클래스나 파일들의 형상관리(ex, SVN, perforce, Git 등)의 로그를 봐서 가장 히스토리에 지분이 많은 분을 찾거나 가장 최신의 작업자를  찾아 커피 한 사발 들고 가서 같이 하면서 물어보는 편입니다. 대부분 친절히 알려 주시지만 가끔 대인 관계를 잘 못하시는 분일 수도 있으니 최대한 정중히 접근하는 편입니다. 그러다 나중에 조금씩 친분이 쌓이면 이것저것 많이 물어보고요 ㅎㅎ
+1 vote
음.. 일단 경력직 이직이고

나이나 흥미가 비슷한 사람들 위주로 친분을 쌓는것도 좋을듯 합니다.

그러면서 성격을 파악하고 회사의 구조를 파악해 가면서

이사람이다! 싶은 사람에게 커피라도 사주면서 물어보기 시작하면 어떨까 싶어요 ㅋ
답글 (8kp)
일단 친해지는것 부터
감사합니다~
+1 vote
소스 코드가 어떻게 구성 되어 있는 지는 당연히 아셔야 할 거 같고, 그외 내용을 좀 언급하자면...

형상 관리는 어떻게 하는 지 (svn, git, perforce, ...)

빌드 시스템(CI)은 어떻게 되는 지 (젠킨스, 팀시티, ...)

패치 버전 관리는 어떻게 하는지 (패치 제작 주체, 주기, 공유 방식 등)

브랜치 관리는 어떻게 하는 지 (피쳐 브랜치, 릴리즈 브랜치, 마스터 브랜치 등등)

QA나 버그 트래킹은 어떻게 하는 지

라이브에서 발생한 덤프나 로그를 수집하는 시스템이 있는지, 있다면 어떻게 사용하는 지

문서 관리는 어떤 시스템을 쓰는 지, 사내 메신저 사용법, 이메일 작성 요령, .. 등등
답글 (3.6kp)

게임 프로그래머의 만담 커뮤니티, 게임코디 입니다

온종일 코드와 씨름하는 우리들의 외로움을 삭이고자 합니다