CS 공부, 면접 준비 말고 어디에 쓰이나요?

"CS공부는 너무 지겨운데 정말 어디에 써먹을 수 있을까요..?"


취업/이직을 준비하는 개발자분들께 자주 듣는 이야기 중 하나가 “CS 공부는 하는데 어디에 써먹어야할지 모르니 동기부여도 안되고 막막하다..” 인데요!


IT서비스 기업과 빅테크 기업으로 취업/이직 준비를 하시는 분들을 위해 CS 지식의 활용처를 알 수 있는 꼬리질문 컨텐츠를 만들어보았습니다 🔥


이번 편에서는 네트워크의 기본적인 내용에 대한 얘기와 그 지식을 활용하여 어떤 문제들을 해결할 수 있는지를 소개하고 있습니다.


많은 분들께 도움이 되길 바랍니다!


---


💡 내용의 구성

  • 테크 기업에서 물어보는 정도로 깊이있게 질문을 구성했습니다.

  • 내 지식으로 체화하려면 생각을 많이 해야합니다. 스스로 찾아보고 생각하실 수 있도록 일부러 답은 적지 않은 것도 있습니다. 대신 찾아보시는데에 가이드가 될 수 있도록 검색 키워드를 첨부했습니다.

  • 깊이있게 접근하다보면 컴퓨터 사이언스 지식이 나오는데요, 자바 편이지만 이와 같은 이유로 컴퓨터 사이언스 관련 질문도 나옵니다.


💡 읽는 방법

  • 꼬리 질문 형태로 질문하다보니 질문을 글머리 기호를 사용하여 단계별 형태로 구성했습니다. 단계별로 질문을 확인하면서 읽어보세요.

  • 답을 보기 전에 질문에 대해 스스로 생각해보고 답을 도출해 보세요.

  • 질문 키워드가 없는 것은 질문 자체가 키워드인 경우가 있습니다. 구글에 비슷하게 검색해 보세요.


---


01. 본질적인 질문

네트워크 통신은 성능을 상당히 저하시키는 작업이라고 알려져 있습니다. 왜 그럴까요?

  • Q. 빛의 속도는 1초에 지구를 몇 바퀴 돌 수 있을까요?

    • 지구 반대편에 있는 미국에 있는 서버와 TCP 통신을 하려면 우리는 어느 정도의 성능 저하를 감수해야할까요?

      • TCP로 통신을 하려면 어떤 과정들을 거치게되나요?

        • 3way handshake → 요청 → 응답 → 4way handshake

          • 기본적으로 총 9번의 통신을 해야합니다. 즉 지구를 4바퀴 반 돌아야하며 0.5ms 이상이 소요될겁니다.

  • Q. 여러분이 지금 사용하고 있는 인터넷의 대역폭은 얼마인가요? 즉 초당 어느 정도의 데이터를 주고받을 수 있나요?

    • 우리가 개발하면서 네트워크를 통해 주고받는 데이터는 어떤것들이 있을까요?

      • 웹, 모바일에서 사용되는 이미지, 폰트, 동영상

      • 웹, 모바일에서 서버에 요청하는 JSON 데이터

      • 서버에서 데이터베이스와 주고받는 데이터

      • 마이크로서비스에서 다른 서비스를 호출할 때 주고받는 데이터

    • 위와 같은 데이터를 주고받을 때 데이터의 용량이 커지면 어떤 문제가 발생할까요?

      • 주어진 대역폭보다 큰 데이터를 주고받으면 지연이 발생합니다.


02. 위의 이론을 활용해 해결할 수 있는 문제

  • 웹페이지를 만들었는데 접속했을 때 페이지가 뜨는 속도가 느립니다. 빠르게 하려면 어떻게 해야할까요?

    • 폰트, 이미지들의 파일 용량이 크면 네트워크로 전송하는데에 시간이 오래 걸려 성능이 저하될 수 있습니다.

      • Image Compressor 를 검색해보시면 이미지의 용량을 줄일 수 있습니다.

      • 이미지나 동영상의 사이즈를 줄이는 것도 방법입니다. 대부분의 상황엔 초고화질의 이미지가 필요 없기 때문입니다.

      • 폰트도 저용량버전이 있습니다.

      • 개발자 도구를 켜셔서 네트워크 탭을 보시면 어떤 것들이 용량이 큰지 확인하실 수 있습니다.


---


이외에 멘토님께서 아래 질문에 대해서 꼬리 질문을 확인해 보고 싶으시다면 전체 인터뷰를 확인해 보세요!

  • 지그재그, 에이블리와 같은 쇼핑몰 모아보기 서비스를 만들려합니다. 그럼 아주 많은 쇼핑몰들을 크롤링해야하는데 크롤링 속도를 어떻게 튜닝할 수 있을까요?

  • 서버를 운영중인데 유저가 많아져 대용량 트래픽을 처리해야합니다.


➡️ 아티클 이어서 보기 (https://f-lab.kr/blog/cs-interview-network)

[기술 면접 대비] CS는 어디에 써먹을 수 있을까요? - 네트워크편

F-Lab : 상위 1% 개발자들의 멘토링

[기술 면접 대비] CS는 어디에 써먹을 수 있을까요? - 네트워크편

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2025년 1월 17일 오전 7:49

 • 

저장 8조회 322

댓글 0