게임 개발자를 위한 클론 코딩
잘못된 클론 코딩 게임 업계에서 개발자들의 포트폴리오로 자주 나오는 요소는 클론 코딩입니다. 본인이 좋아하는 게임을 만들어보기도 하고, 지원하는 회사와 가장 밀접한 프로젝트를 만들어서 제출하기도 합니다. 물론 아주 잘 만든 분들도 있지만, 대부분은 제출한 클론 코드가 안 좋은 결과를 만드는 경우가 많습니다. 어떤 경우일까요? 제가 경험한 사례를 좀 공유해보려고 합니다. 사례 1. 스크린샷뿐인 모작 3년 전쯤 마인크래프트 모작을 제출한 분이 있었습니다. 마치 마인크래프트처럼 보이는 월드와 블록들이 있는 스크린샷이 있었습니다. 정말 똑같다(?...
더 나은 코드를 작성하기 위한 가이드북 《읽기 쉬운 코드》
모범적인 코드는 무엇일까? 프로그래머로 일을 하다보면 개발자들끼리 모범적인 코드에 대해 논쟁 하게 되는 경우가 더러 있습니다. ‘어떤 구조가 더 좋다.’ 혹은 ‘이건 실제로 내가 해본 경험이 있다‘등의 다양한 이유로 시작해서 누군가가 내 코드가 더 좋은 코드라고 주장을 한다거나, 당신이 작성한 코드가 모범적이지 않다고 하는 경우, 혹은 서로의 구조를 주장하다가 기분이 상하는 경우도 있습니다. 그래서 많은 코드리뷰 책이나 개발 문화 관련 책에서 “비자아적 프로그래밍(감정을 배제하고)을 해라”, “지속 가능하게 코드를 짜라"등의 이야기를 하곤 합니다....
저의 첫 게임 회사 포트폴리오
제 첫번째 포트폴리오는 실패율 100%였습니다. 제가 처음으로 취업을 준비하던 시절, 저는 대략 20개의 게임 회사에 지원서를 썼고, 모두 떨어졌습니다. 사실 지금 생각하면 떨어지는 게 당연했던 것 같습니다. 그때 저의 포트폴리오는 작은 Docs 파일 하나였고, 거기엔 제가 만든 게임 제목과 스크린샷, 그리고 짧은 설명이 한두 줄 있었습니다. 물론 포트폴리오 외에도 제가 매력적이지 않다는 생각을 많이 했던 것 같습니다. 네.. 제 첫 번째 포트폴리오는 100% 실패율을 보인 실패작이었습니다. 포트폴리오의 재구성 그래서 그때부터 저는 선배/후배/동기를 따지지 않고, 많은 지인들에게 제 포트폴리오와 이력서를 보여주고 다녔고, 물어보곤 했습니다....
리액트가 필수 교양이 되는 세계관
리액트가 필수 교양이 되는 세계관이 있을까? 이전에 리액트와 관련된 찬양(?), 개발자의 영감을 주는 리액트에 대한 내용을 공유했었습니다. 그리고, 저는 리액트 강의를 찍고 있습니다. 요즘에 리액트 강의는 사실 너무나도 많고 좋은 강의도 많기 때문에 제 강의가 뛰어나다고 이야기드리긴 어렵지만, 그럼에도 찍는 이유는 저는 모든 개발자를 위한 리액트 강의에는 미래가 있다고 믿는 편이기 때문입니다. 이게 무슨 뜻이냐면, 리액트가 필수 교양이 되는 세계관을 꿈꾼다 입니다. 먼저 홍보를 잠깐 하고 본론으로 들어가자면, 이번에 제 강의의 얼리버드 쿠폰이 4/29일 자정까지 부활한다고 합니다!...
개발자에게 영감을 주는 리액트
저는 꽤 오랫동안 게임 개발자로 일을 해왔습니다. 실제로 게임 개발이라는 것은 단순히 게임을 개발하는 것을 벗어나서 다양한 툴들과 다양한 스크립트들도 작성하게 됩니다. 그러다가 저는 리액트를 접했습니다. 팀 내부에 런쳐나 툴을 사용하는 용도였죠. 처음 접한 리액트는 사실 좀 충격적이였습니다. 충격의 리액트 리액트를 마주했을 때 저는 MVX라고 불리는 패턴들을 좋아하는 개발자였습니다. 실제로 만드는 게임에도 UI를 만들 때, MVP 패턴을 이용하고 있었고, 최근에 직방에서 MV(R)P(Rx)도 조합해서 사용한적도 있습니다. 개인적으로 저에게 MVP나 MVVM과 같은 패턴은 꽤 구조적으로 편하고 유용했습니다....
엔지니어링 문화를 만들 때 중요한 3가지
오늘은 제가 소프트웨어 엔지니어팀 문화를 만들면서 배웠던, 제가 생각하는 가장 중요한 3가지를 공유하고자 합니다. 이 글이 이제 막 개발팀 시니어나, 팀장이 되는 분들에게 도움이 되면 좋겠습니다. 저는 대략 3번정도 엔지니어링 팀을 이끌면서 다양한 시도를 해왔다고 생각합니다(?) 엄청나게 빡세게 코드리뷰를 하기도하고, 비자아적 프로그래밍을 추구해보자고 하면서 코드 비판을 감정 없이(?) 주고받은 적도 있습니다.(그리고 감정이 상했죠..하하하) 그러한 시행착오 끝에 찾은 저에게 적합한 “엔지니어링 문화를 만들 때 중요한 3가지” 를 이야기해 보고자 합니다....
처음 리더가 되고 받은 미션
여러분이 처음 리더가 되던 시절을 기억하시나요? 오늘은 제가 처음 리더가 되던 시절에 대한 이야기를 해볼까 합니다. 리스펙트를 받으세요. “팀원들의 리스펙트를 받으세요” 제가 처음 리더가 되고 나서 받은 미션이었습니다. 저는 조금 어린 나이에 리더가 되었습니다. 29살, 경력으론 6년 차쯤 팀에서 리더가 되었습니다. 저를 리더로 선임했던 디렉터는 1:1 미팅에서 저에게 하나의 미션을 주셨습니다. “팀원들의 리스펙트를 받으세요” 아마도 새로 리더가 되시는 분이나, 이직을 통해 리더가 되는 분들에게 가장 큰 미션중 하나일 겁니다....
수평적 조직구조는 죽었다.
이번엔 수평적 조직구조에 대한 제 경험을 공유해보고자 합니다. 제가 다녔던 게임 업계는 대표적인 수평적 구조를 지향하는 곳이었습니다. 폭넓은 창의력! 집단 지성! 혁신적인 아이디어! 하지만 이상은 조금 달랐을지도 모르겠습니다. 제가 경험한 수평적 조직구조 제가 수평적 조직구조를 맹신하게 된 건 Valve의 신입사원 안내서부터 였을 겁니다. 10년 전쯤 유행했던 건데 기억하시는 분들이 계실지 모르겠네요. 수평적 구조에 대한 로망을 갖고 들어간 게임 업계에서 처음으로 수평적 조직구조를 경험했던 저는 꽤 충격을 많이 받았습니다. “와, 모두가 자유롭게 이야기하고, 모두가 아이디어를 낼 수 있네?...