‘작지만 강력한 팀’: Plex가 전 세계 커뮤니티에 서비스를 제공하는 방법
2023년 10월 03일
Plex 팀은 버그를 처리하고 잠재적인 문제를 해결하는 훌륭한 전략을 취합니다. 바로 먼저 버그를 찾아 나서는 전략이죠.
Apple 플랫폼의 Plex 수석 소프트웨어 엔지니어인 Steve Barnegren은 “저희는 꽤 훌륭한 프로세스를 갖추고 있는데, 덕분에 잘못된 일이 발생하지 않습니다”라고 말합니다.
Plex에서 7년 넘게 근무한 엔지니어링 관리자 Alex Stevenson-Price의 말을 빌리자면, 2009년에 출시된 Plex는 ‘스트리밍 콘텐츠를 위한 글로벌 커뮤니티‘로서 역할을 하도록 설계되었습니다. 스트리밍 서비스와 미디어 서버가 결합된 Plex는 검색부터 콘텐츠 관리, 관심 목록 구성에 이르는 스트리밍 경험의 모든 것을 망라하려는 목표를 가지고 있습니다.
덕분에 올바른 솔루션을 조사하는 데 더 많은 시간을 할애할 수 있어요.
Ami Bakhai, 플랫폼 및 파트너용 Plex 제품 관리자
Plex 팀은 모든 게 매끄럽게 실행되도록 블록 단위로 생각하고, 작업 흐름에서 멈출 지점을 결정하고, 다음 단계를 평가할 수 있는 기회를 정기적으로 가지면서 6주간 전력투구합니다. 플랫폼 및 파트너용 제품 관리자인 Ami Bakhai는 “기능을 마무리하거나 무언가를 진전시킬 때는 추진력이 높아집니다”라고 말합니다. “모든 팀이 각자 맡은 역할에 헌신합니다. 덕분에 올바른 솔루션을 조사하는 데 더 많은 시간을 할애할 수 있어요.”
Plex 팀은 반복, 배포, 출시를 빠르게 진행하기 때문에 기능을 테스트하고 문제를 발견하기가 어려울 때도 있습니다. (Plex는 전력투구하는 기간 동안 tvOS 플래그십, iOS, iPadOS, macOS 앱에 대한 정기적인 업데이트를 제공합니다.)
Plex는 모든 플랫폼에 걸친 폭넓은 도달 범위를 자랑하지만, 투입되는 인력은 많지 않습니다. 팀은 완전히 원격으로 근무하며, Xcode Cloud 및 TestFlight와 같은 개발자 도구, 똑똑한 내부 조직, Slack 통합, 그리고 10년도 넘게 함께해 온 충성도 높은 베타 테스터로 이루어진 풍성한 커뮤니티를 적극 활용합니다. Plex의 제품 마케팅 이사인 Danni Hemberger는 “저희는 규모가 상대적으로 작지만, 강합니다”라고 말합니다.
Plex 팀은 지난 여름 QA 프로세스에 큰 변화를 주었습니다. 출시 직전에 QA 팀을 참여시키기보다는 QA를 모든 풀 리퀘스트에 걸쳐 진행하는 지속적인 프로세스로 전환했습니다. Barnegren은 “QA 팀은 마지막에 무언가를 찾게 됩니다. 그러면 모든 걸 뒤엎어 처음부터 시작해야 하죠”라고 웃으며 말합니다. “이제 10개의 기능을 추가해도 각자 QA를 진행했으니 그대로 선보일 수 있게 되었죠.”
이제 10개의 기능을 추가해도 각자 QA를 진행했으니 그대로 선보일 수 있게 되었죠.
Steve Barnegren, Apple 플랫폼의 Plex 수석 소프트웨어 엔지니어
지속적인 QA 프로세스는 지속적인 전송 프로세스를 반영하는 거울과도 같습니다. 이전에 Plex는 새로운 빌드를 대중에 공개하기 전에 테스트를 거쳤습니다. 이제 Plex는 Xcode Cloud를 통해 모든 직원에게 밤사이 빌드를 보내 모두가 최신 버전의 앱에 액세스할 수 있도록 합니다.
내부적으로 검토가 완료되면 Plex의 베타 테스트 커뮤니티로 이동합니다. 이 커뮤니티는 베타 테스터의 천국이라고 말해도 과언이 아닙니다. 그 수는 약 8,000명에 달하며, 이 중 일부는 Plex의 초창기 때부터 활동해 왔습니다. Stevenson-Price는 “지속적인 피드백 루프는 무척 중요합니다. 핵심 제품을 이해하는 파워 유저가 있다면 그 가치는 배가 되죠”라고 말합니다.
이 모든 피드백과 커뮤니케이션은 TestFlight와 Plex의 고객 포럼을 통해 이루어집니다. Barnegren은 “응용 프로그램의 일부에 대해 개인 미디어를 제공하는 사용자가 있어서 이는 특히 중요합니다. 미디어가 희귀하거나 난해한 모든 종류의 형식으로 구성될 수 있거든요”라고 말합니다.
게다가, 새로운 기능이 추가되고 버그가 수정될 때마다 이 모든 과정이 자동으로 이루어집니다. Plex 팀은 별도의 작업이나 수작업 없이도 최신 버전을 바로 사용할 수 있습니다. 이는 전 세계에 퍼져 있는 기업에 특히 유용합니다. Hemberger는 “진행 상황을 상기해 주며 저희 마케팅 팀이 계속 정보를 확인할 수 있도록 도와줍니다”라고 말합니다.
또한, CI(지속적 통합 시스템)를 유용하게 사용합니다. Stevenson-Price는 “인디 개발자로서 오랜 시간을 보냈습니다. 인디 개발자라면 Xcode Cloud와 같은 CI를 사용해봐야 한다고 생각하죠”라고 말합니다. “일부 인디 개발자는 이점을 보지 못하고 자신이 직접 앱을 개발하는 데 CI가 왜 필요한지 물어보곤 하죠. 하지만 CI는 안전망입니다. 코드를 푸시할 때마다 일관된 방식으로 앱이 테스트되고 빌드되는데, 특히 Plex처럼 멀티 플랫폼 앱의 경우 이게 무척 중요합니다. 그리고 마음대로 사용할 수 있는 도구도 아주 많죠. 한번 익숙해지면 몰랐던 때로 돌아갈 수 없을걸요.”