react 썸네일react

2025-05-01

목차

  1. 미라클 모닝과 모바일 게임 이야기
  2. 실시간 채팅과 가성비 좋은 서버리스 옵션
  3. BPFdoor 해킹 도구 및 보안 이슈
  4. 머신러닝과 이상치 처리
  5. 디자인 시스템 관리 방법
  6. three.js 프로젝트 공유
  7. 네트워크 포트와 HTTP 접근 문제
  8. 면접팁⚡
  9. 링크🔗

1. 미라클 모닝과 모바일 게임 이야기

  • 아침에 눈 뜨자마자 모바일 게임 '마비노기'를 즐긴다는 이야기
  • '마비노기'에서 걸린 상태 이상인 '패럴라이즈(마비)'를 유머러스하게 언급
  • 개발자들도 일상 속 소소한 즐거움을 공유함

2. 실시간 채팅과 가성비 좋은 서버리스 옵션

  • 실시간 채팅을 구현할 때 가성비 좋은 서비스에 대한 질문이 많음
  • Firebase의 Realtime Database와 Cloud Functions가 인기 있지만 비용 증가 우려도 있음
  • 서버 직접 구축(socket.io) vs 서버리스 비교:
    • socket.io는 직접 구현 시 서버 사양 부담이 큼, 특히 동시 접속자 500명 이상일 때 서버 비용 상승
    • Firebase는 편리하지만 실시간 데이터 전송량에 따라 비용 발생
  • 용도에 따라 1대1 채팅, 그룹 채팅, 대규모 실시간 통신 각각에 맞는 솔루션을 선택하는 게 중요함
  • '전화'라는 깜짝 답변도 있었음, 실시간 소통 도구로서의 전화 언급

서버리스는 서버 관리 없이 클라우드 공급자가 서버, 운영체제 유지보수를 담당하는 모델
Firebase Realtime Database는 데이터를 실시간으로 동기화해주는 NoSQL 데이터베이스로, 앱에서 실시간 채팅 구현에 자주 사용됨
데이터 전송량/읽기 수가 많아지면 요금이 급증할 수 있으므로 사용량 모니터링 필수

3. BPFdoor 해킹 도구 및 보안 이슈

  • BPFdoor(BCPF 커널 패킷 필터링 관련 루트킷) 활용해 로컬 해킹을 시도해 봄
  • SKT 사건에 BPFdoor 관련 보안 문제가 있었고, 이를 계기로 보안 의식이 향상되길 바란다고 함
  • 보안 도구나 취약점 활용은 이해를 높이기 위한 공부 차원에서 중요

BPFdoor는 BPF(eBPF: extended Berkeley Packet Filter)를 악용하는 루트킷으로서
시스템 콜 인터셉트, 네트워크 패킷 조작 등에 쓰임
보안 사고 이후 보안 취약점을 식별하고 대응 방안을 마련하는 데 활용됨

4. 머신러닝과 이상치 처리

  • 신규 입사자 평균 성과가 높아 괴물 신입사원이 입사했다는 농담
  • 머신러닝에서 이상치를 어떻게 배제/처리하는지에 대한 언급
  • 이상치는 데이터에서 다른 값들과 크게 벗어나 분석을 방해하는 값으로, 제대로 처리하지 않으면 학습 성능 저하 원인이 됨

5. 디자인 시스템 관리 방법

  • 여러 사이트에 비슷한 디자인 컴포넌트를 적용할 때
  • NPM 패키지로 디자인 시스템을 배포해 각 레포에서 받아오는 방법 소개
  • Github 서브모듈, 서브트리 방식도 대안으로 언급
  • 모노레포(monorepo) 방식을 통한 통합 관리도 가능
  • 디자인 시스템 구축은 쉽지 않지만 장기적으로 유지보수에 효율적임

6. three.js 프로젝트 공유

  • three.js 라이브러리로 3D 연못 모델링 프로젝트 제작
  • 화면 기록 영상을 공유하며 사용성 피드백 요청
  • three.js는 웹에서 3D 그래픽을 구현할 수 있게 도와주는 자바스크립트 라이브러리임

7. 네트워크 포트와 HTTP 접근 문제

  • 포트(예: 21433)를 열었는데 HTTP 접속이 되지 않는 문제 발생
  • 포트를 열었다고 해서 HTTP 프로토콜 자체가 자동으로 통하는 것은 아님
  • 공유기 환경이라면 포트 포워딩 설정이 반드시 필요
  • 접속하는 네트워크 환경(내부망, 공인망 등)에 따라 접속 가능 여부가 달라짐
  • IP 대역(예: 사설 IP 192.xxx) 접근 제한 가능성 존재
  • 문제 해결을 위해서 서버가 놓인 네트워크 환경과 접속 환경 모두 파악해야 함

포트 포워딩(Port Forwarding): 공유기 또는 방화벽에서 외부 포트 요청을 내부 서버 IP와 포트로 전달하는 기능
포트를 열었다는 것은 네트워크 트래픽이 해당 포트로 들어오는 것을 허용한다는 뜻이며, 실제 서비스하려면 방화벽, 공유기 설정, 서버의 프로그램 동작 상황을 모두 체크해야 함

면접팁⚡

  • 실시간 채팅 구현 시 서버리스 vs 직접 서버 구축 비교: 각각의 장단점을 명확히 알고 설명할 수 있어야 함
  • BPF/eBPF 관련 보안 지식: 보안 취약점과 대응 경험은 보안 분야 면접에서 강점
  • 디자인 시스템 관리 방법: 모노레포, 서브모듈 사용 경험은 프론트엔드/풀스택 개발자에게 높은 평가
  • 네트워크 기본 지식: 포트 개념, 포트 포워딩, 방화벽 동작 이해는 백엔드 및 인프라직무 필수

링크🔗

#리얼타임채팅#서버리스#BPFdoor#보안#머신러닝#디자인시스템#threejs#네트워크#포트포워딩#개발팁