TinyPilot: Month 27

Michael Lynch

TinyPilot: 27개월 차

원문은 Michael Lynch님이 에 게재했습니다. 이 블로그 구독하기

한 줄 요약

완전 원격으로 운영되는 TinyPilot은 어떤 모습일까?

하이라이트

  • 물리적 사무실 없이 TinyPilot을 운영할 수 있을지에 대해 사고 실험을 하고 있다.
  • 아웃소싱을 고민하는 과정에서 현재 워크플로우의 비효율을 깨닫게 된다.
  • Playwright라는 E2E 테스트 도구에 완전히 매료되었다.

목표 달성도

매달 초에 달성하고 싶은 목표를 정한다. 이번 달 목표는 어떻게 되었는지 돌아보자.

TinyPilot Pro를 차세대 업데이트 시스템으로 이전하기

  • 결과: 새로운 업데이트 시스템이 포함된 TinyPilot Pro 2.5.0을 출시했다.
  • 평점: A

이번 릴리스의 가장 큰 변화는 업데이트 방식에 있다. 이전에는 TinyPilot이 git 서버에 업데이트를 조회하고 항상 최신 버전으로 업데이트를 시도했다. 이제는 TinyPilot이 다음 버전을 조회하는 커스텀 웹 서비스가 생겼다. 새로운 업데이트 시스템 덕분에 업데이트 과정을 더 세밀하게 제어할 수 있게 되었고, 새 버전을 테스트하기도 더 쉬워졌다.

이번 릴리스는 5개월이 걸렸고, 예상보다 훨씬 오래 걸렸다. 평소 릴리스 주기는 약 두 달 정도다. 새 버전 덕분에 앞으로는 더 빠르게 반복하고 테스트할 수 있을 것으로 기대한다.

TinyPilot Voyager를 유튜버나 블로거 두 명에게 리뷰용으로 보내기

  • 결과: 채용을 우선하기로 하고 이 목표는 취소했다.
  • 평점: 해당 없음

서포트 엔지니어 한 분과 함께하지 않게 되면서, 그 자리를 채우는 채용에 집중했다. 결과적으로 채용에 성공했고, 10월 초에 새로운 엔지니어를 채용했다.

새로운 케이스 제조 방안 모색하기

  • 결과: 메탈 케이스 시제품을 주문했다.
  • 평점: A

아직 여러 방안을 탐색 중인 단계라 다소 모호한 목표였다. 이전에는 사출 성형 케이스를 알아본 적이 있는데, 개당 단가는 낮지만 초기 비용이 많이 든다. 지금은 초기 비용 부담이 적고 확장에도 효율적인 메탈 케이스를 검토 중이다.

TinyPilot 통계

지표2022년 8월2022년 9월변동
순 방문자 수11,9039,040-2,863 (-24%)
총 페이지뷰23,21417,608-5,606 (-24%)
판매 수익$76,082.06$68,640.50-$7,441.56 (-10%)
기업 구독$290.70$242.95-$47.75 (-16%)
로열티$3,264.23$3,440.90+$176.67 (+5%)
총 수익$79,636.99$72,324.35-$7,312.64 (-9%)
이익$21,580.82-$8,764.28*-$30,345.10 (-inf%)

* 이 이익 수치는 이달 중순에 제대로 장부를 정리하기 전까지 보유 현금 변동액을 단순 계산한 것이다.

수치가 모두 빨간색이라 무섭게 보이지만, 사실은 꽤 탄탄한 한 달이었다고 생각한다. 수익이 7만 달러를 넘은 달이 또 한 번 있어 기쁘다.

이익이 줄어든 건 6개월 전 원자재 대금으로 1만 1천 달러짜리 청구서가 갑자기 들어왔기 때문이다. 그래도 이렇게까지 적자를 볼 줄은 몰라 조금 놀랐다. 아마 청구서 처리 시점의 영향이 크고, 앞으로 몇 달에 걸쳐 평균적으로는 다시 플러스로 돌아올 것 같다.

메탈 케이스는 TinyPilot에 어떤 의미일까?

생산에서 여전히 병목인 부분 중 하나가 케이스다. 우리는 케이스를 3D 프린팅으로 제작하는데, 출력 속도가 느린 고급 소재를 쓰기 때문에 한 달에 약 160개 정도만 만들 수 있다. 또 매사추세츠 주정부 지원금을 이 특정 3D 프린팅 업체를 통해서만 받을 수 있어, 해당 업체에만 의존해야 하는 제약도 있다.

한 달에 200대 이상을 판매하고 있어, 곧 케이스가 생산을 제한하는 요인이 될 것이다. 판매량이 생산 능력을 밑돌 때 케이스를 미리 비축해 둔 덕분에, 앞으로 몇 달 정도는 현재 속도로 출하를 유지할 수 있다.

하드웨어 파트너가 가정용 네트워킹 장비에서 흔히 볼 수 있는 것과 비슷한 메탈 케이스를 제안했다.

메탈 소재 TP-Link TL-SG1005P 5포트 스위치 사진

TinyPilot을 이런 메탈 케이스로 바꾼다면 어떨까?

메탈 케이스로 바꾸면 비용을 줄이고 월 160개라는 생산 제약을 없앨 수 있다. 한 달에 수천 개도 만들 수 있기 때문이다.

하드웨어 파트너가 무심코 던진 한마디가 생각을 더 깊게 만들었다. 케이스를 중국에서 제조한다면, 기기 조립도 중국에서 할 수 있다는 것이었다.

처음에는 중국에서 조립한다는 아이디어가 별로 끌리지 않았다. 매사추세츠에 이미 잘 돌아가는 조립 공정이 있는데, 굳이 손댈 이유가 있을까 싶었다.

미국에서 대당 조립비가 10달러라면, 중국 업체는 1~2달러에 할 수 있을지도 모른다. 대당 9달러를 아끼자고 잘 돌아가는 공정을 바꾸는 데 따르는 위험을 감수할 가치는 없다고 생각했다.

하지만 중국에서의 제조를 생각하다 보니, 그게 TinyPilot 사무실에 어떤 변화를 가져올지 궁금해졌다. 수백 개의 케이스와 USB 케이블, 작은 고무발 같은 것들이 선반에 쌓여 있을 필요가 없어진다. 그 모든 것이 제조사에 있게 될 테니까. 그리고 원자재 자체가 제조사에 있다면, 제조사가 직접 재고를 추적하고 생산에 맞춰 자재를 재주문할 수도 있다.

그러다 문득, 과연 TinyPilot에 사무실이 꼭 필요한가 하는 질문에 이르렀다.

TinyPilot 사무실에서는 무슨 일이 일어날까?

현재 TinyPilot 사무실은 여섯 가지 핵심 기능을 수행한다.

  1. 재고 보관
  2. 기기 조립
  3. microSD 플래싱
  4. 조립된 기기 테스트(품질 보증)
  5. 고객 주문 포장 및 배송
  6. 반품 처리

사무실 없이도 TinyPilot이 이 기능들을 계속 수행할 수 있을까? 하나씩 살펴보자!

재고 보관과 기기 조립

제조를 중국으로 옮기면, 재고 관리도 사실상 중국으로 옮겨가게 된다.

잘만 된다면 재고와 제조를 아웃소싱하는 것만으로도 TinyPilot의 많은 워크플로우가 훨씬 단순해진다. 반면 문제가 생겼을 때는 제조사가 수천 마일 떨어져 있는 만큼 상황이 훨씬 심각해진다.

해외 제조사가 기기 생산을 맡게 되면, 사무실에서 하던 일이 순식간에 많이 사라진다. 완제품만 보관하면 되니 사무실 보관 공간 대부분이 비게 된다. 원자재나 반조립 부품이 아니라 완제품만 추적하면 되니 재고 관리도 훨씬 단순해진다. 마침내 우리 스택에서 가장 답답하고 품질이 낮은 소프트웨어인 재고 추적 툴 구독도 해지할 수 있을 것이다.

수입에 걸리는 시간도 줄어들어야 한다. 원자재 대부분이 중국에서 오기 때문에, 원자재를 조각조각 따로 받는 것보다 완제품으로 한 번에 받는 쪽이 관리가 훨씬 쉽다.

나는 수입 과정에서 DHL 때문에 자주 발이 묶인다. DHL은 지원 메일로 연락하기보다 소포에 적힌 전화번호로 전화하는 걸 선호하는데, 사무실 전화번호가 없으니 결국 내 휴대전화로 전화가 온다. 한 달에 배송이 두어 건 정도로 줄어들면, 직원들이 사전에 배송을 추적하고 DHL이 전화하기 전에 관세를 납부할 수 있을 정도로 충분히 관리 가능한 수준이 될 것이다. 거기에 아웃소싱 제조와 3PL 업체를 결합하면, 제조사가 제3자 풀필먼트 센터로 직접 배송할 수 있어 우리는 아예 그 과정에서 빠질 수도 있다.

단점은 제조사에 대한 신뢰를 크게 요구한다는 점이다. 반도체 부족 때문에 우리는 수개월, 길게는 수년 치 생산에 필요한 전자 부품을 비축해야 한다. 제조사가 한 부품의 1년 치 물량을 분실이라도 한다면 우리는 매우 곤란한 상황에 처한다. 정기적으로 재고 실사를 요청하고 제3자 감사관을 보낼 수는 있지만, 제조사가 “어쩌죠, 2만 달러어치 재고를 잃어버렸네요”라고 하면 내가 어떤 구제책을 가질 수 있을지 잘 모르겠다.

TinyPilot 제품은 부품을 업그레이드하거나 설계상의 문제를 발견하면서 수많은 작은 조정을 거친다. 자체 제조라면 부품이 제대로 맞지 않거나 특정 부품에 과도한 스트레스가 가해질 때 바로 알아차릴 수 있다. 해외 제조사와 함께하면 피드백 사이클이 더 느려진다. 우리가 문제를 알아차렸을 때는 이미 같은 결함을 가진 제품 수백 대가 생산되어 있을 수도 있다.

microSD 플래싱

TinyPilot 한 대마다 TinyPilot 소프트웨어를 플래싱한 microSD가 필요하다. 플래싱 이후 microSD가 우리 손을 떠나지 않기 때문에, 현재로서는 아무도 microSD를 변조하지 않았다고 확신한다. 우리와 고객 사이에서 microSD를 변조할 수 있는 사람은 배송 업체뿐인데, USPS가 악의를 품는다 해도 TinyPilot보다 더 흥미로운 대상이 많을 것이다.

microSD 플래싱 과정을 어떻게 아웃소싱해야 할지 아직 모르겠다. 우리는 커스텀 브랜드 microSD를 쓰는데, 제조사는 소프트웨어를 대신 플래싱해주겠다고 흔쾌히 말한다. 하지만 맬웨어 위험이 너무 크다고 느껴져 선뜻 맡기기가 꺼려진다. 이론적으로는 그들이 만든 결과물을 무작위로 샘플링해 내가 제공한 디스크 이미지와 일치하는지 확인할 수 있지만, 그래도 완전히 안심할 수는 없을 것이다.

TinyPilot 브랜드 microSD 사진

현재 microSD에 이미지를 플래싱해 줄 수 있는 업체를 쓰고 있지만, 여전히 우려가 있다.

우리가 직접 microSD를 플래싱한 뒤 제조사에 보내는 방법도 있다. 이는 제조사가 정직하다는 전제하에 가능한 일이지만, 어쩌면 해외에서 컴퓨터 제품을 제조하는 모든 회사가 감수하는 것과 같은 위험일 것이다.

조립된 기기 테스트

기기를 조립한 뒤에는 현재 모든 기능이 정상 작동하는지 수동으로 테스트한다.

현재 테스트 환경은 느리고 복잡해서 제조사에 넘기기 어렵다. 새로 조립한 TinyPilot을 타깃 컴퓨터에 연결한 뒤, 다른 컴퓨터의 웹 브라우저로 TinyPilot 웹 인터페이스에 접속해야 한다. 그런 다음 직원이 TinyPilot이 부팅될 때까지 기다렸다가, 타깃 컴퓨터의 화면을 제대로 캡처하고 키보드·마우스 입력을 정확히 전달하는지 확인해야 한다.

현재 테스트 환경을 손으로 그린 스케치

TinyPilot의 현재 QA 과정에는 노트북 두 대와 복잡한 케이블 연결이 필요하다.

이 과정을 자동화하는 것은 오랫동안 할 일 목록에 있었지만, 자동화에는 하드웨어 엔지니어링 리소스가 필요하고, 그게 지금 가장 부족한 자원이다.

이렇게 글로 적다 보니 일반 하드웨어와 소프트웨어 엔지니어링 리소스만으로도 해결할 수 있겠다는 생각이 든다. Raspberry Pi로 TinyPilot 테스트 장비를 만들 수 있을 것이다.

Raspberry Pi는 HDMI 출력과 USB 입력을 갖추고 있다. Raspberry Pi가 테스트 러너 역할을 하도록 프로그래밍하면, TinyPilot이 Pi의 HDMI 출력으로부터 영상을 제대로 캡처하고 있는지 확인할 수 있다. Pi가 TinyPilot에 키 입력을 보내라고 지시했을 때, 그 키 입력이 TinyPilot을 거쳐 Pi의 USB 입력으로 그대로 돌아오는지 검증할 수도 있다. 이 테스트를 통해 새로 조립된 Voyager 2의 모든 연결이 정상이고 올바르게 작동한다는 확신을 얻을 수 있을 것이다.

간소화된 테스트 환경을 손으로 그린 스케치

커스텀 스크립트가 담긴 Raspberry Pi에 연결하면 Voyager 2의 QA 과정을 자동화할 수 있을 것이다.

그렇게 되면 테스트 장치에 TinyPilot Voyager 2가 검증을 통과했는지 알려주는 외부 표시기만 있으면 된다. 제조사에 Pi와 네트워크 스위치를 건네주고 그쪽에서 테스트하는 방법을 교육할 수 있을 만큼 충분히 단순한 테스트 환경이 될 것이다.

이는 아웃소싱 방법을 고민하는 것만으로도, 실제로 아웃소싱하지 않더라도 이점을 얻을 수 있는 좋은 사례다.

고객 주문 포장 및 배송

워크플로우 전체를 통틀어 주문 이행이야말로 현시점에서 아웃소싱하기 가장 쉬운 부분이다.

우리는 항상 배송 준비가 된 박스들을 대기열로 가지고 있어, 사무실에 보관하는 대신 3PL 업체에 맡길 수 있다.

골판지 배송 상자에 담긴 Voyager 2 사진

사무실에는 미리 조립된 Voyager 2를 배송 준비 박스에 담아 보관하고 있다.

풀필먼트를 아웃소싱하면 이미 유연한 근무 시간이 더욱 유연해진다. 현재 TinyPilot 사무실은 주 6일, 하루 몇 시간씩 인력을 배치한다. 3PL 업체를 쓰면 주문이 원활히 처리될 만큼 충분한 기기를 생산하기만 한다면 특정일에 굳이 사무실에 있을 필요가 없어진다.

박스와 포장재가 작은 사무실에서 많은 공간을 차지하므로, 물리적 공간도 확보할 수 있다.

또 다른 이점은 고객에게 더 다양한 배송 옵션을 제공할 수 있다는 점이다. 현재는 각 배송사와 조율하는 복잡성 때문에 USPS와 DHL만 제공한다. 3PL 업체는 이미 주요 배송사들의 일일 수거 체계를 갖추고 있어 어떤 주요 배송사든 쉽게 지원할 수 있다.

배송 속도가 약간 빨라질 수도 있지만, TinyPilot이 이미 주문의 90%를 1영업일 이내에 발송하고 있어 그 효과는 크지 않다.

단점은 3PL 업체가 복잡성을 높인다는 점이다. 지금은 고객이 이메일을 보내면 지식이 풍부한 TinyPilot 직원이 직접 응대하므로 고객 서비스 경험이 매우 뛰어나다. 그 직원이 고객의 기기를 직접 조립하거나 포장·발송했을 가능성도 높다. 또 배송 상태를 확인하고 주문을 취소하거나 반품을 처리할 권한도 가지고 있다.

3PL 업체가 처리한 주문에 문제가 생기면, TinyPilot 고객 지원 담당자가 3PL 업체의 담당자에게 확인해야 하고, 그 담당자가 또 다른 사람에게 확인해야 하는 식으로 단계가 늘어난다.

반품 처리

사무실 없이 반품을 어떻게 처리해야 할지 모르겠다.

3PL 업체에 TinyPilot 기기의 리퍼비시를 맡길 만큼 신뢰하지는 않지만, 그렇다고 반품된 제품을 그냥 폐기하게 하고 싶지도 않다.

어쩌면 사서함 같은 별도의 반품 주소를 둘 수도 있을 것이다. 직원들이 우체국에서 반품 제품을 수령해 리퍼비시한 뒤, 리퍼 제품으로 판매하도록 3PL 업체에 다시 보내는 방식이다.

아직 3PL 업체와 이야기해보지 않았으니, 어쩌면 그쪽에서 더 나은 해결책을 가지고 있을지도 모른다.

모든 것을 아웃소싱하면 어떻게 될까?

사무실의 모든 기능을 제3자 업체나 장소에 구애받지 않는 대안으로 성공적으로 옮길 수 있다고 가정하면, 나와 회사에는 어떤 의미가 있을까?

장소에 구애받지 않게 된다

현재 우리는 물리적 사무실에 묶여 있다. 사무실을 없앤다면 모든 TinyPilot 직원은 이론상 어디서든 일할 수 있게 된다.

시간에 덜 구애받게 된다

풀필먼트나 제조가 없어지면, 시간에 민감한 책임은 고객 지원뿐이다.

직원 부재에 더 잘 대응할 수 있게 된다

지난 몇 달 동안 현지 직원 중 몇 명이 며칠씩 자리를 비운 적이 몇 번 있었다. 예정된 휴가도 있었고, 병가도 있었다.

TinyPilot은 충분한 중복 인력을 갖추고 있어 고객에게 영향을 주지 않고 운영을 이어갈 수 있었지만, 다른 부분에는 부담이 되었다.

제조와 풀필먼트를 아웃소싱한다면, 직원 부재에 훨씬 쉽게 대처할 수 있을 것이다. 더 이상 풀필먼트의 핵심 경로에 있지 않으므로 주문 배송을 유지하려고 허둥댈 필요가 없어진다.

현지 직원의 역할 변화

아웃소싱의 과제 중 하나는 기존 현지 직원들의 일자리에 미치는 영향이다. TinyPilot 사무실을 없애고 제조와 풀필먼트를 아웃소싱한다면, 현재 현지 팀이 하는 일의 약 75%가 사라지게 된다.

현지 팀은 훌륭한 일을 하고 있으며, 사무실을 없애더라도 회사 내에서 계속 역할을 할 수 있도록 하고 싶다.

현지 팀은 계속해서 고객 서비스 업무를 맡게 될 것이다. 아웃소싱 덕분에 판매 규모를 키울 수 있을 가능성이 높고, 고객이 늘어나면 고객 서비스 수요도 늘어날 것이다.

현지 직원들은 아웃리치 업무도 더 많이 맡을 수 있다. 과거에 대형 고객에게 먼저 연락해 제품 경험을 물어봤을 때 긍정적인 결과를 얻은 적이 있다. 시간 제약 때문에 자주 하지는 못했지만, 시간이 확보된다면 그 분야에 더 투자할 수 있을 것이다. 마찬가지로 현지 직원들이 더 많은 리뷰어나 유튜버와 협력하면 마케팅에도 도움이 될 것이다.

행정 절차가 줄어든다

현재 TinyPilot에서 법적으로 ‘직원’으로 분류되는 사람은 현지 스태프뿐이다. 나머지 모든 사람은 독립 계약자다. 현지 스태프는 현장에서 근무하기 때문에 미국 고용법상 계약자가 아닌 직원으로 분류되어야 한다.

TinyPilot 사무실을 없앤다면 직원들을 계약자로 전환할 수 있다. 이 말은 “빨리 복리후생을 끊고 싶다!”처럼 들릴 수도 있겠지만, 모두에게 이득이 되는 방식으로 전환할 수 있다고 생각한다. 내 목표는 보상을 줄이는 것이 아니라 스트레스와 서류 작업을 줄이는 것이다.

직원에 대한 급여 지급과 계약자에 대한 지급 사이에는 복잡성에서 큰 차이가 있다. 거의 매달 매사추세츠 주정부 기관 어딘가에서 원천징수나 준수 요건에 대해 알 수 없는 내용의 공문을 보내오는데, 내가 무엇을 해야 하는지, 혹시 해야 할 일이 있기는 한 건지 전혀 명확하지 않다.

컴플라이언스를 돕고 세금을 제대로 납부하도록 도와주는 서비스들이 있지만, 특별히 잘하는 곳을 찾지 못했다. 정부 공문을 급여 서비스인 Gusto에 전달하면, 그냥 정부에 직접 전화해서 알아봐야 한다고 말한다. 그리고 주정부 기관에 전화하면 ARS를 거쳐 내가 받은 공문에 대해 아무것도 모르는 사람들에게 연결되고, 결국 그냥 무시하고 그게 맞는 일이길 바라는 수밖에 없게 된다.

계약자는 서류 작업이 훨씬 적다. 직원일 때와 동등하거나 더 나은 수준이 되도록 보수를 조정할 수 있고, 모두에게 행정 절차가 줄어든다.

비용이 줄어든다

아웃소싱은 비용도 줄여주지만, 나에게는 가장 덜 흥미로운 이점이다.

사무실이 없어지면 임대료(월 550달러), Gusto 급여 서비스(월 80달러), 재고 추적(월 59달러), 산재보험(월 30달러), 임차인 보험(월 10달러)을 더 이상 낼 필요가 없다.

인건비도 이론상 대당 몇 달러 정도 내려간다. 중국 제조사는 우리 인건비의 일부만으로 기기를 만들 수 있고, 3PL 업체는 규모의 경제 덕분에 우리보다 더 저렴하게 주문을 처리할 수 있기 때문이다.

유연성과 민첩성이 줄어든다

모든 것을 아웃소싱하면 ‘정상 경로’는 최적화되지만, 예외를 관리하거나 실수를 바로잡기는 더 어려워진다.

과거에는 시각적 결함을 줄이고 사용성을 개선하기 위해 제품을 빠르게 반복 개선할 수 있었다. 모든 것을 아웃소싱하면 피드백 루프가 느려진다. 여러 고객이 문제를 보고하기 전까지는 문제를 인지하지 못할 수도 있다. 그 시점에는 이미 파이프라인에서 문제 지점을 지나 고객이나 창고로 향하는 기기가 수백 대에 이를 수도 있다.

오류율이 높아진다

아웃소싱하면 오류율은 거의 확실히 높아질 것이다. 현재 우리의 오류율은 0에 가깝다. 지난 18개월 동안 약 2,500건의 주문 중 고객이 잘못된 상품을 받았다거나 제조 오류가 있었다고 알려온 경우는 두세 건에 불과했다.

숙련된 제조·풀필먼트 업체라 해도 우리가 자체적으로 달성한 오류율을 따라오기는 어려울 것 같다. 그래도 현재 오류율은 고객을 만족시키는 데 필요한 수준보다 훨씬 낮다고 생각한다. 고객 경험에 큰 영향을 주지 않으면서 0.3% 정도의 오류율은 감수할 수 있다.

아웃소싱은 복잡성을 높일까, 낮출까?

아웃소싱의 주된 목표는 복잡성을 줄이는 것이다. 여전히 주당 관리 시간을 20시간으로 줄이려고 노력 중이다.

가장 큰 걱정은 제조와 풀필먼트가 TinyPilot에서 관리가 가장 적게 드는 부분이라, 아웃소싱을 해도 되찾을 시간이 없다는 점이다. 반복 가능한 워크플로우를 구축하는 데는 초기에 많은 노력이 들었지만, 그 이후로는 거의 순항해 왔다.

제조와 풀필먼트에 내가 개입해야 하는 경우는 부품 부족이나, 나에게까지 에스컬레이션될 만큼 특이한 배송 문제 같은 경우다. 외부 업체로 옮겨도 그런 문제에는 여전히 내가 관여해야 할 것이고, 회사 경계를 넘어 관리하기는 더 어려워질 것이다.

동시에 외부 업체와 일하는 것이 제조와 풀필먼트를 위한 자체 솔루션을 계속 유지하는 것보다 당연히 쉬워야 할 것 같다는 느낌도 든다. 사무실이 원활하게 돌아가고는 있지만, 사무실과 그에 딸린 모든 프로세스를 유지하는 것만으로도 상당한 정신적 부담이 있다.

지금이 복잡성 측면에서 국소 최솟값에 있기를 바라고 있다. 프로세스를 전환하는 마찰로 인해 복잡성이 일시적으로 증가하겠지만, 궁극적으로 아웃소싱이 더 낮은 복잡성 상태로 이끌어 줄 것이라고 생각한다.

복잡성이 프로세스를 다듬으며 낮아지다가 아웃소싱 시점에 급격히 증가한 뒤, 아웃소싱이 안정화되면서 현재보다 더 낮은 수준으로 떨어지는 과정을 보여주는 그래프

사이드 프로젝트

안녕 Playwright, 잘 가 Cypress

2018년 웹 개발 밋업에서 Gleb Bahmutov가 시연하는 것을 본 이후로 Cypress라는 E2E 테스트 도구의 팬이었다. 시간이 지나면서 Playwright라는 Microsoft의 Cypress 경쟁 도구에 대한 이야기를 점점 더 많이 듣게 되었다.

1년 전에 Playwright를 써봤을 때는 크게 인상적이지 않았고, 그다지 감명받지 못했다. 최근 Hacker News 스레드에서 모두가 Playwright가 Cypress를 넘어섰다는 데 동의하는 것을 보고 Playwright를 다시 한 번 써보기로 했다.

이제 Hacker News의 의견에 동의하지 않을 수 없게 되었다. 실험 삼아 PicoShare의 모든 E2E 테스트를 Playwright로 다시 작성했다. 거의 모든 면에서 Playwright가 Cypress보다 다루기 쉽다는 것을 알았다.

Cypress에서 Playwright로 포팅하는 과정에 대한 더 긴 글을 준비 중이지만, 요약하자면 이제 웹 앱의 E2E 테스트에는 Cypress보다 Playwright를 추천하고 싶다.

마무리

무엇을 해냈나?

  • TinyPilot Pro 2.5.0을 출시했다.
  • 8월에 Support Engineer 직무에 지원한 모든 분에게 개별적으로 답변을 드렸다.
  • 두 번째 TinyPilot Support Engineer를 채용했다.

배운 점

  • 단순히 업무를 어떻게 아웃소싱할지 고민하는 것만으로도 기존 워크플로우에서 개선 기회를 발견할 수 있다.

다음 달 목표

  • 새로운 서포트 엔지니어들의 온보딩을 진행한다.
    • 첫 번째 엔지니어는 80%, 두 번째 엔지니어는 50%의 문의를 독자적으로 답변할 수 있도록 하는 것이 목표다.
  • 두 번째 메탈 케이스 시제품 제작을 시작한다.
  • 3PL 업체 세 곳에 연락해 풀필먼트 전환 과정에 대해 논의한다.

이 글은 muse-spark-1.2-contributor 모델을 사용해 번역했습니다.

댓글