포스트

전략: 테크: 커리어

테크를 배우자 - 근데 이제 커리어 포커스

전략: 테크: 커리어

머리말


테크를 배우자. 근데 이제 커리어 포커스.

  • 목표:
    • 넥슨 간다
      • IO 본부 간다
  • 삼신기:
    • CT: Coding Test
    • CS: Computer Science.
    • PJ: Project.
  • 1:
    • Q. 빌드업 너무 긺
    • A. 바로 본론으로. 대충 정리하고 시작
  • 2:
    • Q. 우선순위
    • A. 자원 최적화. (팀 프로젝트, 여가 시간)
  • Q. 남은 시간
  • A. 약 500일
    • 2025-XX-XX: 25년 100일도 안남음
    • 2027-02-28: 산업기능요원 복무 소집 해제 (26살)
      • 26살? 내가 26년이나 살았다고?
    • 2027-09-XX: 넥토리얼 지원 (있을지 모르지만, 일단)
    • ‘데드라인 설정하고 스스로 크런치모드로 해봐 어떻게든 될거임’

티켓


  • 단기 티켓
    • XX: 블로그 레퍼런스
      • 글 잘 정리해야 함.
      • 리스트 말고, 부드럽게 말로 읽을 수 있는 아티클.
        • 마치 면접 질의응답 말로 하듯.
    • CT: 코테 환경 세팅
    • CS: 면접 질문 정리 (어떤 도메인 필요한지)
    • PJ: 목표 수준 설정 (엔진 - 상용/자체, 장르, 서버)
    • PJ: 목표 자료 정리 (새로 배울 도메인, 강의 등)
  • 정기 티켓
    • CS: 주제 정하고 포스팅: 최소 1주 1포스팅
  • 장기 티켓
    • PJ: 단기 빠르게 작업하고 출시하는 것을 목표로
    • PJ: 데드라인 정해서 내가 올해 이정도 포폴은 만들거야 <- 좋음
  • 예매
    • PJ: 챌린지: N일 안에 게임 출시하기

Out Computer


서치

문서

  • 자기소개서, 이력서, 포폴 깎기
  • 블로그 깎기

활동

  • 게임잼/게임동아리/스터디
  • 다양하게 어필할 수 있는 공간을 활용
    • 신입 자리는 적고 사람은 많으니까
    • 링크드인, 노션, 깃헙, 트렐로 등

외관

  • 면접 능력
    • 모의 면접
  • 사회성
    • 너무 목석 같아도 안됨
    • 면접이라는 걸 보는 이상, 사람 자체가 갖는 아우라나 매력이 생각보다 합불에 영향을 크게 줌
      • 지원자가 너무 많음
      • 외향형이고 운동하는 규칙적인 사람
    • 스피치, 눈치, 친화력
  • 인성
  • 인터넷
    • 블로그 같은 공부이나 활동

분야-우선순위


  • 채용의나라 피셜
    • 1위 CS
    • 2위 자료구조/알고리즘
    • 3위 언어, 디자인 패턴, 엔진, DB 등
      • 자기가 쓰는 언어의 심화 과정 공부
  • _
    • CS 탄탄하고 코테 통과
    • 인적성 문제 없고
    • 팀워크 잘하고
    • 포폴 나쁘지 않으면

Computer Science / 컴퓨터 공학


전공. 가장 중요함. (4)

  • 기본기
  • 컴퓨터의 기초, 로우 레벨은 필수
  • 기본기가 탄탄하면 뭐든지 빠르게 배울 수 있다
    • 상용 엔진 경험 같은 건 언제나 바뀔 수 있고, 또 회사에서 배우면 돼
    • 그래서 CS 지식이 더 우선순위가 높다

CS-분야

  • 언어
    • C/C++
  • 운영체제
    • 메모리 구조
    • 컴퓨터 구조
    • 스레드
  • 객체지향/OOP (11)
  • 알고리즘 (10) & 자료구조 (10)
  • 디자인패턴 (4)
    • # 자주 쓰이는거 위주 공부하고, 실전 적용 (프로젝트에)
    • 싱글턴, 팩토리, 스트레티지 정도는
  • 선형대수
    • 외적/내적 정도는 기본
    • 행렬 변화 정도가 숙지되어야 함
    • # 이산 수학?
  • 그래픽스
    • 기초 그래픽스
      • 파이프 라인 정도, 머테리얼 사용법 숙지
      • 파이프 라인 정도 익히고 회사 가서 부딪혀가며 익혀도 됨
      • # 나는 셰이더를 좀 더 공부해서 강점을 만들까?

코테-자료구조-알고리듬

  • 코딩테스트
    • 문제 이해하기
    • 데이터와 문제에 맞는 알고리듬 찾기
    • 알고리듬 적용하고 디버깅하기
      • DFS 쓸 때는 스택쓰기
      • DFX 쓸 때 시작지점 stack에 미리 넣기
  • 코테 알고리듬 질문, 게임 특화 알고리듬 종종 (A*, QuadTree, BSP)

언어-엔진

  • 언리얼 C++
    • Effective C++
    • 유데미 언리얼 강의
    • 언리얼 장점이 입맛에 맛게 엔진 코드 고치는건데
      • 근데 마개조 할수록 엔진 업데이트 하기가 어려움
      • 유지보수 어려워서 PBR 쓸거면 그냥 냅두는 게 맞는 거 같아
      • 엔진 새 기능이 가지 치듯 업데이트 되면 좋은데, 맨날 구조를 바꿔버리니가 렌더링 파이프라인 살짝만 비틀어도 커스텀 한 거 다 박살남
      • 요새 커스텀 안하는 분위기?
    • https://gall.dcinside.com/mgallery/board/view/?id=gamejob&no=52081&page=13
    • [https://m.ruliweb.com/news/read/214344](턴제에 실시간 요소 더하기, ‘클레르 옵스퀴르’의 전투 디자인은 이렇게 이루어졌다)
  • 유니티 C#
  • 상용 엔진 마개조, 커스텀 에디터 (e.g. 로스트아크 언3 DLSS)

아 제가 이런 엔진쪽 지식은 거의 없어서 그냥 단순한 질문일 수 있는데요, 삭제 예정 객체를 vector에 넣어서 관리하다가 중복 삭제 문제로 set으로 변경하셨다고 했는데, 그렇다는건 보통 이런 객체들에 대한 정보가 Raw Pointer로 관리되는 건가요…? vector<GameObject*> 이런 형태로…?

저때 할때는 이벤트 시스템 쪽에 Raw Pointer 넘겨줘서 관리했었습니다!

오홍 그렇군요. 딴 건 아니고, 저 문제점을 보고 든 생각이 shared_ptr이나 weak_ptr 같은 스마트 포인터로 관리했으면 어느정도 커버됐을 것 같은데 왜 Raw Pointer로 관리했을까란 생각이 들어서요. 보통은 Raw Pointer로 관리하나요…?

아! 저거 할때는 진짜 뭐 아무런 지식도 없이 유튜브 강의 하나 보고 시작했던거라 저때는 스마트 포인터가 뭔지도 잘 몰랐던 때입니다 ㅋㅋ

DirectX 11은 IUnknown이라는 최상위 베이스 클래스가 있고 이 베이스 클래스에 자체적인 레퍼런스 카운팅 기능이 포함되어 있습니다. 그래서 모든 COM 객체들은 IUnknown 클래스를 상속해 구현되어 있고 직접 Ref Count 관리를 해주어야 합니다.

저도 자체 엔진 개발할 때 스마트 포인터를 사용할지, 다렉이랑 일관성 맞추고 레퍼런스 카운팅을 강제하기 위해 Base 클래스 기반으로 자체 참조 카운팅 시스템을 넣고 Raw Pointer 사용할지 고민하다가 Raw Pointer로 구현했습니다.

스마트 포인터로 사용 시 레퍼런스 카운팅을 강제할 수 없어서, 팀 협업 시 누구는 스마트 포인터를 사용하고 누구는 로우 포인터를 쓰고 하는 상황이 생길 수 있어서…

프로그래밍 일반


디자인 패턴

  • 공통적으로 발생할 수 있는 문제에 대한 재사용가능한 솔루션/해결책
  • 옵저버 패턴
  • 싱글턴 패턴
  • 오브젝트 풀
  • FSM
  • BT

DB

그래픽스

  • 셰이더()
    • 노드 기반 셰이더 분석 및 작성 (2)
    • 프로그래밍
    • HLSL
    • 카툰 렌더링
    • 잘하면 스펙트럼 넓지
      • 셰이더 잘 다루고
      • 로우레벨 엔진 커스터마이징까지 가능
      • 최적화도 코드 단위가 아니라 렌더러 레벨에서 할 수 있고
      • 멀티스레드 경험치도 일반 클라 개발자보다 많고
      • SW 엔지니어링, 그래픽스의 일부

수학

(2)

  • 공학수학
    • 선형대수 (2)
    • 이산수학
  • 벡터 연산
    • 내적, 외적
  • 행렬 연산
  • 기본 뉴턴 역학
    • 선형대수 개념 없이 벡터와 스칼라를 크기와 방향, 크기만 있는 물리량으로만 이해 X

멀티스레드

  • 멀티스레드 (3)

네트워크

  • (5)1
  • 소켓
  • 서버
    • 서버 통신 및 데이터 추가/삭제/추출
    • SQL
      • MySQL
      • PostgreSQL
    • 서버 언어는 C#/C++
      • 요즘은 C#이 조금 더 많은 추세.
      • 언어 통합을 하면 관리가 편한 것도 있긴 하겠지만은.. C#이 메모리 관리 어지간히 해주고 요즘 하드웨어 스펙이 너무 좋아졌다 보니까
  • 서버 OS는 회사마다
    • 윈도우 서버 –> 그냥 visual studio에서 바로 빌드하고 실행해볼수 았다
  • 멀티
    • 멀티플레이 구현
    • P2P, Server to Clients
      • 동기화
    • 간헐적 통신을 이용한 위변조 체크, 로그 쌓기
    • Photon, Nakama

서버 네트워크 공부하면서

프로그래밍 경험


경험

  • 출시 (5)
  • 라이브 (2)
  • 신규
  • 초기/개발단계부터 상용화/라이브 서비스까지 (11)
  • 유니티/메모리/성능 최적화 (5)

  • Tool
    • PlayFab

오픈소스

  • 에셋
  • SDK/서드파티 (4)
    • 구글, 애플 연동 (3)

그 외

  • 기존 프로그램의 구조 개선/리팩토링
  • 액션/전투 (3)
  • 방치형
  • 턴제
  • SLG
  • Git (2)1
  • Lua Script (2)
  • 코드 분석
  • 디버깅 (2)
  • UI/UGUI (7)
  • URP (2)
  • 렌더링/그래픽스 (2)
  • 물리 (2)
  • 플랫폼: iOS/AOS/PC (2)
  • 데이터 기반 의사결정
  • 최신 개발 트렌드
  • Spine (2)
  • After Effects
  • 1인 개발
  • 시스템 구조 설계 (2)
  • 전용/효율 툴 개발 (2)

포트폴리오


  • 유의미한 성과
  • PDF
    • 폰트 같은 것도 깨져서 PDF로 패킹해서 주는게 편함
    • +보안 문제 (링크나 구동 파일)

자기소개서-이력서

  • \? 이력서 탈락 여부가 결정되고, 포폴은 면접 시 세부 질문

  • 이력서
    • 사진, 나이, 이름, 연락처
      • 주소, 원하는 부서, 학력, 경력, 희망연봉, 입사가능일시
    • 아래 두 가지를 너무 번잡하지 않게 2~3장 내외로 정리
      • 본인이 해왔던 일 (할 수 있는 일)
      • 프로젝트 경험 기간
  • 경험
    • 신입
      • 학부 & 교육 기간에 무엇을 했는지, 개발에 밀접한 전공인지
      • 이력서나 포폴이 성의가 있는지
    • 경력
      • 이전 회사에서 어떤 직위를 맡았는지
      • 이직 주기 최근 2년 동안 2회 이하인지 (근속년수)
      • 원하는 포지션과 도메인에 맞는 일을 하였는지
      • 개발한 프로젝트가 실제로 서비스 됐는지
      • 우리 회사에서 진행하고 있는 프로젝트와 유사 경력이 있었는지
    • 시니어
      • 이전 회사에서 어떤 산출물이 있었는지
      • 프로젝트, 대인 리드 경험이 있었는지
  • 비중 적은 것 (상대)
    • 블로그 정리글, 포폴 영상 3분 넘어가는 것 -> 볼 시간 부족
    • 깃헙 페이지 코드 -> 보통 README 정도만
  • 블로그 포폴 –> 공부노트 의미 없음
    • 고찰 생각거리 재밌는 주제로 연구한거 정리해서 보기좋게
  • 포트폴리오
    • 영상 -> 궁금하면 보는거고, 포폴 자체가 좋으면 여부 관계 없음
    • 가독성 (그림, 영상 배치, 간격 등)
  • 이직
    • 이전 회사 프로젝트, 스크린샷 정도
  • 경험:
    • 갈등: 팀원과의 충돌을 어떤 방식으로 해결했느냐
      • 예시:
        • 소스코드 일부 넣고, 원래 이런방식으로 구현하려고 했는데 ~~를 통해 뭐 설득하고 지금 방식으로 구현하였습니다, 포폴에 소통과정을 넣으라고 했으면 이렇게 넣으면 되겠찌
        • 이런 프로젝트에서 이런 직책을 맡았는데 이러한 문제점이 발생해 개발에 난항을 겪고 있었다. 그와중에 내가 @을 하여 구조를 개선시키는 아이디어를 내었고, 설득을 통해 문제를 해결할 수 있었다.
  • KPI (Key Performance Indicator)
    • 경험을 단순 나열 –> 모든 경험을 성과 (KPI)로 정의하고 숫자로 증명
    • 데이터 분석 –> 데이터 분석을 통한 이탈률 15% 감소
    • 보고서 작성 –> 보고 프로세스 개선으로 작성 시간 20% 단축
  • 코드
    • 리뷰 X, 직접 구현한거 위주로 흐름 간략히 정리.
    • 뭐가 어려웠고, 어떻게 해결했는지
    • 보여주고 싶은 코드는 깃허브 (보고 싶으면 알아서 볼 것)
    • 참고 정도지, 이걸 리뷰하진 말 것
    • 회사 코드 X, 나 이런 컨텐츠, 시스템까지 개발해봤습니다 용도로 밖에는
  • 어떻게 할려고했는지, 하면서 문제가 뭐였는지(막혔던점), 어필하고싶은점, 시간이 더 있거나 더 추가할때 뭐 할건지
  • 면접에서 질문했을때 반갑다=추가
  • 면접에서 질문했을때 쫄린다=제거
  • 회사는 특별한 경험을 원하지 않고 잘하는 능력을 원합니다
  • 단순하게 특별한 경험이라면 큰 메리트가 없을 것이고, 잘하는 능력의 근거라면 메리트가 있을겁니다.
  • 읽어야 하는 사람이 무언가를 해야 읽을 수 있는 내용은 작성자의 의도와 다르게 스킵될 수 있습니다
  • 3가지. 개발의도, 무엇을 만들었는지, 무엇을 배웠는지

프로젝트

  • 프로젝트 & 스킬
    • 뭘 했냐도 중요하지만, 얼마나 구현했는지가 중요
    • 구현 기술, 과정과 결과 둘 다 중요함
      • 산출물 위주의 짧은 글 + 그 과정에서 겪었던 일들.
      • 보통 전자는 서류, 후자는 면접
    • 개발자가 포폴에 꼭 포함해야 할 12가지
  • 포폴에 대한 생각
    • 게임을 만들고 싶은건지, 취업을 하고싶은건지 (포폴은 만들고 싶은건지) 확실히 결정
      • 게임: 긴 시간 들여서 넣고 싶은거 다 하기. 젊은 나이는 그 무엇과도 바꿀 수 없다.
      • 취업: 일정을 정하고, 강점이 될만한 기능들만 구현해보고, 다음으로.
  • 포폴-면접
    • 포폴 공들인거 같아서 면접 잡아도 대답 못하면 그저 학원에서 준 레퍼런스인가 하기도 하고
    • 반대되는 예가 학원 포폴, 파쿠리 같이 뭔가 외부의 도움 비중이 높은 것들
  • 내용
    • 포폴 다 못보니까, 자신있는거 추려서 다듬기
      • 퀄만 좋으면 1개도 가능, 수가 중요하지 않음
      • 신입 -> 키움
        • 기본적인 실력 베이스
        • 양 보다, 뭔가를 스스로 몰두하고 끝까지 했는지가 중요
    • 게임에 쓰이는 코어 피쳐가 매끄럽게 들어가있는 포폴 한 두개면 됨
      • i.e. 네크워크 플레이 지원, 피격 판정있는 액션, DB에 저장되는 인벤토리, 무기 스왑, 레벨 업 등 성장시스템
    • 그 다음은 +@
      • 남들보다 좀 더 깊이 있는 테크닉을 챙겨주면 좋음
        • 렌더링을 파거나
        • 엔진을 파보거나
        • 관심있는 논문을 파거나
    • 단순 열거 -> 경험과 함꼐 설명
      • 이 기능은 어떻게 구현하셨나요? -> ~를 몰랐는데 공부하게 됐습니다
      • 어떤 최적화 기법을 적용
      • 하나의 기승전결 완성작 < 효율적 로직, 기능 구현
      • 게임 엔진 경험 < 전반적인 게임 제작 프로세스, 타 파트가 하는 업무 이해, 다양한 문제 슬기롭게 대처한 경험
        • 문제 해결자로서 팀에 기여한 내용을 잘 기록
          • 콘텐츠 제작/엔진 활용보다, 프로그래머로서 프로젝트에 기여할 수 있는 꼼꼼한 관리, 효율성 추구에 대한 마인드가 중요
          • i.e. 커뮤니케이션을 위해 노트 정리를 꼼꼼하게 하고 공유한 경험, 실수에 의한 발생한 문제를 감지하는 이중 시스템 개발
          • 확장성, 기획자가 있다는 가정하에 만든, 프로그래밍을 거의 모르는 사람이 모든 값을 조정 가능한, 에디터/엑셀 파싱
        • 게임 엔진 활용 능력
          • 어차피 다시 배운다. 회사 프로젝트에 따라서 재조립된다. -> 우선 기본에 충실
          • 기술적으로 어필할 수 있는. 프로젝트를 진행하면서 포폴 정리, 계속 자그만한 시스템들을 만들어나가야 한다.
          • 게임 엔진 활용 기술을 어필하고 싶다면, 에디터 툴 확장. 툴을 활용해 생산성 개선 고민해보는 경험.
  • 포폴
    • ‘뻔하고 지루한 무슨 게임 모작 이것저것 시스템 구현’
    • ‘인사팀 선에서 퀄리티는 다 걸러졌을 것이고 신입이 만든다고 얼마나 잘만들었겠냐’
    • ‘면접가면 포폴이 진짜인지 가짜인지 어떻게 작업했는지 정도만 알고싶어하고 지원자가 무슨 천재적인 방법을 써서 만들었나 그런 기대는 딱히 안한다’
    • ‘결국 물어보는건 CS 지식에 대한 깊이, 얘를 회사 작업 스타일로 얼마나 개조할 수 있는가, 이해할 머리가 되는가 이런 것들 같음’
    • ‘그치 내 말은 이제 인사팀이 보고 괜찮다고 평가할 포폴은 만들되 포폴로 명작을 만들겠어 이럴건 없는 것 같다는거지’
    • ‘그래서 포폴에 목숨 걸 필요가 없다는거임’
      • ‘현실적으로 너가 서류를 합격하고 면접을 끝내는 과정까지 너가 낸 포폴에서 코드 단위로 확인하는 사람은 없다고 보면됨’
      • ‘인사팀은 채용 기준에 따라 자소서와 포폴이 주는 연관성, 신뢰성 등을 판단해서 실무팀으로 넘겨주고, 실무팀은 이걸 다 확인할 시간이 없으니 면접때 찔러보는 식으로 포폴의 진위성과 너의 기술적 이해를 판단함’
      • ‘그렇기 때문에 포폴은 기본만 하고, 그 외에 너를 뽑아야하는 특별한 이유를 만드는게 중요하다고 봄’
  • 다인/팀플/인디
    • 기본적인 협업 개념은 있겠다 싶은
      • 협업하는 것도 배워보고, 잘하는 사람 코드 보면서 공부
      • 물론 없는 것보다 좋음. 인맥이 만들어지니까
      • 1인 개발 대비 - 다른 부서 이해도. 사회성.
    • 목적
      • 인디: 자아 - 아이디어 생기면 런하지 않을까
      • 포폴: 공부했구나
    • 협업
      • X: 보통 엉망진창, 책임감 부족, 결과물 완성도 하락
      • O: 책임감 있는 팀원들과 수준있는 협업
    • 기술
      • X: 보통 새로운 걸 배우기보단 기존 습관대로 작업 -> 성장 X
      • O: 새로운 걸 배우면서, 기술적인 요소 함유
    • 결과물
      • 출시 경험 + 다운로드 수 + 서비스 유지보수 중이면 좋음
  • 활동 보다는 결과물
    • 게임 개발 동아리 -> 좋지만 결과물, 라이브 서비스 경험

면접

개성

  • 게임 많이 하기
  • ‘뭐든 특출난 부분이 있으면 됨. 코딩 챌린지, 공모전, 게임잼, 게임쪽 인턴십, 게임회사 산학 연계 동아리(은근 있음), 인디 게임 출시 경험 등 남들에게 없는 특별한 경험이 있으면 좋게 보시는듯.’
  • ‘그냥 작업물 두 세개로 여기저기 찔러보는 애들(핏하지 않은)은 가차없이 컷했다고 함. 지원자중 그런 케이스가 워낙 많다고.. 나는 운이 좋아서 어쩌다보니 여기 플젝이랑 딱 맞는 포폴이 되어버렸다’
  • ‘수많은 지원자 중 포폴 겹치는 스멜도 컷이라고 했다. 그니까 다른 사람 포폴 보고 어? 이 기능 내지는 레이아웃 괜찮아보이네? 나도 이 부분은 써봐야지~ 라며 작은 부분 겹치는 것도 좋게는 안봤다 한다. 본인은 참고 차 인용만 해야지 라는 부분도 결국 다른 지원자도 좋게보고 쓴다라고 해서 겹칠 수 밖에 없다더라. 사람 눈 다 똑같다’
  • ‘마지막에 추가 점수를 딸 수 있는 부분은 사회 생활에 도움이 될만 한, 게임 외적으로 무얼 해봤냐다. 게임 했단 건 분별력이 없다. 여러 경험 얘기로 정신력, 체력 등 어필’

프로그래밍 심화


디렉

  • 시간 남으면
    • 쌩 밑바닥에서 만드는 포폴
    • 기본기

리마인드


  • 왜 와이:
    • 결국 평생 일 한다
      • 평생 할거면, 이왕이면 재밌고 만족스러워야
    • 일의 세 가지 만족 요소
      • 돈, 명예, 흥미
    • 나에게 있어서
        • 아직 돈의 가치를 잘 알지 못한다
        • 나중에 어련히 알게 되겠지, 우선 모으기
      • 흥미
        • 그래도 하고 싶은 일이여야
      • 명예
        • 나 스스로가 만족할 수 있는 환경과 경험
    • 어떤 일을 하는 것이 좋을까
      • 게임 프로그래머
        • 어떤 게임
        • 어떤 프로그래머
    • 목표와 가장 가까운 업무 환경
      • 장기적: 넥슨
        • 미소녀: 블루 아카이브, MMO RPG: 메이플스토리
      • 단기적: 1인 개발
        • WM
    • 어떻게 이룰 수 있는가
      • 장기적:
        • 공부
        • 활동
          • 틈틈히 확인
          • 넥슨 행사 같은거
      • 단기적:
        • 프로젝트:
          • 틈틈히 만들어봐야
      • WM
        • 나만의 세계관
          • 이건 공부, 프로젝트, 게임 - 덕질 전부 해당
  • 지금:
    • 나이가 무기다. ㄹㅇ.. 나이 하나라도 젊을 때 다 해버리자.
    • 센빠이는 이 나이에 뭘 하고 있었을까.
  • 최선:
    • 부담가지지 말고, 할 수 있는데 까지
    • 어차피 하려고 했던 거. 모티베이션돼서 오히려 좋아.
  • 최고:
    • 다 잘하는 사람 줄 세워도 to보다 많다.
    • 작은 회사도 N백명이 지원하는데, 그 N백명, N천명과 붙어서 뽑힐 수 있는 실력
    • 나 혼자 하는게 아니라, 나보다 더 많은 시간을 쏟는 수많은 지원자들이 있다.
  • 이미지:
    • Like 고딩 범생이 친구들. 밤늦게까지 야자 열심히. 가끔 놀고
    • 유혹 빠르게 처리하기
  • 기본기:
    • 신입: 키워서 씀 -> 기본이 탄탄해야
    • 경력: 기본기 없음? -> 신입만 못하다 (경력은 비싸니까!)
    • 기본기 있으면 뭐든 금방 배움 (기본기 > 사용 엔진)
  • 선택과 집중:
    • 중요한거부터 (공고 키워드나, 면접 단골 질문 같은 것들)
    • 효율적으로. 하지만 멀티 태스킹은 X
    • 빌드업은 짧게, 실행은 빠르게
  • 공부/프로젝트 방법:
    • 주제 정하고, 데드라인 정하고, 공부하고, 정리하기
    • 최소 기초: 최소 책 한 권은 뗀다는 마인드 -> 책 존나 읽자
      • 어려우면, 자료 적극적으로. 강의 봐도 좋고. (인프런, 유데미, …)
    • CS: 스테이지 깨 듯. 별 3개.
      • 1: 한 번 공부 할 떄 확실히.
      • 2: 이쁘게 정리. 남이 본다는 생각으로. (며칠 후의 나에게)
      • 3: 배운 개념 응용. 내 것으로 만들기.
        • 키워드를 경험, 능력으로
  • 그냥 보고 넘기지 말기
    • 한 번 접한 것은, 완전히 알지는 못하더라도, 큰 틀에서 설명할 수 있도록
    • 간단히라도 정리해서 글로 남기기
  • 멋대로 생각하지 말기
    • 이래도 되겠지 X
    • 두 번 세 번 의심하고, 확인 받고
    • 문제가 생기면 빠르게 보고하고, 해결 방법을 찾기

메모


  • 코테 -> 과제로 바뀌는 추세? 암튼 둘 다 잘 해야.
  • 공백기
    • 정말 아무것도 안한 기간.
    • 뭐라도 했고 설명되는 기간이면 됨 (프로젝트 설명, 개월 수)
  • 프로그래머 2차 전직
    • 종류
      • 서버 전문가
      • 엔진 전문가/TA
    • 일단 클라이언트 개발자로 취업한 후
    • 처음부터 준비할 수는 없음
      • 바로 전문가로 취업하기는 어려움
    • 경험과 지식이 기반이 되어야 함
  • 이직
    • 일 하고 있는 상태에서 이직을 하는 게 좀 더 유리 (특히 구직난에는)
    • 중고 신입
      • 약 3년차 이상 부터는 중고 신입 잘 안된다? (연차 - 그 연차에 기대하는 업무 역량과 퍼포먼스)
      • 보통 3년차로 중고 신입가려고 하면 물경력인 것 맞아서, 안 급하면 2년 이상 경력직 찔러보고 급하면 신입
      • 실무 경험 있는데 인턴은 진짜 아님
      • VR, 카포류 -> N년차가 와도 중고신입이랑 차이 X
  • 면접
    • 지원자는 넓은 범위 공부해서 가야되는 입장이고
    • 면접관은 자신들이 고른 것들 깊게 준비해서 오니까 대체로 자주 털리게 되더라
    • 시간 굳이 고르라면 오전.
      • ‘점심시간동안 오전 면접 내용을 무의식중에 정리하게되는데 오후의 면접자는 그런 오전에 본 면접자들의 장점을 합친 가상의 이상형 면접자와 싸우게 된다’ 라는 이야기를 하는 면접관이 꽤 많았다
  • ‘DirectX 11 기반으로 자체 게임 엔진을 개발 경험이 있습니다. 최근 가상 메모리, 캐시 지역성에 대한 공부를 깊이 하다보니 ECS에 대한 관심이 깊어져 ECS 기반 게임 엔진을 제작해보려는데… Transform,3D Animation과 렌더링 관련된 기능까지만 다뤄볼 생각입니다.’
  • 로블록스 플랫폼이 기술적으로 제공해주는 것과, 블랙박스 형태로 제공되는 개발 툴들이 공학적, 게임 수학적으로 사용자가 몰라도 되는 부분이 어디까지이며, 내가 실제로 개발한 부분이 어디인지 처음 보는 서류 심사자가 명확하고 알아보기 쉽게 서류를 작성하고, 로블록스가 해주지 않는 영역들에 대해서 많은 고민들과 어려움을 겪으시고 공학적으로 풀었던 경험이 있다면 충분한 경쟁력으로 승화할 여지가 있을 것 같기도 하네요.
    • –> VRChat
  • 개인사업자 최대한 늦게 (모바일 / PC 게임등록, 수익 인출 시) –> 각종 지원 및 대출이 사업자 낸 시점부터 초기 창업이 7년까지 라서
    • 데모, 페이지 개설 늦게 –> 데모 출시되면 퍼블리싱 컨택 안 오는 업체도 있음
  • 저거 설득은 내 입장을 설명하기보다는 듣는 입장에서 납득이 되게 설명해야 한다고 생각해요. 낭만 « 이게 누군가는 이해할 수도 있는데 누군가는 ‘?? 뭔 소리야 낭만이 밥 먹여주는게 아닌데요?’ 할 수도 있는 거니까요. 낭만을 다르게 표현하면 ‘굳이?’ 거든요.
  • 구현에 의도가 있어야하고 근거가 있어야하는데 왜 여기서 포인터와 서브시스템 설명을하는가. 뭔가 잘 구현했는데 이거 보면 이사람 어디서 코드 긁어온다음 대충 적은거 아니야 라는 생각을 하실지두. 그걸 방지하기 위해 내가 왜 이걸 이렇게 구현했는지가 중요한 그런느낌인 아닐까싶습니다

_

링크

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.