http://rhea.pe.kr/380 에 이은 글입니다.

이 포스트를 통해 태어나서 한번도 소켓을 써본적 없는 사람을 서버개발자로 앉힐 정도로
이 조직은 대인배라는 것이 증명되었습니다. 에흠~

일하는 위치
서초구입니다.

연봉
다른 게임 회사들과 연봉 테이블 비슷합니다.
월급 밀리는 일은 없습니다.

하는 일이 멉니까?
C++ 게임서버 개발
- C/S, TCP/IP, IOCP 모델을 이용한 서버 엔진을 전담하실 팀장급
- DB게이트웨이(DB 캐쉬), 컨텐츠 레이어 설계를 전담하실 팀원급

몇명 뽑습니까?
팀장, 팀원 각 1인명씩

OS
- MS-Windows Server 2008 RC2
- MS-SQL 2008 Standard

언어
- C/C++/MFC
- Objective-C

필수개념탑재
- 게임용 분산서버 개발해 보신 분
- 엔진레이어와 컨텐츠 레이어 구분이 가능하신 분
- 서버 I/O, 쓰레드, 분산, 로드밸런싱, Zone구현 등 게임 서버에 으례히 들어가는 스킬들(선수끼리 왜이래!).
- 언제나 공부하는게 습관이어야합니다.
- 흡연 & 술을 비롯한 주색잡기에 능한 분 환영

뒤로 가기 버튼을 누를 분
- 당장 데모용 무언가를 만들어야 하는데 존낸 걸작을 만들려고 하시는 분
- 자기 세상 속에서만 노시는 분

좀더 이 포스트를 유심히 볼 분
- 실력은 좋고 잘 만들었는데, 이전 회사에서 오픈을 시켜주지 않아 불만 가득하셨던 분 적극 환영

경력
- 팀장급은 5년 정도의 경력이면 OK
- 팀원급은 2년 정도의 경력이면 OK
- 그러나 경력보다 더 중요한 것은 어떤 프로젝트를 해봤고 할줄 아느냐 하는 것이겠지요.

초강력우대사항
미소녀
미니스커트와 다양한 오버니삭스 & 스타킹으로 레알 현실에서 팀원들의 덕심을 불러일으켜주실 분

끝으로
월급만 받고 먹튀하실 분 말고 레알 게임 만드실 분을 구인합니다.
문의를 부탁드립니다.
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Rhea君
구인중

구인중

일하는 위치
다들 분당, 판교 가는 시대에 그래도 강남에 있습니다.
개인적 목표로는 돈벌어 다시 아셈타워로 돌아갈려고 합니다.
홈페이지? ...만들어줄 외주업체 알아보고 있습니다.

연봉
이사님께 문의하세요.

하는 일이 멉니까?
기술적으로 분산 서버 개발 & DB 라고 적지만 결국 게임 서버지 머긴 머겠습니까.

몇명 뽑습니까?
언제나하는 말인, 약간명 + 인원충당시까지.

OS
전부다 Windows Server인데 멀 따집니까? 그래도 BSD나 Linux Admin 정도도 할줄 알면 금상첨화
아, DB는 MS-SQL 쓸껍니다. 가라클 안 좋아합니다.

언어
어차피 전부 C/C++ 아닙니까... 언어 스펙은 관계 없습니다.
C/C++ 잘하시면 뭘해도 다 잘하시더군요. 몇대 맞으면 첨보는 언어도 저절로 코딩됩니다.
또한 약간의 웹프로그래밍도 할줄 알면 이뻐해드림.

필수개념탑재
서버 I/O, 쓰레드, 분산, 로드밸런싱, Zone구현 등 게임 서버에 으례히 들어가는 스킬들(선수끼리 왜이래!).
COM/COM+도 할줄 알면 해피하고 언제나 공부하는게 습관이어야함.
그리고 언어와 라이브러리의 장벽을 넘어 다양한 환경에서 문제해결이 가능해야 함. <-중요!
흡연 & 술을 비롯한 주색잡기에 능한 분 환영

뒤로 가기 버튼을 누를 분
혼자 짱박혀 커뮤니케이션 없는 넘은 껒여주세요.
시키는 것만 하겠다는 넘도 업계를 떠나주세요.
지나친 알바쟁이, 열혈 증권맨이면 차라리 프리랜서를 권해드립니다.
IOCP 하나 만들어보고 서버 짤줄 안다고 구라치시는 학생
정치가를 꿈꾸며 열심히 회사에서 정치질하시는 쐉넘
개발툴보다 오피스가 더 자주 열려있는 재수없는 넘
싸가지 없는 풋사과
된장녀

좀더 이 포스트를 유심히 볼 분
능력은 좋은데 좆같은 회사, 프로젝트, 팀원들만 만나 제대로 꼬이기만 하셨던 분
네트워크를 탈수 있는 객체직렬화나 패킷 제네레이터 같은 거 만들어본 경험이 있으신 분
언제나 이상적인 아키텍쳐를 가슴에 품고 계신 분
클라이언트 만들기가 지겨워 이 기회에 서버 한번 잡아보실 분
오덕
게임은 정품만 사시는 분(나중에 커펌 or 탈옥한거 걸리면 존내 맞을 각오하셈.)
스즈미야 하루히를 좋아하시는 분
Rhea君이랑 같이 2인용 게임하고 싶으신 분

경력
소켓 모델에 관계없이 P2P && C/S 게임 프로젝트 경험있는 초보
50년 이하 경력을 가진 개발자
알바경력도 응당 쳐드림.

초강력우대사항
미소녀
미니스커트와 다양한 오버니삭스 & 스타킹으로 레알 현실에서 팀원들의 덕심을 불러일으켜주실 분

끝으로
월급만 받고 먹튀하실 분 말고 레알 게임 만드실 분을 구인합니다.
문의를 부탁드립니다.

갈등만 때리지 말고 리플로 문의라도 해주긔

갈등만 때리지 말고 리플로 문의라도 해주긔



크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Rhea君

서버는 당근 서버 개발자가 만든다고 생각하는데 이게 그렇게 쉽게 구분되어서는 안된다.
클라이언트가 서버를 만드는 경우 상당히 많다. 그럼 클라이언트가 서버를 만든다는 의미는 무엇일까?

고전적인 개발 그룹에서는 클라이언트팀과 서버팀으로 나눠진다. 서버팀은 DB와 소켓 I/O, 그리고 패킷 라이브러리를 만든다.
클라이언트팀에서 짬밥이 좀 되거나 UI보다 로직 파트를 맡은 사람이 서버팀과 협업을 하여 패킷을 짜맞춘다.
그래서 이런 고전 모델에서 가장 자주 듣게 되는 대화는 이거다.

"여기 이렇게 보냈는데 잘가?"
"브로드캐스팅 할테니 다 가는지 잘봐~~"
"얼래? 왜 안오지?"
등등등, 주로 패킷 송수신 이야기가 대부분을 이루며 생산성은 당연히 떨어진다.

열받은 클라이언트 개발자가 서버 개발자를 공격하는 모습

열받은 클라이언트 개발자가 서버 개발자를 공격하는 모습

그리하여 그룹마다 다르겠지만 좀 연륜이 쌓인 그룹이라면 단순한 클라이언트/서버 구조가 아닌, 클라이언트 엔진/서버 플랫폼/컨텐츠 개발의 3가지 이상의 파트로 나눠지게 된다.

결론적으로 클라이언트 엔진 파트는 게임 내용과 기획을 120%까지는 몰라도 된다. 걍 함수만 조낸 만드는거다. 이펙트건 애니메이션 보간이건 그냥 함수만 호출하도록 만들어 주신다. 서버 플랫폼은 굳건한 소켓 I/O와 빠른 DB처리, 그리고 패킷 루틴을 처리해줄 인터페이스를 만든다.

그럼 컨텐츠는 말 그대로 게임 안의 컨텐츠를 만들게 된다. 눈에 보이는 UI는 물론이고 컨텐츠의 모든 것을 다 만든다. 인원도 제일 많다. 서버와의 필요한 패킷 송수신 루틴도 당연히 컨텐츠 개발자가 만들게 된다. 클라이언트 측은 물론이고 서버에서 처리할 루틴도 이 컨텐츠 개발자가 만들게 된다.

모두에게 사랑받는 컨텐츠 개발자의 모습

모두에게 사랑받는 컨텐츠 개발자의 모습

컨텐츠 개발자는 사실 다이렉트X 따윈 잘 몰라도 된다. 엔진 개발자가 다 만들어주니까 그거만 호출하면 된다. 소켓 역시 마찬가지다. 최소한 recv() 부분은 서버 플랫폼팀에서 클라이언트쪽을 만들어주고 패킷 처리기까지 서비스해줘야 한다.
recv() 받고 패킷 추출까지 끝나면 그떄부터 컨텐츠 개발자의 역활이다. 서버 역시 I/O와 패킷 처리 부분이 분리되어 있다. 서버 패킷 처리 부분은 컨텐츠 개발자가 로컬에서 DLL 만들듯 함수 추가해가며 꾸역꾸역 만들기만 하면 된다.

이렇게 만들어진 서버 패킷 처리 바이너리를 서버에 획 복사해넣으면 서버는 우아하게(와~ 내가 이 표현을 쓰다니!) 작동된다.

자, 그럼 방금의 두번째 그룹에서 서버는 누가 만들었는가?
I/O 와 DB 처리는 분명 서버(플랫폼)에서 만들었다. 그렇다면 컨텐츠라 할수 있는 서버의 패킷 처리와 서버에 존재할 로직은 클라이언트가 만든 것이다. 다시 말해 클라이언트가 서버(의 컨텐츠 부분)를 만든 셈이다.

누구나 아는대로 컨텐츠와 프로그램의 분리는 중요하다. 따라서 그와 함께 인력도 그에 맞게 맞추는 것이 좋다.
(아직도 "서버.EXE" 하나로 작동되는 MMO급 게임들이 알게 모르게 존재하는데 업데이트 할때마다 라이브 개발자는 죽을 맛일 꺼라 생각든다.)

오래전부터 이렇게 세팅된 그룹도 있고 여전히 2개의 구분법으로 조직되고 운영되는 그룹도 많다.
그러나 생산성과 유지보수를 생각한다면 개발팀은 최소 3개의 구분을 두는 것이 좋고 컨텐츠 개발자에게 서버 컨텐츠를 맡겨야 한다. 물론 이를 위해서는 굳건하고 안전한 서버 플랫폼이 필수적이다.

클라이언트가 서버를 만든다는 말을 잘 이해하지 못하는 분들이 많아 주절주절거려 보았지만 아직 이런 체계를 갖추지 않은 그룹이 있다면 심각하게 고려해볼 일이란 생각이 든다.


크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Rhea君
TAG Server, 서버