가상 면접 사례로 배우는 대규모 시스템 설계 기초 3장 - 시스템 설계 면접 공략법 2024.08.04 23:28 카테고리 없음 효과적 면접을 위한 4단계 접근법 1단계 - 문제 이해 및 설계 범위 확정 시스템 설계 시 질문하여 요구사항과 가정들을 분명히 하자. 엔지니어가 가져야 할 가장 중요한 기술 중 하나는 올바른 질문을 하는 것. 만약 시스템 설계를 한다면 어떤 질문들을 만들어야 할까? 예제 뉴스 피드 시스템 설계하라는 요구를 받았다고 한다면 다음 질문을 해볼 수 있을것이다. 모바일 앱과 웹 앱 가운데 어느 쪽 지원 -> 둘 다 지원 가장 중요한 기능은 무엇인가요?-> post, 친구들과 피드 기능을 볼 수 있어야 한다. 정렬 기준 -> 시간 역순으로 정렬 최대 몇명의 사용자 -> 5000명 트래픽의 규모는? -> dau 천만명 포스트에서 지원하는 파일 양식은 무엇인가요? -> 이미지나 비디오 같은 미디어 파일 포스트 2단계 - 개략적인 설계안 제시 및 동의 구하기 설계안에 대해 최초 청사진을 제시하고 의견을 구한다. 화이트보드나 종이에 핵심 컴포넌트를 포함하는 다이어그램을 그린다. 이 최초 설계안이 시스템 규모에 관계된 제약사항들을 만족하는 지를 개략적으로 개선 예제 뉴스 피드 시스템을 설계하라 피드 발행-> 사용자가 포스트를 올리면 관련된 데이터가 캐시/데이터베이스에 기록되고 해당 사용자의 친구 피드에 뜬다. 피드 생성-> 어떤 사용자의 뉴스 피드는 해당 사용자 친구들의 포스트를 시간 역순으로 정렬해서 만든다. 3단계 상세 설계 시스템에서 전반적으로 달성해야 할 목표와 기능 범위 확인 전체 설계의 개략적 청사진 마련 해당 청사진에 대한 면접관 의견 듣기 상세 설계에서 집중해야 할 영역 확인 예제 피드 발행 뉴스 피드 가져오기 4단계 마무리 시스템의 병목구간, 개선 가능한 지점을 찾아내라 주문할 수 있다. 오류가 발생하면 무슨 일이 생기는지 (서버 오류, 네트워크 장애 등) 따져보는것이 좋을거 같다. 운영 이슈 관리 - 메트릭은 어떻게 수집하고 모니터링은 어떻게 할건지 하지 말아야할것 요구사항이나 가정들을 분명히 하지 않은 상태에서 설계를 제시하지 마라. 소통을 주저하지 말자. 침묵 속에 설계를 진행하지 마라. 시간 배분 1단계 - 문제 이해 및 설계 범위 확정 (3m - 10m) 2단계 - 개략적 설계안 제시 및 동의구하기 (10m - 15m) 3단계 - 상세 설계 (10m - 25m) 4단계 - 마무리 (3m - 5m) 공유하기 URL 복사카카오톡 공유페이스북 공유엑스 공유 게시글 관리 구독하기꽥블로그 댓글 공유하기 다른 글 댓글 댓글을 사용할 수 없습니다. 이 글 공유하기 구독하기 구독하기 카카오톡 카카오톡 라인 라인 트위터 트위터 Facebook Facebook 카카오스토리 카카오스토리 밴드 밴드 네이버 블로그 네이버 블로그 Pocket Pocket Evernote Evernote 다른 글 다른 글 더 둘러보기
댓글을 사용할 수 없습니다.