삐비빅- 코어에 접근하는 중
이 실리콘밸리 회사에서 입사하자마자 진행한 오리엔테이션 프로그램들이 드디어 끝났다. 나와 직접적으로 관련 있는, 관련 없든 회사 내 다양한 팀들에 대해 배우는데 점점 참석자가 줄어드는 것을 볼 수 있었다. 점점 미팅 내 모두가 카메라를 켜지 않게 된다. 그리고 질문 없이 빠르게 세션이 끝난다. 여기라고 크게 다르진 않다. 나도 점점 자유도가 늘어난다. 책상에서 듣다가, 밥을 먹으면서, 또 오전엔 침대에서 듣기도 한다. 곧 이사를 하며 소파를 살 예정인데, 소파에 앉아서도 일 할 수 있도록 노트북을 올려놓을 간이 테이블을 놓아야겠다. 유튜브에서 실리콘밸리 개발자에 대한 유머 영상을 봤는데, 그게 점점 공감이 된다.
https://youtu.be/Zjl2vmy02As?si=vFRIUVVA-GEEzree
3주 차가 되고 나는 첫 태스크를 시작했다. '작은 버그 티켓' 세 개를 받았는데, 하나하나 뜯어보다 보니 그렇게 작지만은 않았다. 그동안 일해왔던 회사들과는 비교도 안 될 만큼 큰 코드베이스에서 각 버그가 어디서 발생하는지 찾는 것부터 일이었다. 그리고 어떻게 PR을 올려야 하는지, branch는 어떻게 만드는지와 같은 룰에 대해 알아가야 했다. 코드 수정은 비교적 적었다. 대부분의 작업을 3일 만에 마무리했다. 물론 여러 확인을 거치다 보니 실제 반영은 그다음 주에나 가능했다.
회사에 따라 다르겠지만 내가 다니는 회사는 실험을 많이 한다. 운영 중인 프로덕트에 실험을 굉장히 많이 한다. 처음엔 실험을 많이 하는 것이 신기했다. 프로덕트에 검증되지 않은 불안정한 기능이 많이 나가도 괜찮은가? 하지만 회사의 전반적인 기조가 그러했다. 나는 버그티켓을 처리하고 QA 이후 실제 프로덕트에 반영해야 하는 게 당연한 줄 알았는데, 여긴 코드 올리고 코드 승인받고 반영하고 테스팅이 진행된다. 물론 작은 버그에 대해서만 말이다. 그리고 먼저 반영하고 테스트할지, 사전 테스트할지는 버그를 처리하는 담당자가 정한다. 실험에 관대한 만큼 버그에도 관대하다고 봐야 할까? 그 반대일까? 무결한 프로덕트를 만드느라 시간을 쓸 바에 빠르게 새로운 기능을 배포하고 실험을 진행하는 것을 택한 것이라 생각한다.
코드 퀄리티에 대해서도 처음에 적응이 잘 안 되었다. 나는 한국에서 일하면서 브랜치 룰, 코드 컨벤션, 네이밍 룰, 프로젝트 구조 등을 세우고 따르는 것에 익숙했다. 또한 typescript나 react 사용에 있어서도 가장 타이트한 룰을 따르는 것이 당연했다. 그에 비하면 정말 솔직히 이곳은 무법지대에 가까웠다. 이 코드들이라면 나에게 혹은 내 동료들한테 코멘트 한 바가지는 먹었을 것이다. 그게 정답이 아니었던 걸까? 그렇게 안 해도 괜찮았던 걸까? 나는 요즘 내 뇌를 다시 정립하고 있다. 우리는 프로덕트보다 코드에 매몰되었던 것은 아닐까? 어느 정도의 코드퀄리티를 추구해야 할지 몰라 팀의 테크리드에게 물어봤다. 빠르게 실험과 기능을 배포하느라 코드퀄리티를 추구하지 못했는데 이것보단 더 높은 레벨을 추구하고 싶다고 했다. 내가 나설 차롄가 싶다가도 아직 초기라 조심스럽다. 빠른 기능 배포와 코드퀄리티 사이에서 어느 정도 선을 맞추는 것이 좋은 걸까?
버그티켓을 거의 끝내고 첫 실험을 받았다. 이전 회사들에서는 규모상 실험을 많이 하기 어려웠는데, 여기에서는 작은 퍼센트로 실험을 시작해도 충분한 결과를 얻을 수 있다. 정말 작은 것부터 정말 큰 것까지 실험을 할 수 있다. 내가 속한 회사지만 정말 부럽다. 큰 규모가 더 큰 규모를 만든다.
이 회사에서는 엔지니어도 실험에 적극적으로 참여한다. 적극적으로 참여하는 수준이 아니라 실험을 엔지니어가 설계한다. 어떤 문제를 해결할지 ideation도 모두 함께 참여하고 거기서 어젠다를 뽑아 실험을 전개한다. PM이나 디자이너에서 출발하는 경우도 당연히 많지만 이 회사에선 엔지니어도 프로덕트의 경험을 담당하는 책임자다. 프로덕트에 워낙 변화가 많다 보니 프로덕트의 모든 명세가 들어있는 기획서는 더더욱 없다. UI개발에 참고할 피그마는 있지만 모든 페이지가 정리되어 있는지는 모르겠다. 프로덕트와 팀이 워낙 크다 보니 맡지 않는 부분에 대해선 모른다. 한국에서 일할 때에는 고쳐야 할 것이 있으면 정책이나 배경이 정리되어 있는 문서를 찾는 게 당연했지만, 여기선 보통 없다. Single source of truth 같은 건 없다. 지금 서비스하고 있는 버전 자체가 바로 최신 기획서이다. 만약 버그를 고치다가 원래 어떻게 되었는지 찾는데 없으면 내가 다시 정하면 된다. 물론 큰 규모의 업데이트나 실험에 대한 문서는 있다. 업데이트되지 않을 뿐이다. 그 시간에 다른 새로운 것을 더 많이 하려나?
우리 팀은 빠르게 성장하고 있다. 나 다음에도 새 멤버가 들어오고, 인턴도 들어온다. 나는 내가 한 달 동안 온보딩하며 작성한 노트를 매니저에게 공유했다. 조각조각 흩어져있거나 구전설화처럼 전해져 내려오는 것들을 모아 다음 새로 들어오는 팀원에게 나와 같은 어려움을 겪지 않게 하고 싶었다. 어떤 회사에서든 언제나 해왔던 일이고, 이곳의 매니저와 오늘 새로 들어온 팀원도 내 온보딩 노트를 좋아해 줬다.
첫 번째 달의 피드백을 받았다. 피드백을 할 것은 없고, 예상보다 더 빠르게 팀과 프로젝트에 적응해 인상 깊었다는 이야기를 들었다. 첫 번째 주부터 코드 contribution도 하고, 질문도 많이 하고, 팀원들과 이야기도 많이 나누는 것이 좋다고 했다. 그리고 오늘 스프린트 미팅에서 shout-out도 받았다. Super productive 한 첫 온보딩 주간을 보냈다고 말이다. 이제 시작인데 벌써 놀라다니, 나는 아직 보여줄 게 많다. 점점 더 팀의 코어 프로젝트에 가까운 일을 맡아가고 있다. 이제 본격적으로 한국인의 생산성과 효율성을 보여주마. 그리고 내가 얼마나 팀원들과 가까워질 수 있는지, 얼마나 팀에 도움이 되는 사람인지도 보여주겠다. 절대, 절대 수많은 외국인 중 나를 뽑은 것을 후회하지 않을 것이다.
8월에 첫 팀 온사이트 일정이 잡혔다! 이 콜로라도를 탈출해 본사가 있는 샌프란시스코에서 팀이 모두 모인다! 취업을 한 후 이루고 싶었던 버킷리스트 중 하나가 본사 방문해서 일해보는 것이었는데, 이번에 드디어 회사 예산으로 이룰 수 있게 되었다! 비행기도 예매하고, 숙박도 예약했다. 본사에서 아침도 먹고, 점심도 먹고, 팀원들하고 직접 만나 이야기도 나누고, 대면으로 미팅도 하는 건 어떤 기분일까? 아직 리모트 근무 한 달 차인데 대면근무가 어색하면서도 그립다. 빨리 우리 팀을 만나고 싶다. 그럼 정말 내가 이 회사에 속해있다는 기분이 들까? 어쩌면 난 콜로라도의 산골에서 외계인과 통신하고 있었는지도 모른다... 우리 팀, 너희 모두 사람 맞지?