퀵바

ki**** 님의 서재입니다.

사실 게임 프로그래머 리더십에 대한 이야기

웹소설 > 일반연재 > 현대판타지, 게임

kistch
작품등록일 :
2022.05.11 13:48
최근연재일 :
2022.07.17 19:55
연재수 :
50 회
조회수 :
17,256
추천수 :
1,103
글자수 :
233,327

작성
22.06.16 09:15
조회
295
추천
15
글자
11쪽

고주영과 최적화 1

DUMMY

고주영 님이 다른 사람들과 그렇게 싸우고 다닌 이유는 고주영 님의 섬세함과 솔직함 때문이었다.

경력자가 많은 주영 님의 팀에서는 아기처럼 보일 고주영 님이 선배들의 코드를 일일이 간섭하고 있었던 것이다.

이것 때문에 그렇게 싸우고 다녔군···

선배들 입장에서 봤을 때, 고주영의 태도가 건방져 보였을 것이다. 한참이나 어린 꼬꼬마 프로그래머가 허락도 없이 자기 코드를 수정하면 누구나 기분 나쁠 수 있다.

더군다나 고주영 님이 회의실에서 큰 소리로 싸울 때 들리는 대화 내용으로 유추해보면, 고주영 님은 선배라고 해서 쉽게 져주는 스타일도 아니었고, 코딩에 관해서 자기 주관도 뚜렷해 보였다. 고주영 님의 의도하지 않은 섬세함과 솔직함은 누군가의 자존심에 상처를 낼 수 있다. 그러니 선배들에게는 골칫거리였을 만하다.

하지만 난 이런 사람이 좋다. 장단이 확실한 사람. 나보다 나이가 어리든 아니든, 어떠한 것이라도 장점이 있는 사람이라면 내게는 모두 동경의 대상이고 배움의 대상이다.


나는 바로 고주영에게 메시지를 보냈다.


“주영 님. 안녕하세요? 저 이진수에요.”

“안녕하세요. 진수 님 어쩐 일이신가요?”


나는 아직 아저씨에게 들은 조언을 기억한다. 위기일 때가 곧 제안하기 가장 적합할 때라는 것.


“주영 님 아직 어디로 전환 배치될지 안정해졌죠?”

“네. 제가 회의실에서 너무 큰 소리로 싸웠나 봐요. 아무도 저를 받아주지 않아요···”

“잘됐네요. 그럼 저랑 같이 일해요.”

“네? 제 소문 못 들으셨어요?”

“소문도 들었고 주영 님 작업 로그도 봤어요. 저랑 같이 일해요.”

“후회하실···수도··· 10년 차 에이스 프로그래머들인 저희 팀 분들도 저를 포기했는데, 주영 님은 저를 더 감당 못하실 거 같아요.”


나는 경력도 낮고, 에이스도 아니라는 주영 님의 말.

그는 역시나 펙트 앞에서 앞뒤 없이 솔직한 스타일인 것 같다. 하지만 자존심이 거의 없는 내게는 별로 문제가 되지 않을 거다.


“저는 주영 님처럼 꼼꼼하지 못해서, 주영님한테 배우고 싶은 게 많아요. 그래서 주영 님과 함께 일해보고 싶어요.”

“그렇다면 저야 좋죠! 감사합니다!”


그렇게 나는 고주영 님과 함께 일하기로 결심했다.

내가 박 팀장님에게 고주영 님과 함께해보겠다고 말하자마자 고주영 님은 그날 바로 내 옆자리로 이동했다.

저 팀도 어지간히 고주영 님을 방출하고 싶었나 보다.


내 옆자리로 이사 온 고주영 님과 나는 간단히 인사를 하고 바로 업무 얘기를 했다.


“그런데 진수 님 저희 무슨 일을 해요?”

“저도 몰라요. 다음 주에 알려준대요. 저도 클라 파트에서 방출됐거든요.”

“아··· 그렇네요. 흐흐흐”

“···”

“그런데 진수 님은 왜 방출되신 거예요?”

“저는 클라이언트 파트에 협조적이지 않았대요.”

“엥? 작업 로그 보면 진수 님 커밋이 나머지 4분 다 합친 것보다 많던데요? 그런데 왜?”


나는 고주영 님에게 첫날부터 팀의 부정적인 이미지를 주고 싶지 않았다. 그래서 티타임에 대한 말은 하지 않았다.


“모르죠 뭐··· 아무튼 제가 기존에 스킬이랑 툴 작업을 해왔으니까. 그쪽 잡업을 이어서 하게 되지 않을까요?”

“그렇겠네요. 스킬은 중요 콘텐츠라 담당자를 확 바꿔버릴 수 없을 테니까요.”


나는 고주영 님에게 스킬 클래스들의 구조에 관해서 설명해주었다. 고주영 님은 일에 대한 열의가 있었고, 누구보다 성실해 보였다.

그 열의를 다른 사람들이 좋은 쪽으로 해석했다면 분명 확실한 에이스가 됐을 것이다.

고주영 님 입장에서는 불행이었겠지만, 내 입장에서는 좋은 기회였다. 나를 곤란하게 만들기 위해 혹은 내가 진짜 협조가 안되는 사람인지 평가하기 위해 붙여준 골칫거리 파트너가 알고 보니 에이스였다.



그리고 다음 주.

팀장님이 나와 고주영 님을 불렀다.


“음··· 주영 님 들으셨겠지만, 앞으로 진수 님이랑 같이 일하시면 되고요. 저희 팀으로 인사 발령은 다음 달 초에 날 거예요.”


고주영 님은 짧고 쾌활하게 대답했다.

“넵.”


기분이 나빠야 할 고주영 님의 상태가 의외로 좋자 박 팀장님은 오히려 조금 당황해하는 눈치였다.

“아··· 네··· 그러면 두 분이 해야 할 일은요.”


나와 고주영은 팀장님이 말에 귀를 바짝 기울이고 있었다.

박 팀장님은 서바이벌 프로그램 우승자를 발표하듯 첫 단어를 길게 끌며 말했다.


“바로··· 최······. 적화입니다.”


우리는 당황했다.

“네?? 최적화요? 스킬 아니고요?”

“네. 이번 사내 테스트 실패의 가장 큰 원인은 최적화라는 거 아시죠?”

“네···”

“그래서 두 분께 최적화를 맡겨볼 생각입니다.”

“그럼 제가 담당하던 스킬은요?”

“스킬은 이영식 파트장님 쪽에서 진행하실 거예요.”

“파트장님도 알고 계신가요?”

“네 당연하죠. 영식 파트장님과 논의해서 정한 겁니다.”


나는 더 이상 따져봐야 의미가 없다는 것을 안다. 지금 자리는 협상이 아닌 통보 테이블이다.

“알겠습니다.”



나와 고주영 님은 옥상으로 올라갔다.

고주영 님은 조금 화가 난 것 같다.


“이거 우리 멕이는거 아니에요? 어쩐지 팀 방출이 결정되고 나서 일이 술술 풀리더니. 내가 이럴 줄 알았어.”

“글쎄요··· 왜 이런 결정을 했을까요?”

“진수 님도 생각해 보세요. 꼴랑 이제 겨우 경력 1년 차인 저랑 고졸이라 프로그래밍에 대한 근본이 부족한 진수 님이랑 둘이 최적화를 하라고요?”


나는 움찔했다.

내가 고졸에 전공자가 아닌 것은 팩트지만, 내 앞에서 저렇게 직접적으로 표현하다니. 역시 고주영은 팩트 앞에서 앞뒤가 없다.


“하하··· 그렇기는··· 하죠.”

“팀장님은 이 프로젝트가 안 중요하대요? 영식 파트장님이야 우리 멕이려고 일부러 그랬다고 해도 팀장님은 왜 저런대요?”

“팀장님은 본래 직군이 사업부 쪽이라 코딩에 대해서는 잘 모르실 거예요.”

“아오··· 전배되서 좋아했더니 이렇게 골탕먹다니··· 그냥 최적화도 아니고 모바일 최적화··· 모바일 최적화는 인터넷 뒤져봐도 자료도 없을 거예요.”


고주영 님의 말이 맞긴 하다. 최적화는 나름 베테랑들이 작업하는 경우가 많다. 더군다나 모바일 쪽은 PC와 CPU 구조도 다르고, 출시된 게임 자체도 별로 없기 때문에 최적화에 대한 노하우를 가진 사람도 별로 없다.


“진수 님 어떻게 하죠?”

“응? 뭘 어떡해요? 최적화하면 되죠.”

“최적화 해보신 적 있으세요?”

“아니요 없어요. 하지만 우리는 할 수 있을 거예요.”

“···어떻게요?”


나는 소프트웨어를 전공하지는 않았지만, 십 년 넘게 거의 매일 읽어온 백여 권의 책이 내 방구석에 수북이 쌓여 있다.

나는 그동안 내가 읽어왔던 책들의 힘을 믿는다.



우리는 자리로 돌아와서 작전을 짰다.


“진수 님. 저는 뭐부터 하면 될까요?”

“일단 체험을 먼저 해볼까요? 게임을 빌드해서 우리 스마트폰에서 실행시킬 수 있게 준비해주세요.”

“저 모바일용으로 빌드해 본 적 없는데요?”

“아··· 간단해요. 우리 프로젝트는 이미 모바일용으로 만들었기 때문에, 주영 님 컴퓨터에서 빌드 옵션 몇 개만 바꾸고 바로 빌드하면 돼요.”


나는 고주영 님에게 모바일로 빌드하는 방법을 가르쳐주었다.

빌드란, 우리가 만든 게임 소스를 스마트폰에서 실행할 수 있게 설치 파일을 만드는 과정을 말한다. 나는 미믹게임즈에서 서비스해본 경험이 있기 때문에 빌드에 익숙하다.


“주영 님 핸드폰 뭐에요?”

“네 은하계 S4요.”

“저도 S4인데, 그럼 우선 주영 님 핸드폰에 설치해볼까요?”


다행히 설치는 정상적으로 됐고, 실행도 정상적으로 됐다. 하지만 신규 캐릭터를 만들고 튜토리얼인 첫 전투에 입장하는 순간. 랙이 시작됐다.

버벅···버벅··· 캐릭터가 가만히 숨만 쉬고 있을 때는 그럭저럭 견딜만했지만, 스킬을 한번 사용할라치면 거의 화면이 멈추는 수준이었다.


“와··· 진수 님네 게임 엄청 느리네요. 이 정도면 초당 프레임이 10정도 나오려나요?”

“음··· 그러네요. 앞으로 우리가 개선 작업을 하게 되면, 게임이 빨라졌는지 아닌지 기준을 잡아야 되니까 일단 화면에 초당 프레임 숫자가 나오게 만들어 볼까요?”

“넵. 제가 만들게요.”

“그리고 주영 님. 이제 주영 님도 이 게임의 맴버에요.”


그는 머쓱하게 웃고 나서 초당 프레임 숫자 표시 작업을 했다.

초당 프레임이란 1초에 화면을 몇 번 갱신 시키냐를 의미한다. fps(Frame Per Second)라고도 불리며, 이 숫자가 30 근처로 나와야 쾌적하다고 느낀다.

물론, 고사양 PC게임의 경우는 fps가 60 이상도 나오지만, 저전력 설계가 기본인 모바일에서는 아직까지 fps 30이 한계다.


우리는 fps를 표기하는 기능을 넣고 재빌드했다. 그리고 다시 전투 시작.

캐릭터가 숨만 쉬고 가만히 있을 때는 fps가 25 정도로 괜찮은 수준이었지만, 스킬을 한번 쓰기 시작하면 fps가 순간적으로 1~2 이하로 떨어졌다.

그야말로 랙 잔치.


고주영 님이 한숨을 쉬며 말했다.

“하아··· 총체적 난국이네요. 평시도 25fps가 아닌 30fps은 나와야 할 것 같고, 전투는··· 게임을 못 할 수준이네요.”

“흐음··· 주영 님. 우선 우리 목표를 세워봐요. 우리 둘 다 최적화 경험이 없으니 목표를 세우고 무얼 할지 정하는 것이 낫겠어요.”

“네.”

“우선 제일 처음 사용하는 스킬인 베기를 먼저 최적화해볼까요?”

“네. 그게 좋을 것 같아요. 스킬도 간단하니까 코드 보기도 좋을 것 같네요.”

“목표 fps는 어느 정도 잡을까요?”

“지금 베기를 쓰면 1 미만으로 떨어지니까··· fps 5 정도??”

“안 돼요. 5나 1이나 어차피 게임 플레이가 불가능할 정도로 느린 건 마찬가지일 거예요. 우선 1차 목표로 fps 15정도 잡을까요? 애니메이션이 사람 눈에 자연스럽게 보이려면 그래도 24fps는 나와야 하는데, 처음부터 너무 높게 잡으면 안 되니 15 정도로 시작해봐요.”

“1에서 15로 올리는 것도 너무 높은 것 같긴 한데··· 24fps는 어디서 나온 숫자예요?”

“아~ 애니메이션 관련 책을 봤었는데, 사람 눈으로 봤을 때 애니메이션이 자연스러워지려면 최소 24fps 정도는 나와야 하더라고요. 물론 더 높을수록 더 부드러워지지만요.”

“아하 그렇군요? 진수 님은 안 그럴 것 같은데 의외로 잡지식이 많으시네요.”

“흐흐흐··· 감사합니다. 일단 스킬 코드를 먼저 볼까요?”


보통 자신감이 없는 사람은 정작 의견을 나눠야 할 자리에서 자기 의견을 잘 말하지 않는다. 그리고 의사 결정이 완료된 후에 뒤에서 자신은 그 의사 결정에 처음부터 동의하지 않았다고 말하며 의사 결정자를 뒷담화한다.

그에 비해 고주영 님은 의견을 나눌 때는 담백하고 자유롭게 자신의 의견을 개진하다가도, 한번 방향이 결정되면 군소리 없이 넵 한마디만 한다. 좋은 버릇이다.

이번에도 역시나 고주영 님은 내 결정에 짧게 대답했다.


“넵.”


역시나 자존심만 조금 양보하면, 고주영 님은 내게 최고의 파트너가 될 수 있을 것 같다.


이 작품은 어때요?

< >

Comment ' 1


댓글쓰기
0 / 3000
회원가입

사실 게임 프로그래머 리더십에 대한 이야기 연재란
제목날짜 조회 추천 글자수
공지 잠시 휴제하려고 합니다. 22.07.24 116 0 -
공지 연재 주기를 변경하려고 합니다. 22.07.10 52 0 -
공지 다음 주(6월 20일~) 연재는 이번주 주말에 몰아서 하겠습니다 22.06.17 261 0 -
50 리펙토링 2 +2 22.07.17 168 14 12쪽
49 리펙토링 1 22.07.10 169 9 11쪽
48 사실 진수 이야기는 여기서부터 22.07.08 157 10 11쪽
47 나만의 빽 만들기 3 22.07.07 158 9 11쪽
46 나만의 빽 만들기 2 22.07.06 176 12 12쪽
45 나만의 빽 만들기 1 22.07.05 167 9 11쪽
44 나만 몰랐던 고백 22.07.04 192 12 11쪽
43 고구마는 최대한 짧게 22.07.01 219 15 11쪽
42 피싱 vs 피싱 2 22.06.30 210 13 12쪽
41 피싱 vs 피싱 1 22.06.29 215 12 11쪽
40 임아린의 노하우 2 22.06.28 230 13 12쪽
39 임아린의 노하우 1 +1 22.06.26 260 14 11쪽
38 파트장 변화시키기 2 +1 22.06.19 273 14 12쪽
37 파트장 변화시키기 1 22.06.19 299 14 11쪽
36 민희 씨와 의지 +2 22.06.18 287 16 12쪽
35 고주영과 최적화 4 +2 22.06.18 302 16 11쪽
34 고주영과 최적화 3 +2 22.06.17 298 20 11쪽
33 고주영과 최적화 2 +1 22.06.17 292 21 12쪽
» 고주영과 최적화 1 +1 22.06.16 296 15 11쪽
31 적응 8 +2 22.06.15 298 16 11쪽
30 적응 7 +3 22.06.14 304 19 11쪽
29 적응 6 +9 22.06.13 360 17 11쪽
28 적응 5 +3 22.06.10 307 19 12쪽
27 적응 4 +1 22.06.09 296 20 12쪽
26 적응 3 +3 22.06.08 310 19 12쪽
25 적응 2 +2 22.06.07 316 19 12쪽
24 적응 1 +2 22.06.06 327 22 9쪽

구독자 통계

신고 사유를 선택하세요.
장난 또는 허위 신고시 불이익을 받을 수 있으며,
작품 신고의 경우 저작권자에게 익명으로 신고 내용이
전달될 수 있습니다.

신고
비밀번호 입력