4 minute read

본 글은 생성형 AI 도움없이 작성된 글로 다소 거칠 수 있습니다.

Deep Dive in XR

출국을 30일 가량 앞둔 상태에서 해커톤 참여는 쉬운 결정은 아니였다. 미국가게 되면서 물리적으로 학회 참여가 힘들게 되면서, 마지막 행사로서 임원진과 공동체 예의는 지켜야겠다는 생각으로 참여하게 된 것 같다.(사실 1년활동 학회 참여해놓고 미국 가버리는거부터 예의 없긴 함;;;;)

현업에서 핸드트래킹 및 다양해한 인터렉션을 구사하면서 XR 플랫폼을 개발하고 있었고, XR을 뒷받침하는 백엔드나 통신등 다방면 개발해왔기 때문에 나름 자신이 있었고, 해커톤 베테랑(?)으로 사실 최소한의 노력으로 수상하는 꼼수도 알고 있었기 때문에 들뜬 마음으로 참여하게 된거 같다…오늘 해커톤이 끝나기 전까진 말이다..

바로 회고록 start

단순히 해커톤에 한정하기 보단 현업과, 더 나아가 큰 조직에 대입하여 작성하였습니다.

팀의 중요성

뭐 말안해도 모두가 알꺼다. 팀은 중요하다, 특히 초단기간 해커톤에서는 한명 한명 개개인의 능력이 더더욱 중요하다. 어떤 부분에서 중요한지 확실하게 짚을 필요가 있는 것 같다.

사공이 많다.

우리 팀은 기획이 4명이었다. 말 그대로 사공이 너무 많았다. 개발자의 입장에서 모두가 다 그럴싸 했고, 그래서 나는 Limitation을 계속 push했다. 이에 가장 잘 대응해주신 분의 주제에 투표를 하게 되었다. 주제가 정해진다고 다 된 것이 아니다. Product Manager는 4명이었지만, Product Owner는 없었다. 즉 실패를 하더라도 모두가 하나의 방향으로 움직이면 괜찮다. 다시 하면 되니까. 실패에 대한 대응보단 개발자를 포함한 6명의 뇌공유가 정확하게 이루어지지 않은 상태로 산발적으로 진행되었던 부분이 제일 치명적이지 않았나 싶다.

이상적인 팀구성

  • 기획자 1
  • 기획 겸 디자이너 1
  • 개발리드 1
  • 주니어 개발 2
  • GIT조차 못하는 신입개발 1

신입 개발을 넣은 이유는, 해커톤은 단순 수상을 위한 자리라기 보단 서로가 서로를 도우며 같이 성장하는 공간이기 때문에 많은 친구들이 용기를 내 해커톤 참여했으면 좋겠다는 마음에서이다.

서로 간의 확신

개발자는 기획자들이 부탁한 부분을 책임을 다해 개발해내야 한다고 생각한다. 항상 그럴 순 없지만, 그렇게 하는 척이라도 해야 기획자들에게 확신을 줄 수 있다고 생각한다. 이런 확신은 기획자들이 신나서 더 많은 고도화와 상상력을 바탕으로 고퀄리티의 발표 자료와 리서치를 진행하게 만든다. 당연히 사람마다 체력이 다 다르고 컨디션 차이가 있기 때문에 개발해내지 못하는 것을 이해는 할 수 있지만, 그걸 다 고려하더라도 모두가 처음 만나는 자리에서는 이 사람이 어떤 사람인지는 확실히 티가 더욱 나는 것 같고, 그게 아니더라도 오해를 사기 쉬운 행동들일 지도 모른다.

기획자들에게 앞서 말했듯이 나는 계속 일반인의 시선에서 제한이 될 만한 부분들을 계속 부탁드렸었다. 아쉽지만 마지막까지 해당 부분은 해결되지 못한 Limitation에서 개발자인 나조차도 확신을 가지고 개발한 느낌은 아니었던 것 같다.

이런 식으로 개발과 비개발직군으로 나눠 생각했을 때 이런 식으로 서로가 서로에게 확신을 주며 한발 한발 나아가야 한다. 어느 하나 확신을 주지 못하는 순간 팀에 정체기는 피할 수 없었다.

기획의 중요성, 설득

앞서 말한 내용이기도 하지만 이번 해커톤을 통해 기획이 얼마나 중요한지 다시 한번 깨달았다. 너무너무 중요하고, AI로 대체할 수 없는 영역이었다. 특히 XR에서는 인간이 경험하는 무언가를 대상으로 하는 몰입형 소프트웨어가 목표이고, AI가 명확하게 알려주는게 1도 없었다. 또 이는 단순히 주제를 하나만 두고 말하는 것이 아니다.

팀을 어떻게 운영할 지, 어디서부터 어디까지 MVP로 진행할 껀지 이 MVP를 개발직군들에게 언제까지 만들도록 부탁할껀지, 실제로 그 때까지 가능은 할지. 실패한다면 어떻게 할건지, 우리 팀말고 다른 팀에게 최소한의 설명 (한 문장 가능?)으로 어떻게 명확하게 전달할 수 있을지 등등 매우 고려할 사항이 많다는걸 다시 느꼈다.

그럼에도 기획이 1사람만 필요하다는 이유는 사공의 문제도 있지만, PM이라는 직무는 기본적으로 다 할 줄 알아야 한다고 생각하고 개발자들이 GIT을 기본 소양으로 생각하는 것처럼, PM에게 기본소양과 같은 부분이라고 생각한다.(개발자들이 에러때메 밤샐 때 할 꺼 없어서 멍때리는 기획군을 경험한게 한 두번이 아니긴 하다. 문제라기 보단 개발자 입장에선 많이 미안함 ㄹㅇ)

그럼에도 개발, 개발, 개발

해커톤은 개발을 하는 행사이다. 개발을 못해내면 수상이고 뭐고 기대도 하면 안된다. 내가 개발을 잘하냐고? 노노 전혀 XR 고인물이 얼마나 많은데 내가 주름 잡겠느냐만, 우리팀의 개발자의 수가 부족했던 건 사실이다. 아마 기획자들이 실패지점을 고려하여 대응책을 고민하지 않은 이유도 개발자가 2명 밖에 없어서이지 않나 싶다.

GIT은 최소한 배우고 오자.

물론 엄청나게 많은 인원이 한 공간에 모이면서 와이파이나 통신의 문제 때문에 깃을 사용하지 못하는 경우도 있었다. 그럴 때는 USB로 파일 공유를 해야하는데, 그게 아니라면 어지간하면 깃으로 협업하는 방법을 꼭 숙지했으면 좋겠다. 소프트웨어가 어느 수준 이상 복잡해졌을 때는 오직 한 대의 컴퓨터에서만 개발할 수 밖에 없는 상황이 오면 정말 좌절스럽다.

너 통나무 들긴 함?

내가 통나무를 들어서 생색내고 그런건 절대 아니다. 썸네일을 보면 “통나무를 드는 새끼가 잘못된 새끼임” 이라고 하는 것처럼 ㅋㅋㅋ 다만, Git의 문제로 단 한 대의 컴으로만 진행해야 하는 상황에서 통나무를 들 수 밖에 없었던 것 같다.. 너무너무 힘들었다.

통나무 들라고 누칼협?

겠냐? 라고 하고 싶지만 어쩔 수 없었던 것 같다. 내가 자진한 것도 맞고 해커톤 특유의 빠른 진행을 위해서는 어쩔 수 없었던 것 같다. 하지만

이런 것 같다. ㅋㅋㅋㅋ

하지만, 통나무를 결국에는 들 줄 아는 사람

통나무를 제대로 들진 못했지만, 들어 본 경험은 정말 좋은 것 같다. 매번 해커톤 때마다 비슷한 실력의 사람들과 발 맞춰 움직였는데, 인원 부족의 어쩔 수 없는 상황 속에서 결국 결과물을 구현해냈다는 건 또 경험하기 어려운 좋은 경험이었고, “그래도 나 내 팀을 위해 최선을 다했다“라는 생각이 들면서 대전행 기차를 탔기 때문에 후회없는 것 같다.

헤커톤의 묘미

다양한 배경의 사람들 그리고 배울 점이 많은 사람들

결국 네트워킹이다. 완벽한 사람은 없기에, 다양한 사람들에게 많은 것을 배울 수 있는 좋은 기회가 있다면 언제든지 시간을 내야한다고 주장하는 사람으로서, 특히 이번 해커톤에서는 XR 고인물(?)들과 사회생활 고인물(?)들과 팀프로젝트를 하면서 다른 방면으로 정말 많이 배운 것 같다. 디자이너 분은 내가 놓친 오브젝트 배치라던가, 불균형등을 생눈으로 잡아주셨는데 어나더 레벨을 느꼈다. 사회 경험 많으신 기획자 분도 있으셨는데, 생각의 깊이가 정말 어나더 유니버스였다. 사실 마음 같아선 그 분의 아이디어를 고르고 싶었는데, XR 경험이 많진 않으셔서 여쭤본 Limitation에 대한 대응이 부족하다고 느꼈던 같다. 그럼에도 아직까지 여운이 남을 정도로 침착하셨고 리서치나 말씀하시는 것들이 배울 점이 상당히 많은 분이셨다.

나는 XR 체험을 많이 해보진 못했다. 개발만 주구장창 해왔는데, XR고인물 분들께서 잘 이끌어주셔서 내 시야가 좀 더 넓어진 것 같아서 우리 팀원들에게 모두 감사한 마음이 드는 것 같다 :)

너 통나무 들어봤어?

통나무를 들어본 경험은 정말 돈주고도 못사는 경험이다. 도덕적인 경험은 아니지만 ㅋㅋㅋ 인생을 살면서, 특히 개발자로서 통나무를 처음 본 순간부터 머리 위까지 들어올리는 경험은 이후 내가 조직을 이끌거나 부서를 리드하는 상황에서 정말 큰 자양분이 될 꺼라 생각한다. 그렇기 때문에 수상을 못했지만, 그럼에도 성취감이 뿜뿜하는 해커톤이었지 않나 싶다.

생성형 AI에 대한 회고, 특히 XR환경에서

AI로 코드를 싸지(짜지X 싸지르지O) 마세요. 여기까지만 하겠습니다.

Leave a comment