Outsider's Dev Story

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

기술 뉴스 #213 : 23-01-01

웹개발 관련

  • 프론트엔드 엔지니어 커리어 로드맵: 주니어를 위한 3가지 전문성 트랙 : 프론트엔드 엔지니어의 커리어 성장과 관련해서 여러 사람과 얘기해 보면서 생각을 정리한 글이다. 로드맵에 대한 글이나 다이어그램이 꽤 있는데 이 글은 오랫동안 고민하고 공부한 티가 날 정도로 잘 정리가 되어 있다. 탁월한 엔지니어는 "좋은 코드를 짜고" "작업의 현재 가치를 극대화하고" "데이터 기반으로 의사결정을 하고" "동료의 효과적 의사결정을 도우며" "꾸준히 학습"한다. 탁월한 프론트 엔지니어를 웹 특화, 제품 특화, 운영 특화로 나누어서 어떤 특징이 있고 어떤 역량이 필요한지를 정리한 부분이 흥미롭다.(한국어)
  • 웹어셈블리에서 자바스크립트를 빠르게 실행하는 방법 : Making JavaScript run fast on WebAssembly의 번역 글이다. 브라우저 밖에서 자바스크립트를 실행하려면 JS 엔진을 WASM 모듈로 배포할 수 있고 Firefox에서 사용하는 SpiderMonkey를 사용해서 실행되도록 했는데 웹어셈블리는 JIT 컴파일을 할 수 없어서 인터프리터만 사용할 수 있기 때문에 속도가 느렸다. 그럼에도 필요한 상황이 있는데 iOS나 스마트 티브이 등 JIT가 제한된 환경이나 서버리스 환경 등이 있다. JS 엔진은 크게 초기화와 런타임 작업이 있는데 Wizer라는 도루를 통해 Wasm에서의 JS 초기화 시간을 13배 빠르게 하고 AOT로 스루풋을 개선하는 등의 작업을 설명하는데 WASM으로 어떤 시도를 하는지 살펴볼 수 있다.(한국어)

그 밖의 개발 관련

  • Copilot Internals : GitHub Copilot이 너무 유용해서 어떻게 동작하는지 궁금해서 리버스 엔지니어링을 해보고 정리한 글이다. 크게 보면 VS Code의 익스텐션인 클라이언트가 있고 여기서 보낸 프롬프트를 모델로 보내게 된다. Copilot 모델에 보낼 프롬프트를 만들 때 접두사와 접미사를 통해 다른 파일에서 비교할 정보를 보내서 정확도를 올리고 있고 모델을 호출할 때도움이 되지 않는 완성은 호출되지 않도록 하고 어떤 텔레메트리가 수집되는지를 살펴봤다. 분석하면서 Copilot-Explorer 도구를 만들어서 분석 도구를 직접 사용해 볼 수 있다.(영어)
  • OpenJDK Proposes Project Galahad to Merge GraalVM Native Compilation : OpenJDK에서 GraalVM 커뮤니티 에디션의 코드베이스 중 일부를 OpenJDK에 합치도록 코드네임 Galahad 프로젝트를 제안했다. GraalVM은 성공적인 프로젝트이지만 OpenJDK와는 독립된 프로젝트로 진행되고 Graal 컴파일러와 관련된 몇 가지 JEP는 OpenJDK 코드베이스에 들어왔었다. Galahad는 JDK 20을 첫 기준으로 삼고 있고 GraalVM JIT 컴파일러에 기여해서 이를 C2에 통합하는 데 집중할 것이라고 한다.(영어)
  • BENCHMARKING RUBY 2.6 TO 3.2 : 이번 크리스마스에 Ruby 3.2.0이 나오면서 이전 버전들과 3.2.0 및 3.2.0에서 안정화된 YJIT의 성능 비교를 한 글이다. YJIT를 사용한 3.2.0이 꽤 좋은 성능을 보여주고 있다.(영어)

인프라 관련

  • A beginner’s guide to OpenTelemetry : 애플리케이션의 트레이싱 데이터를 추적할 수 있게 해주는 Open Telemetry에 관해 설명한다 OpenTelemetry는 특정 벤더에 의존하지 않고 어떤 언어에서도 사용할 수 있고 스토리지를 선택적으로 사용할 수 있다. OpenTelemetry를 쓰려면 SDK로 애플리케이션을 인스트루먼트 해야 하는데 자동 인스트루먼트(auto-instrumentation)을 사용하면 코드를 거의 수정하지 않고 사용할 수 있고 수동 인스트루먼트는 특정 코드를 앱에 추가해야 하므로 더 효과적으로 요구사항에 맞출 수 있다. 생성된 데이터는 OpenTelemetry 컬렉터에 보내지는데 리시버, 익스포터, 스토리지 등 OpenTelemetry의 기본적인 구성 요소에 관해 알 수 있다.(영어)

볼만한 링크

  • Stackoverflow 2022 Developer Survey : Stackoverflow에서 매년 진행하는 개발자 설문조사로 7만여 명의 개발자가 응답했다. 응답자의 프로필뿐 아니라 기술, 업무 환경, 커뮤니티 선호도 등을 볼 수 있다.(영어)

    • 온라인 학습이 60%에서 70%로 증가했고 어린 나이의 응답자는 온라인 리소스를 더 많이 사용하고 있다.
    • 작년에는 Git이 개발자가 되는 주요 도구였는데 올해는 Docker가 55%에서 69%로 증가하면서 주요 도구가 되었다.
    • Rust는 7년째 가장 사랑받는 언어로 87%의 개발자가 계속 사용하고 싶다고 응답했다.
    • Phoenix가 가장 사랑받는 웹 프레임워크로 Svelte의 자리를 차지했고 Angular.js는 3년째 가장 두려운 기술이고 React는 5년째 가장 원하는 기술로 뽑혔다.
    • Docker와 Kubernetes가 가장 사랑받고 원하는 도구 1, 2위로 뽑혔다.
    • Clojure는 가장 연봉을 많이 받는 언어로 뽑혔고 Chef 개발자도 가장 연봉을 많이 받는 것으로 나타났지만 동시에 Chef는 가장 두려운 도구로도 뽑혔다.
    • 85%의 개발자가 최소한 부분적으로 원격 근무를 하는 것으로 나타났다.
  • 무엇이 Tinder를 폭발적으로 성장시켰을까? : Tinder의 성장 과정을 설명한 글로 2015년에 작성된 글을 다시 올린 것이라 2015년 상황을 감안해서 읽어보는 게 좋다. Tinder는 사실 SXSW 이후에 알게 되었는데 이 글을 통해서 match.com의 모회사인 IAC에서 시작되어 일반 스타트업과는 달랐고 여성을 유입시켜서 남성을 유입시키고 대학 클럽 시스템을 이용해서 입소문을 통해서 성장하게 되었다고 한다. 스와이프와 게이미피케이션 요소를 통해서 데이팅 앱의 새로운 경험을 제공하고 이후 데이팅 목적 외에도 Tinder를 사용할 수 있는 기능을 제공했다고 한다. 시간이 좀 지난 글이지만 흥미로운 글이다.(한국어)
  • 슬랙이 1년만에 1조 가치의 회사가 된 10가지 비결 : 이 글도 원문은 지워졌고 2015년에 작성된 글이다. 7년이 지난 슬랙의 성공을 이미 알고 있어서 더 재미있게 읽을 수 있었다. Slack을 만들었을 당시에는 업무용 그룹 채팅의 개념이 별로 없었기 때문에 시장을 직접 만들어야 했고 제품이 아니라 혁신을 판다고 강조했다. 핵심 특징을 완벽하게 만드는 데 집중해서 오히려 사용자는 약점을 느끼지 못하게 만들었고 초기 사용자로부터 피드백을 받아서 이를 빠르게 처리하려고 노력하면서 입소문이 나기 시작했다고 한다. Slack의 매직 넘버는 2,000으로 2,000번 이상의 메시지를 보낸 사용자는 계속 사용한다는 부분도 재미있었다.(한국어)
  • Introducing passkeys in Chrome : Chrome이 M108부터 passkey를 지원한다. passkey를 이용하면 비밀번호 없이 passkey를 지원하는 서비스에 로그인할 수 있다.(영어)
  • 해외 연사 비자 지원하기 : UbuCOn Asia 2022를 국내에서 진행하면서 해외 입국자의 비자를 지원해 준 과정을 정리한 글이다. 콘퍼런스 참석에 맞는 단기 일반(C-3-1) 비자로 참석자들이 비자를 받을 수 있도록 준비한 서류가 정리되어 있다. 흔치 않은 경험이라 비슷한 일을 해야 할 때 꽤 도움이 될 글이다.(한국어)

IT 업계 뉴스

  • Okta Code Repositories : GitHub이 12월 초 Okta 저장소에 의심스러운 접근이 있다고 경고를 보냈고 조사해본 결과 Okta 저장소가 복사되었음을 확인했다. 서비스에 접근했던 기록은 없고 저장소에는 서비스 보안에 영향을 주는 내용은 없었으므로 서비스는 안전하다고 결론을 내렸다. 이 침해는 Okta Workforce Identity Cloud(WIC) 저장소에만 영향을 주고 Autho0에는 영향을 주지 않는다.(한국어)
  • LastPass reveals just how bad that August breach was. It was bad. : 지난 8월 암호 관리 서비스인 LastPass가 해킹당했고 당시 고객데이터나 암호 저장소에 접근했다는 증거는 없다고 발표했다. 이후 조사를 통해 지난 12월 22일 해커가 백업된 고객의 금고 데이터에 접근할 수 있었다고 밝혔다. 여기에는 사용자 이름, 주소 등 암호화된 데이터가 포함되지만, 사용자의 마스터 암호가 없으면 해독할 수는 없지만 무차별 암호 대입은 시도할 수 있다고 한다.(영어)
  • Meta acquires Luxexcel, a smart eyewear company : Meta가 3D 프린팅을 이용한 스마트 안경 회사인 Luxexcel을 인수한다고 한다.(영어)

프로젝트

  • Tamagui : React Native와 Web에서 사용할 수 있는 UI Kit, 1.0 릴리스 참고
  • Yorkie : 협업 편집 애플리케이션을 만들 때 사용할 수 있는 CRDT를 사용하는 오픈소스 도큐먼트 스토어인 Yorkie의 PaaS
  • GitHub Contributions Chart Generator : GitHub 유저네임을 입력하면 가입 이후 전체 기간동안의 컨프리뷰션 그래프를 모아서 만들어준다.

버전 업데이트

2023/01/01 22:44 2023/01/01 22:44