대충 휘갈긴다고 제대로 다 받아적지는 못했지만
키워드는 모두 담았으니 저나 여러분에게 도움이 됐으면 좋겠네요!
1. 게임서버의 두 갈래
-
Stateful Server
-
정의
- Client의 이전 상태를 기록하는 서버
-
사용 언어
- C++
-
특징
- 게임개발에서만 쓰이는 중
- DB공부는 다른 공부의 1/10정도 비중
-
-
Stateless Server
-
정의
- http와 같이 client의 이전 상태를 기록하지 않는 서버
-
사용 언어
- Node.js
- PHP
-
특징
- 여러 분야에 적용 가능
- DB가 중요하다
-
2. 입사지원
-
프로그래머의 역할
- 서버든 클라이언트든 결국은 컨텐츠 개발
- 라이브 개발 부서는 네트워크 설계가 이미 끝나있음
- 신규 게임에 신입이 할 수 있는건 없다.라이브 개발실에서 유지보수하며 실력키우는 것을 추천
-
포트폴리오
- 유니티 에셋으로 이쁘게 꾸미는데 치중한 포트폴리오는 아무 쓸모 없음
- 채팅 서버 개발을 하더라도 다양한 방법으로 설계하면 좋은 포트폴리오가 될 수있다
-
포트폴리오 문서
- 제품설명서 느낌
- 구현 방법 x
- UML 필요 없음
- 직접 구현한 것 중에 자신 있는것들만 문서화 하자
- 성능 분석 결과는 무조건 첨부
- 폰트,사이즈,배치는 생각보다 중요
- 문서로 한 번 쫙 써내려가고 2일정도 지난후에 다시보고 수정한다
-
자소서
- 기술적 접근, 소개
- 인생소개 X
위의 내용은 3N기준.
3. 필요한 C++ 문법
-
STL
- 아주 자세히 자료구조의 사용법, 사용이유, 각 기능의 시간 복잡도에 대해 빠삭하게 공부
-
Modern C++
- 하면 좋고, 안해도 감점이 되지 않는다
- 몇몇회사는 입사 조건이 Modern C++ 숙지이다
- 면접전 문법정도는 익혀두자
-
기초
-
int x =5 + 7x9 >> 1 x 2
- 시프트 연산자의 우선순위를 묻는 간단한 문제
-
구조체 사이즈 문제
-
char c = 12>>3
- 기초적인 캐스팅 문제
-
라이브러리 숙지를 통한 손코딩 가능
-
-
C#
- 못해도 상관없음. 실무에 들어가서 배워도 상관 X
- 유니티 포트폴리오를 만든다면 배워두자
- 최근 MMORPG에 서버로 도입되는중
4. 각종 회사 짜잘한 정보
-
컴투스
- 기술면접에 DB문제로 도배
-
스마일 게이트, NC Soft
- 정처기 내용들을 객관식으로 여러문제 출제
-
넷마블
- OSI 7계층 빈칸 문제
-
넥슨
- C++ 11 뭐 써봤냐, 왜썼냐, 장점이 뭐냐, 단점이 뭐냐
- 몰라도 마이너스는 아님
5. 각종 해 봐야할 것 정리
-
Protocol 설계
-
C++ STL (Vector, List, Linked List, map, unoredered map) 구현 해보고
언제,어떻게,왜 쓰는지 그리고 시간 복잡도 암기
-
소켓프로그래밍
-
종류
-
Select
- Select는 아직 현역이다. 사용해보자
- 직관적이고 확실한 개념이라 아직까지 사용됨
-
Overlapped IO
- 사용법만 익히면 구현 별거 아님
-
IOCP
- 사용법만 익히면 구현 별거 아님
-
-
포트폴리오 작성시 사용해보자
-
소켓 프로그래밍은 사실상 Send , Receive가 끝임 비중 x
-
-
서버 관력 책
- 실제 구현에 문제가 있는 예제들 뿐임
- 직접 개발해보고 오류 버그 없는 고성능 서버 개발
- 네트워크 메모리 쓰레드 스케줄링 문제 발견후 해결하기
-
Reliable UDP
- 설계만 해보자. 말로 설명할 수 있을정도. 실제 구현 X
- 입사 테스트에서 물어볼 수 있다.
-
OS
- 큰 회사들은 OS를 중요하게 생각한다
-
정보처리기사
- 자격증 목표로 공부하기 보다는 정처기 공부자체가 도움이된다
-
레드블랙트리
- 구현하라는 회사 X
- 설명하라는 회사 O
-
패킷 구조
- 구조 달달 외우자 (헤더기능)
- 패킷캡쳐 (패킷 분석 프로그램) 사용해보기
-
어셈블리
- MSDN 공식 사이트에서도 제대로 알려주지 않는 부분 존재
- 어셈블리 수준에서 문제점을 발견할 수 있는 수준이 되면 좋음
-
알고리즘
- 백준 코드포스 풀어보기
- 유형이 정해져있다
- 하루에 한 문제는 풀어보자
-
데이터베이스
-
정규화
-
정규화를 통해 테이블 설계
- 이 부분은 별로 언급을 안하셨지만 게임 개발 특강의 기획서에서 중요하게 다뤄짐
-
-
컨퍼런스
- NDC, INVEN , 아마존 , 유니티 ,언리얼 컨퍼런스 찾아보자. 무조건 도움된다.
6. 추가설명
-
경력직에도 자소서를 내보자
- 뽑힐만하면 뽑힌다
- 회사입장에서도 신입이 경력직 면접 통과하면 싼 가격에 좋은 인재 구하는 것
-
협업을 보는 회사가 있으나 필수가 아니다
- 서버 포트폴리오에 굳이 협업능력은 필요 없다
- 기회가 있으면 해라. 굳이 찾아서 할 필요 없다
-
서버 프로그래머 잘 뽑는가?
- 놉