Outsider's Dev Story

Stay Hungry. Stay Foolish. Don't Be Satisfied.
RetroTech 팟캐스트 44BITS 팟캐스트

기술 뉴스 #186 : 21-11-16

웹개발 관련

  • Twilio Console: A Large Scale Migration to Jamstack : Twilio의 개발자 인터페이스(Twilio의 고객 개발자가 이용하는 콘솔)인 Twilio Console을 Jamstack으로 마이그레이션 과정을 설명한다.(영어)

    • 2008년부터 사용한 Twilio 콘솔은 SPA였고 30개의 제품에 쓰였고 30개의 팀이 독립적으로 유지보수를 했다.
    • 마이크로 프론트엔드 아키텍처는 기존 PHP와 Scala 애플리케이션과 새로운 React 애플리케이션이 같이 존재할 수 있어서 도움이 되었다.
    • 서버가 있는 미국을 거쳐야 했으므로 글로벌 사용자는 1~2 이상 느려지는 경우가 많았다. 또한 페이지가 바뀔 때 페이지 전체를 다시 불러와야 하는 경우도 있었다.
    • Twilio가 더 커지면서 Jamstack 아키텍처를 선택하면서 성능 개선과 나아진 개발 워크플로우를 목표로 했다.
    • Jamstack으로 마이그레이션된 새로운 콘솔은 Netlify로 호스팅 되는 모노레포 Jamstack 애플리케이션이다.
    • Deploy Preview로 협업이 많이 증가했고 이전보다 50배 자주 배포를 할 수 있게 되었다.
    • 글로벌 사용자에게 TTFB가 이전에는 1~2초였지만 이제는 30~60ms가 되어 30배 성능이 개선되었다고 한다.
  • What's new in PageSpeed Insights : 최근 PageSpeed Insights의 UI를 개편하면서 개선한 내용을 설명한 글이다. 성능의 필드 데이터와 실험실 데이터를 명확히 이해할 수 있도록 구분해서 보여주고 모바일/데스크톱의 성능을 구분해서 보여주는 UI 등이 변경되었다.(영어)

그 밖의 개발 관련

  • Make your monorepo feel small with Git’s sparse index : 모노레포처럼 아주 큰 Git 저장소의 경우 성능을 개선하기 위해 sparse-checkout을 사용할 수 있는데 이때 파일의 일부만 사용하게 되지만 Git 인덱스는 여전히 워킹디렉토리의 파일 정보를 다 가지고 있게 된다. 2백만 개의 파일이 있는 모노레포의 경우 Git 인덱스만 해도 180MB나 될 정도로 성능에 영향을 주게 되는데 Git 인덱스도 필요한 파일만 사용하도록 --sparse-index를 사용할 수 있다. 이렇게 사용하면 아주 큰 모노레포에서도 작은 저장소인 것처럼 Git 명령어를 빠르게 사용할 수 있다. 이 명령어를 추가하게 된 배경과 성능 비교를 자세히 보여주고 있다.(영어)
  • Expanding Google Summer of Code in 2022 : 매년 오픈소스 프로젝트를 선정해서 학생들이 기여할 수 있는 기회를 만들어 주는 GSoC(Google Summer of Code)가 지난 17년간 112개국 18,000명의 대학생이 746개 오픈소스 조직의 17,000 멘토와 협업할 기회를 만들었다. 2022년부터는 대학생만이 아니라 18세 이상의 모든 사람이 참여할 수 있게 되고 프로젝트도 175시간 이하의 중간 사이즈 프로젝트와 350시간 이하의 대형 프로젝트도 지원하게 바뀌었다고 한다.(영어)
  • Swift API Design Guidelines(한국어) : Swift API Design Guidelines 공식문서를 홍성호 님이 한국어로 번역한 사이트이다.(한국어)

인프라 관련

  • Durable Objects — now Generally Available : Cloudflare에서 CDN 엣지에서 실행되는 워커 간에 상태를 관리하는 stateful serverless 서비스인 Durable Objects를 작년에 발표했는데 이번에 모두가 사용할 수 있도록 공개되었다.(영어)

볼만한 링크

  • 애자일 테스팅 회고 : 원티드의 QA팀에서 애자일 테스팅을 시도하면서 결과를 검증해 본 과정을 정리한 글이다. 애자일 프로세스를 도입했음에도 만족스러운 결과를 얻지 못해서 선언문에 나온 대로 "얼마나 만족스러운 소프트웨어를 얼마나 빠르게 고객에게 전달하느냐"를 생성성과 품질 관점에서 보려고 집중하고 Jira의 티켓을 좀 더 세밀하게 분석해서 싸이클 타임과 환경별 DDP(Defect Detection Percentage)를 분석해서 프로젝트의 진행 상황을 파악할 수 있게 했다. 이후 폭포수와 개발 주기 중 테스트를 함께하는 애자일을 비교하기 위해 시뮬레이션을 한 결과 오히려 애자일 스프린트가 더 오래 걸리는 것으로 보여 더 자세히 살펴보니 폭포수로 진행했을 때 QA 단계에서 발견되는 버그가 3배 높다는 것을 알게 되어 이를 반영하자 폭포수가 애자일 스프린트보다 훨씬 오래 걸리는 것으로 파악되었다고 한다.(한국어)

IT 업계 뉴스

  • HashiCorp S-1 : Terraform, Consul, Vault 등을 만드는 HashiCorp, Inc.가 상장을 위해 증권거래소에 S-1 문서를 제출했다.(영어)
  • Thank you, GitHub : GitHub이 Microsoft에 인수되고 GitHub의 새 CEO가 되었던 Nat Friedman이 GitHub CEO에서 물러나고 다음 CEO는 현재 CPO인 Thomas Dohmke가 될 것이라고 밝혔다. Nat은 GitHub에서 물러나서 다음 도전을 한다고 한다.(영어)
  • YouTube is removing the dislike count on all videos across its platform : YouTube가 모든 비디오에서 싫어요의 숫자를 보여주지 않기로 했다고 한다. 이는 크리에이터가 "싫어요"로 괴롭힘당하는 것을 보호하기 위한 것이고 싫어요 버튼 자체가 사라지는 것은 아니다.(영어)
  • Security software company McAfee acquired for $14 billion : 보안 업체인 McAfee가 140억 달러에 투자그룹에 인수되었다고 한다.(영어)

프로젝트

  • Amazon EKS Distro : Amazon이 EKS에서 운영하는 Kubernetes 배포판을 오픈소스로 공개했다.
  • Krustlet : Kubernests에서 WASM을 실행하기 위한 Rust로 작성된 Kubelet

버전 업데이트

2021/11/16 08:45 2021/11/16 08:45