[스마일게이트 서버개발캠프 4기] 스마일게이트 서버개발캠프 4기 최종 보고서 제출!
- 캠프가 끝나고 난 뒤
2월 21일 금요일 급작스럽게 캠프가 종료되었지만 아직 해야할 과제는 많이 있었습니다.
따라서 우리 팀은 월~수간 판교역 근처 카페에서 오프라인으로 모여 남은 일들을 해결해 나갔습니다. 다행히 카페에서 만났을 때 풀리지 않았던 문제들이 풀리게 되었고, 수요일에 오프라인 최종 모임을 가질 수 있었습니다.
오늘 2월 28일 금요일이 최종 보고서와 시연영상 제출 기한이었으므로 우리 팀은 목요일에 온라인으로 시연 영상에 쓰일 동영상을 녹화하였습니다. 디스코드 음성채팅을 사용하였습니다.
PPT는 디자인 센스가 있는 클라이언트 프로그래머가 담당하기로 하였고, 저는 시연영상 편집을 맡게 되었습니다. 금요일 아침, 클라이언트 프로그래머에게 PPT에 쓰일, 제가 담당하였던 부분의 자료를 보내고 동영상 편집을 진행하였습니다. 오후 6시, PPT와 시연영상을 캠프 잔디에 업로드 하는 것으로 스마일게이트 서버개발캠프 4기가 최종 마무리 되었습니다.
- 소회
사실 스마일게이트 서버개발캠프 4기에 처음 지원할 때, 게임(유니티)이 아닌 다른 분야로 도전을 해보고 싶은 마음이 있었습니다. 하지만 오리엔테이션에서 팀을 정할 때의 분위기에 휩쓸리다 보니 아예 새로운 분야에 도전하기는 힘들것 같았고, 약간이라도 해 보았던 분야에 도전은 가능했습니다. 어쨌든 팀도 게임팀에 들어가게 되었고, 서버 담당해줄 분도 팀으로 영입하게 되면서 자연스럽게 온라인게임을 개발하게 되었습니다.
캠프 일정이 공식적으로 시작되고 보니 게임 서버에 관심이 생겼습니다. 하지만 저는 그 당시 네트워크 프로그래밍에 대해 전혀 모르는 상태였습니다. 웹 서버도 해본 적이 없었으니까 당연한 일이었던것 같습니다. 그래서 팀 내에서 100% 서버는 담당하지 않고, 클라이언트 반, 서버 반을 담당하기로 하였습니다.
서버 프로그래머가 인증서버 작업을 하고, 클라이언트 프로그래머가 게임 로직을 작성하고 있을 때, 저는 유니티 네트워크 책과 구글링을 하며 온라인 게임을 개발할 때 염두에 두어야 하는 내용들을 익혀갔습니다. 거의 80%는 이번 게임에 적용되지 않았지만, 그 과정에서 느낀것은 학부에서 배웠던 내용이 정말 많이 쓰인다는 것이었습니다. 운영체제 과목에서 배운 스레드와 프로세스, 크리티컬 섹션이나, 컴퓨터 네트워크 과목에서 배운 네트워크 관련 내용들을 몰랐다면 정말 고생했을 것이라는 생각이 들었습니다. 특히 운영체제 과목을 수강할 때 밤 새워가며 했던 과제가 없었더라면 이번에 클라이언트단 네트워크 모듈 코드를 작성할 수 없었을 것입니다.
이번 캠프에서 특히 좋았던 경험은, github을 이제 자유자재로 다룰 수 있다는 점 입니다. 이전까지는 동아리에서 Unity teams의 collaborate 기능을 사용해서 협업해왔는데, 타 부서 팀원들과 협업이나 3명 이상의 프로그래머가 제한되는 부분 등 제약이 있었습니다. 하지만 이번에 서버개발캠프에서 github로 협업을 하고, branch로 버전관리를 하고, 망했을 경우 revert를 하는 등의 기능을 익히며 어렵게만 느껴졌던 github와 친해졌습니다.
또, 클라이언트 부분에서는 클라이언트 프로그래머마다 다른 경험을 가지고 있다는 점이 신선했습니다. 어느것이 좋다 나쁘다 할 순 없지만 같은 내용을 다른 방식으로, 더 나은 방법으로 코딩을 하는 것과 데이터 관리를 할 때 새로운 방법으로 유지보수를 할 수 있다는 점이 신선했습니다. 또, 클라이언트 부분을 코딩할 때 협업하는 사람이 보기 쉽도록 코드를 작성하고 눈치아닌 눈치가 보여 깔끔하게 코드를 정리하거나 유니티 엔진을 다루는 등 신경을 쓰는것도 굉장한 자극이 되었습니다.
처음으로 서버프로그래머와 온라인게임을 제작하는 경험을 가졌는데, 이 또한 굉장히 새로웠습니다. 싱글게임을 제작할때와는 전혀 다른 Issue들이 산적해있었고, 그 부분을 해결해 나아가면서 게임 개발에 대한 새로운 시각이 생겼습니다. 특히 각 클라이언트 동기화가 그렇습니다. 단순한 유니티 코드만 다루면 앞으로는 안될것이라는 생각이 강하게 들었습니다. 현업에서 일하려면 알아야 하는 부분이 굉장히 많음을 새삼 느낄 수 있었습니다.
캠프는 6팀으로 구성되어있었는데, 다른 분들 모두 열정이 굉장했고 실력면에서도 대단해 보였습니다. 학교 친구들을 벗어나 다른 개발자들을 처음으로 보게 되었는데, 같은 고민을 가지고 있고 그 고민들을 공유할 수 있다는게 정말 좋았습니다. 그리고 캠프 담당해주시는 직원분들이나 다른 임직원 분들께서도 지대한 관심을 가져주져서 특별한 사람이 된 것 같은 느낌도 들었습니다. 직원분들이 말씀해 주셨듯, 같은 기수들은 현업에 나가서도 계속 연락하고 지낸다는, 네트워킹이 이루어지고 현업에서 굉장히 도움이 된다는 부분, 즉 개발에 열정이 있고 좋은 사람들과 인연을 맺었다는 부분에 너무 만족합니다. 4기 캠프원 모두 너무 친해졌는데 끝난 지금 엄청 보고싶습니다.
기획안이 2번이나 바뀌면서 시간에 쫓겼지만, 결과적으로는 온라인 게임이라 불릴만한 것을 만들게 되었습니다. 아쉽게도 팀원들 각각 취업준비, 학업으로 더이상의 개발은 힘들 것 같지만 2개월간의 스마일게이트 서버개발캠프 4기 활동은, 앞으로의 커리어에 굉장한 영향을 끼칠 것 같습니다.
좋은 기회를 주신 스마일게이트에 감사드립니다~
댓글
댓글 쓰기