Outsider's Dev Story

Stay Hungry. Stay Foolish. Don't Be Satisfied.

기술 뉴스 #138 : 19-11-16

웹개발 관련

  • How Concurrent React changes the game for data-heavy UI : React에 실험적 기능으로 들어가 있는 Suspense와 Concurrent 모드를 사용하면 어떻게 컴포넌트 로직에서 데이터 로딩을 분리할 수 있는지를 설명하는 글이다. 설명하는 예제도 Suspense와 Concurrent 모드를 어떻게 사용하면 좋을지 이해하기 쉽게 구성해서 보여주고 있다. 다만 이 기능을 아직 초기 실험 기능이라서 많이 바뀔 것이므로 실제로 사용할 수는 없지만, 글쓴이는 이 기능이 아주 강력할 것이라고 기대감을 표현하고 있다.(영어)
  • The Maturing of QUIC : 지금은 HTTP/3가 된 QUIC이 어떻게 발전해 왔는지를 설명한 글이다. Google이 만들어서 자사 서비스에 적용했던 gQUIC에 기반해서 IETF 내에서 Bar-BoF라는 이름으로 공개 토론을 시작하고 이후에 공식 워킹그룹으로 발전하게 된다. Google이 했던 실험 결과를 바탕으로 많은 토론이 오간 후 핸드쉐이크, 패킷 넘버 암호화, 패킷 헤더, 커넥션 ID 등이 어떤 논의를 통해 지금의 모양이 되었는지를 설명하고 있다.(영어)
  • Get started with Web Bundles : 웹사이트 전체를 하나의 바이너리 파일로 만들 수 있는 Web Bundles를 소개하고 있다. .wbn 확장자를 가지는 이 파일은 HTML, CSS, 이미지, JavaScript를 모두 하나의 파일에 넣을 수 있고 오프라인에서도 실행할 수 있다. 아직 크롬에서 해결되지 않은 이슈들이 있지만 오프라인 상태에서 친구와 웹번들 게임을 하는 시나리오를 설명하고 go/bundle CLI로 웹번들을 만드는 방법을 설명하고 있다.(영어)
  • Using the Chrome UX Report to look at performance in the field : 보통 CrUX로 알려진 Chrome UX Report를 활용하는 방법을 설명한 글이다. 이 데이터는 동의한 실제 사용자의 데이터를 모은 것으로 최소 입력 지연시간, DOM 콘텐츠 로딩시간 등 성능과 관련된 많은 데이터가 있고 전세계 사용자의 이런 데이터가 궁금하다면 Google Data Studio로 볼 수 있는 CrUX Dashboard나 PageSpeed Insights 혹은 BigQuery로 조회해서 볼 수 있다.(영어)
  • The state of JavaScript frameworks security report 2019 : 오픈소스 보안 업체인 Snyk에서 JavaScript 프레임워크의 보안 보고서를 공개했다. Angular와 React에서 보안취약점이 얼마나 발견되었고 각 프로젝트가 어떻게 다루고 있는지를 정리했고 뒷부분에는 Vue.js, Bootstrap, jQuery의 보안 상태도 정리되어 있다.(영어)
  • Announcing Gatsby Cloud : 웹사이트 프레임워크인 Gatsby에서 클라우드 서비스를 공개했다. Gatsby Cloud에서는 쉽게 사이트를 생성할 수 있는 Quickstart와 실시간 미리 보기, 300여 개의 CMS와 연동 기능을 제공하고 있다.(영어)

그 밖의 개발 관련

  • Let's Create a Simple Load Balancer With Go : Go 언어로 직접 라운드 로빈으로 동작하는 로드 밸런서를 만드는 방법을 설명하는 글이다. 라운드 로빈으로 리버스 프록시를 구현하면서 살아있는 서버에만 요청을 보낼 수 있도록 작성하면서 Atomic 오퍼레이션, Mutex 등 Go 언어에 관해 설명하고 있다.(영어)
  • Go.dev: a new hub for Go developers : Go 개발자를 위한 새로운 사이트 Go.dev가 공개되었다.(영어)
  • GitHub Action을 사용해 새로 올라온 전월세 방 목록 받아보기 : 전월세 방을 알아보기 위해서 "피터팬의 좋은방 구하기"라는 사이트를 매일 들어가 보는 번거로움을 줄이기 위해 사이트를 크롤링할 수 있는 스크립트에 조건을 넣고 GitHub Action으로 원하는 조건의 매물을 메일로 받아보게 만드는 과정과 코드가 나와 있다. 현실적인 문제를 적절한 기술해 해결한 부분이 재미있다.(한국어)
  • You Cannot Submit an Electron 6 (or 7) App to the Apple Store : Electron 6으로 만든 앱이 Apple한테서 비공개 API를 사용하고 있다며 스토어 등록을 거절당했다고 한다.

인프라 관련

  • LINE에서 Kafka를 사용하는 방법 - 1편, 2편 : Line에서 Kafka를 적극적으로 도입해서 지금은 데이터 허브의 역할을 하고 있다고 한다. 이렇게 시스템의 핵심적인 역할로 Kafka를 운영하면서 겪은 장애의 원인을 찾아가는 과정을 설명하고 있고 아직 3편은 올라오지 않았다.(한국어)
  • EC2, Fargate 약정 할인 AWS Savings Plans 발표 : AWS에서 비용을 아낄 수 있는 Reserved Instances 외에 더 간단한 조건으로 비용을 아낄 수 있는 Savings Plans이 발표되었다. 여기에는 Copmute Savings Plans와 EC2 Instance Savings Plans가 있는데 시간당 사용금액과 약정 기간에 따라 할인율이 달라지는 방식이다.(한국어)
  • Jaeger Graduates CNCF, Sees a Future Without Native Jaeger Clients : 분산 트레이싱 Jaeger가 CNCF 졸업 프로젝트가 되었다.(영어)
  • Red Hat Introduces open source Project Quay container registry : Red Hat이 CoreOS의 Quay 컨테이너 레지스트리를 Red Hat Quay라는 이름으로 새롭게 오픈소스로 공개했다.(영어)

볼만한 링크

  • The State of the Octoverse : GitHub에서 사용자들의 활동을 분석해서 작년부터 공유하는 Octoverse가 새로 업데이트되었다. 2019년에 GitHub 기준으로 사용자, 학생, 기업의 사용이 얼마나 증가했고 어느 나라가 많이 성장하고 있는지 등 다양한 통계를 볼 수 있다.(영어)
  • 웹 푸시 알림 서비스, 샌디 : 8개월간 웹 푸시 알림 서비스 창업을 하고 그만두는 과정을 정리한 글이다. 웹 푸시의 가능성을 믿고 시작해서 열심히 개발해서 다양한 플랫폼 지원 및 부가 기능을 개발하였지만, 너무 좋은 제품에 집착해서 고객의 목소리를 신경 쓰지 못하고 제품 완성에만 집중하다가 결국 타이밍과 고객을 놓쳐서 정리하게 되었다고 얘기하고 있다.(한국어)
  • 창업 3주년 회고 : 소프트웨어 교육 업체인 코드스쿼드가 창업 3주년을 정리했다. 그동안 참여한 지원자/수강생, 커밋, PR 수 등을 시각화하고 NEXT에 이어서 코드스쿼드에서 교육 커리큘럼을 만들면서 어떤 교육을 해야 하는지 목표가 무엇인지 등에 대한 고민이 담겨있다.(한국어)

IT 업계 뉴스

  • GitHub for mobile : GitHub에서 모바일 앱을 내년 초에 릴리스할 것이라고 밝혔다. 이 사이트에서 iOS/Android 앱의 베타 신청을 할 수 있다.(영어)
  • Re-Licensing Sentry : Sentry BSD-3 라이센스에서 BSL(Business Source License)로 바꾼다고 발표했다. 이 라이센스는 Sentry 서비스를 상업적으로 제공할 수 없고 코드는 36개월 뒤에는 Apache 2.0으로 바뀐다. Sentry를 오픈소스로 개발된 제품으로 사용자가 자유롭게 사용하도록 하고는 싶지만, Sentry를 가져다가 Sentry와 같은 서비스를 제공하는 것은 막고 싶었기 때문에 이 라이센스를 선택했다고 한다. 여전히 회사에서 센트리를 사용하는 데는 아무런 제약이 없다.(영어)
  • GitHub Archive Program : GitHub이 후세에 남기기 위해 2020년 2월 2일 모든 공개 저장소의 스냅숏을 북극 땅 250m 아래 저장한다는 프로그램을 공개했다.(영어)
  • SoftBank-backed Yahoo to merge with Line app : 야후 재팬의 45% 지분을 가진 소프트뱅크와 Line의 73% 지분을 가진 네이버가 협상을 해서 야후 저팬과 라인을 운영할 새로운 회사를 출범시킬 예정이라고 한다.(영어)
  • JEP 369: Migrate to GitHub : OpenJDK도 Mercurial에서 Git으로 갈아타자는 JEP 357에 이어 GitHub으로 이동하자는 JEP 369가 올라왔다.(영어)
  • MS, 오픈JDK 자바 생태계 공식 합류 : Microsoft가 오라클과 컨트리뷰터 계약(OCA)을 맺고 OpenJDK 생태계 참여자고 합류하게 되었다.(한국어)
  • Facebook Pay : Facebook이 결제 서비스를 공개했다.(영어)
  • Introducing Our New Company Brand : 페이스북이 새로운 회사 로고를 공개했다.(영어)

프로젝트

  • Visual Studio Online : Visual Studio를 서버에 설치해서 온라인으로 이용할 수 있는 Visual Studio Online이 공개되었다. 유료서비스다.
  • SeriesCI : CI를 위한 타임 시리즈 서비스.
  • draw.io : 온라인 다이어그램 사이트인 https://www.draw.io/의 소스코드다.
  • Postwoman : Postman 같은 API 테스트 도구.
  • Cardboard SDK : Google에서 공개한 카드보드의 VR을 만들 수 있는 SDK.

버전 업데이트

2019/11/16 20:35 2019/11/16 20:35

AWS 솔루션 아키텍트 어소시에이트 자격증 취득

지난 6월에 아래와 같은 트윗을 올렸었다.

AWS를 쓰다 보니 아는 기능 위주로만 쓰고 있고 실제로 잘 쓰고 있는지에 대한 의문도 좀 들어서 찬찬히 공부를 좀 해봐야겠다는 생각이 들었다. 개발자가 대부분 그렇듯이 자격증에 대해서 어떤 의미를 주고 있지는 않았는데 그냥 공부한다고 하면 막연하니까 자격증을 목표로 하면 내가 잘 모르거나 관심 없는 기능도 보고 전체적으로 파악할 수 있지 않을까 생각했다. 어쨌든 AWS에서 이런 부분은 알아야 한다고 정리해 놓은 시험일 테니까...

그렇게 트윗만 올려놓고는 아무것도 하지 않고 시간을 보내고 있는데 7월 중순쯤에 AWS 자격증 모각공을 하지 않겠냐고 연락이 왔다. 저번에 올린 트윗 봤다고...

AWS 모각공

각자 아는 분들을 더 모아서 6명이서 매주 토요일 점심때 2시간씩 모각공(모여서 각자 공부)을 시작했다. 초반에 목표 등을 공유하고 AWS Certified Solutions Architect - Associate 2019 강의를 결제해서 각자 공부하면서 3달여를 모각공하고 있다.

일단 트윗올리고 못했던 것처럼 공부해야지 하면서도 시간이 안 나서 제대로 못 하고 있었기 때문에 모각공할 때도 AWS 공부를 이 시간에 할 생각이었다. 따로 공부는 안 하고 모각공에서만 공부를 하니까 오히려 부담이 없어서 계속할 수 있었던 것 같다. 나는 영상으로 된 강의를 보는 게 익숙지 않아서 2시간씩 보고 있으면 중간에 자주 딴짓을 하면서 집중력을 잃어버리지만 그래도 모각공은 최대한 빠지지 않고 참석하려고 했다.

AWS 자격증

결론부터 말하면 나는 Solutions Architect Associate 자격증의 시험을 봤다. 처음에는 AWS를 수년간 했다는 허세에 여러 AWS 자격증 중에서 프로페셔널을 볼 생각이었는데 막상 자세히 보니 꽤 어려워 보였고 금액도 비싸서 위험도가 커보였다. 그래서 솔루션 아키텍트 어소시에이트로 낮추었다.(지감 생각하면 잘한 듯...) 자격증의 구조와 시험에 대해서는 같이 모각공을 했던 nacyot님의 AWS 솔루션 아키텍트 어소시에이트 자격증 취득 후기를 보면 아주 자세히 나와 있다.

처음에는 강의를 다 듣고 할 생각이었는데 다른 분들이 꽤 빨리 시험을 보고 합격을 하면서 나도 10월 중에 시험을 보게 되었다. 원래는 모각공 날짜를 계산해서 진도를 다 뺀 후에 시험을 보려고 한 것인데 실제로는 70% 정도까지 밖에 진도를 빼지 못했다.

Solutions Architect Associate 디지털 뱃지

시험을 봤는데 다행히 합격을 했다. 강의를 들을 때는 저런 수치를 다 외워야 하나? 너무 어려운데? 같은 생각을 많이 했는데 실제 시험을 훨씬 합리적인 질문만 ㅎ하여서 실제로 사용해 보고 어느 정도 파악하고 있다면 볼 수 있는 정도로 맞춰진 것 같다. 나는 한국어 번역을 믿지 못할 것 같아서 영어로 시험 봤는데 한국어로 선택해서 영어 지문을 볼 수 있다고 한다. 영어 지문을 수십 문제씩 읽어 있으면 좀 지루해지기 시작한다. 나는 100분 정도 시험을 보고 나왔던 것 같다.

결과적으로 자격증은 땄지만, 원래는 공부해서 지식을 쌓는 게 궁극적인 목표였는데 실제로는 공부는 별로 안 하고 자격증만 땄다. 아직 모각공은 계속하고 있는데 일단 한 단계는 넘었으니 다음 공부 목표를 어떻게 할지는 아직 고민 중이다. 자격증에서 어떤 이점을 얻으려고 딴 게 아니라서... 다음 AWS 서밋에 가면 자격증 소지자 라운지는 이용할 수 있겠다.

합격 여부는 시험이 끝나면 바로 알 수 있고 자격증이나 상세 결과는 며칠 뒤에 메일로 알림이 온다.

Solutions Architect Associate 자격증

자격증은 이렇게 생겼고 PDF로 다운로드받을 수 있다.

Solutions Architect Associate 시험 결과

시험 결과는 100점부터 1000점 사이를 받게 되는데 720점이 넘어야 합격인데 나는 804점을 받았다. 시험 볼 때는 컴퓨터가 너무 안 좋아서 지문을 읽는데 눈이 아플 지경이었는데(처음 시작할 땐 너무 느려서 멈춘 줄...) 그래도 고민되는 문제는 체크했다가 나중에 볼 수 있고 풀지 않은 문제도 제출 전에 체크할 수 있게 되어 있다.

Solutions Architect Associate 시험의 영역별 결과

시험 영역별로 어떤 부분이 기준에 맞고 어디가 부족한지가 나온다. 나는 "Define Operationally Excellent Architectures" 부분은 부족하다는 결과가 나왔다.

2019/11/15 13:47 2019/11/15 13:47