Period Link to heading

2024-03-03 ~ 2024-03-09

What is Sustaining Engineering? Link to heading

  • 지속 엔지니어링이란 무엇인가요?
  • 저자는 코딩을 직업으로 삼고 싶다고 생각해서 컴퓨터 공학을 공부했지만, 깊이 들어가 보면 아마 그냥 내부 작동 방식을 알고 싶었던 것 같음
  • 올해 여름에 오라클의 자바 플랫폼 그룹에서 세 번째 해를 보내게 될 것
  • JVM 지속 엔지니어링 팀에 합류할 때 그들은 코드를 작성하지 않고 코드를 유지할 것이라고 말함
  • 저자는 “지루하지 않을까요?” 라고 물었음
  • 지금까지 배운 것은 다음과 같음
    • 전 세계가 JVM에 의존하고 있다는 것
    • 전 세계에는 “60억 개 이상의 자바 가상 머신이 실행"되고 있으며, 예상하지 못한 곳에서도 실행되고 있음
    • JVM이 해야 할 일을 하지 않으면 실제로 많은 고통이 발생
      • 자동차 공장이 멈추고, 병원이 수술실을 예약할 수 없음
      • 은행이 서비스를 중단하고, 사람들이 시간에 지불을 받지 못함
    • 이러한 일들은 매우 드물게 발생하지만, 그럴 때마다 우리가 대응
    • 지속 엔지니어링에서는 기본 문제를 찾아내는 동시에 고객이 문제를 해결하도록 도움
  • 몇 년 전 OpenJDK는 “빠른 혁신을 선호하는 개발자"와 “안정성을 선호하는 기업"이 있다고 인정하여 시간 기반의 “팁 앤 테일” 출시 모델로 전환
  • 팁은 매 6개월마다 나오는 최신 기능 출시이며, 테일은 LTS 출시
  • 저자의 업무는 후자에 대해 관심을 가지는 것
  • 안정성을 제공하는 것은 아무것도 안 하는 것과는 다르다는 것이 드러남
  • 암호 알고리즘은 물론 운영 체제와 컴파일러도 변경됨
  • 취약점과 버그가 정기적으로 발견됨
  • 따라서 지속 엔지니어링은 이러한 변화에 대응하여 자바가 가치 있는 안정성을 제공하는 것을 의미
  • 이상적으로는 문제가 발생하기도 전에 문제를 해결하고, 우리가 추적을 해야 할 필요가 없습니다.
  • 저자에게 지루한 날은 아직 없었음

Leadership Is A Hell Of A Drug Link to heading

  • 이 글은 기업 내에서의 리더십에 대한 비판적인 시각을 담고 있음
  • 글쓴이는 회사에서 강제로 참석해야 하는 회의에 대한 불만과, 리더십팀의 자만과 비현실적인 기대를 비판
  • 이 회의에 대한 일련의 비판을 통해, 리더십이 자신들의 영역에 대한 명확한 이해와 현실적인 전략보다는 개인적인 영향력의 증진에 더 관심이 있는 경우가 많다고 지적
  • 또한, 리더십의 실수로 인해 직원들의 시간과 에너지가 낭비되고 있음을 지적하며, 현재의 업무환경과 필요성에 맞춘 리더십의 변화가 필요하다고 주장
  • 글의 마지막 부분에서는 리더십이 단순히 개인적인 영향력 증진을 넘어서 실질적인 변화와 성장을 이끌어내는 역할을 해야 한다는 점을 강조

Uber Builds Scalable Chat Using Microservices with GraphQL Subscriptions and Kafka Link to heading

  • 웹 페이지의 핵심 내용은 Uber가 GraphQL Subscriptions와 Kafka를 사용하여 확장 가능한 채팅 시스템을 구축
  • 이전에 사용하던 WAMP 프로토콜을 대체하여 신규 아키텍처를 도입한 것으로, 이는 신뢰성, 확장성, 관측성, 디버그성 등의 문제를 해결하고 기존 솔루션을 유지하는 데 어려움을 겪고 있던 기술적 부채를 해결하기 위해 이루어짐
  • 또한, Uber는 라이더, 운전자, 이터, 큐리어, 상인 등 다양한 고객을 대상으로 하는 대규모 고객 베이스를 가지고 있으며, 라이브(전화, 채팅) 및 비 라이브(InApp 메시징) 지원 채널을 제공
  • 라이브 채팅 채널은 고객 문의를 효과적으로 처리하고 비용 효율적으로 다루기 위한 중요한 역할을 하며, 이를 위해 신뢰성, 내결함성 및 비용 효율성을 높이기 위한 몇 가지 개선 사항이 구현됨

References Link to heading