신입 개발자에게 코딩 실력보다 중요한 것

muchan
muchan
∙∙조회 23

오늘은 다른 팀에게 프로젝트를 맡기신 회사 대표님께서 특강을 해주셨는데, 어제와는 또 다른 좋은 이야기라서 내용을 정리해봤습니다.

커뮤니케이션 능력

게임 개발은 대부분의 경우 협업 환경일 수 밖에 없다. 일의 흐름은 보통 아래 순서와 같다.

기획자/디렉터 -> 개발 명세서 -> 개발자/아트 -> 결과물

여기서 중요한 것은 모두 같은 기획서를 봐도 각자가 가진 관점 때문에 다르게 받아들이게 된다는 점이다. 대표님께서 비유를 들어주셨는데 직군이 다르면 사실상 다른 언어를 쓰는 것과 같다는 이야기를 해주셨다. 개발자와 기획자, 개발자와 아트가 대화하는 것은 외국인과 대화하는 것에 가깝다는 것이다. 그래서 타 직군을 이해할수록 스스로가 통역사가 된다. 개발자로 시작해도 상대 직군의 언어를 알면 나중에 기획자가 됐을 때 기획서에 개발 관련 내용을 녹여 쓸 수 있다.

개발자 vs 기획자

기획자와 일할 때 도움이 되는 습관 세 가지를 말씀해주셨다.

  • 이 기능이 왜 필요한지 물어보면 좋다. 이유를 알면 그 기능의 중요도를 스스로 설정할 수 있기 때문이다.
  • 다섯 살도 알아듣게 설명하는 게 좋다. 특히 이 작업이 왜 오래 걸리는지 물어볼 때는 원인과 결과를 같이 설명해주는 게 좋다.
  • 앞으로 만들 것까지 같이 말해주면 좋다.

개발자 vs 아트

개발자는 생각보다 아트와 이야기하는 경우가 많다. 자주 나오는 이야기는 이런 것들이었다. (사실 더 있었는데 메모를 못 했습니다ㅠ)

  • 사이즈는 4의 배수로 맞추기. 텍스처는 4x4 블록 단위로 압축하는 게 최적화에 제일 좋기 때문이다.
  • 프레임 피벗 맞추기. 피벗을 안 맞춰주는 경우가 은근히 있다.

개발자 vs 개발자

같은 직군이라 편할 것 같지만 오히려 어렵다. 자존심 센 개발자끼리의 소통은 어렵다는 것이다. 다만 컴퓨터는 정직해서 정답이 있기 때문에 기술적인 결정 자체는 오히려 쉽다.

문제는 사람 쪽이다. 각자의 영역이 겹치기 때문에 아키텍처와 코드 컨벤션을 미리 약속해두는 게 좋다. 그리고 완벽하지만 아무도 이해할 수 없는 코드는 오히려 독이 될 수 있다는 이야기도 해주셨다. 한 가지 사례를 들어주셨는데 전에 같이 일했던 분이 수학에서 쓰이는 소수를 바탕으로 로직을 구현하셨다고 한다. 비트 마스크를 사용했으면 쉽게 모두가 이해됐을 로직을 혼자만 아는 방식으로 구현하니 다른 사람들은 이해하기 어려웠다고 한다. 최근에는 거의 모든 개발자가 AI를 사용하는데 사람이 이해할 수 없는 고차원적인 코드는 협업에서 오히려 독이 되고, 요즘 AI가 뱉어주는 코드도 이 기준으로 잘 걸러 써야 한다. 결국 핵심은 상대가 내 말을 듣고 이해할 수 있게 말하는 습관을 들이는 것이다.

회사는 어떤 신입을 좋아할까?

사실 신입들은 아무리 잘나봐야 다 거기서 거기다. 그래서 회사는 실력 그 자체보다 컬처핏, 즉 팀과 잘 맞는지를 더 중요하게 본다. 그리고 엄청나게 뛰어난 개발자보다 게임 이해도가 높은 개발자가 낫다는 이야기도 해주셨다. 게임 회사에서 게임을 모르면 아무리 코드를 잘 짜도 결국 엉뚱한 걸 만들게 되기 때문이다. 그래서 게임을 많이 해봐야 하는 이유도 게임 이해도가 높을수록 커뮤니케이션 기능도 올라가기 때문이.

정리하면 회사가 좋아하는 신입은 코드를 화려하게 짜는 사람이 아니라 팀과 말이 통하고 게임을 아는 사람이었다. 신입 실력이 다 비슷하다면 남들과 차별화될 수 있는 지점도 결국 여기라는 생각이 들었다.