면접을 위한 CS 전공지식 노트
도서+사은품 또는 도서+사은품+교보Only(교보굿즈)
15,000원 미만 시 2,500원 배송비 부과
20,000원 미만 시 2,500원 배송비 부과
15,000원 미만 시 2,500원 배송비 부과
1Box 기준 : 도서 10권
로그아웃 : '서울시 종로구 종로1' 주소 기준
이달의 꽃과 함께 책을 받아보세요!
1권 구매 시 결제 단계에서 적용 가능합니다.
해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.
패키지
북카드
키워드 Pick
키워드 Pick 안내
관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.

CS 전공지식 습득과 면접 대비, 이 책 한 권이면 충분하다!
개발자 면접에서 큰 비중을 차지하는 CS(Computer Science) 전공지식! 디자인 패턴부터 자료 구조까지 알아야 할 게 너무 많은데, 어떻게 준비해야 할까? 이 책은 디자인 패턴, 네트워크, 운영체제, 데이터베이스, 자료 구조 등 면접에 필요한 CS 전공지식을 모두 담고 있다. 200여 개의 그림과 코드로 이론을 자세히 설명하고, 실제 라이브러리에서 사용된 디자인 패턴 등으로 실무 활용법을 함께 다뤄 이론과 실무를 놓치지 않고 학습할 수 있도록 구성했다. 또한, 중요한 내용은 깊게, 덜 중요한 내용은 핵심만 설명하며, 책 곳곳에 70여 개의 용어 풀이도 담고 있다. 마지막으로 구글, 네이버, 카카오 등 탑티어급의 회사에 합격한 저자의 경험을 기반으로 한 포트폴리오 작성법과 챕터별 예상 질문, 면접 준비 노하우도 알려준다. 개발자 면접을 준비하거나 더 나은 개발자가 되기 위해 CS 전공지식을 배우고 싶다면 이 책으로 시작하자.
작가정보

AI 핀테크 스타트업, 어비스의 리드 개발자이자 설립자이다. 이전에는 네이버의 로그 플랫폼 쪽에서 일했으며, 대한민국 공항, 공군에서 쓰는 실시간 모니터링 시스템을 만들었다. 국방부 등에서 군 SW 발전에 기여한 공로로 참모총장상, 사령관상, 단장상을 수상했으며 카카오 프런트엔드 챌린지 6위, 스타트업 해커톤 1위, 백준 알고리즘 상위 1%의 실력을 보유하고 있다. 자바스크립트 테스트 프레임워크 Mocha.js의 기여자(contributor)이며 『실시간 모니터링 시스템을 만들며 정복하는 MEVN』(비제이퍼블릭, 2021)을 집필했고, 인프런에서 ‘10주 완성 C++ 코딩 테스트’ 강의를 진행하고 있다.블로그: https://blog.naver.com/jhc9639유튜브: https://www.youtube.com/c/kundol/
목차
- 1장. 디자인 패턴과 프로그래밍 패러다임
1.1 디자인 패턴
__1.1.1 싱글톤 패턴
__1.1.2 팩토리 패턴
__1.1.3 전략 패턴
__1.1.4 옵저버 패턴
__1.1.5 프록시 패턴과 프록시 서버
__1.1.6 이터레이터 패턴
__1.1.7 노출모듈 패턴
__1.1.8 MVC 패턴
__1.1.9 MVP 패턴
__1.1.10 MVVM 패턴
1.2 프로그래밍 패러다임
__1.2.1 선언형과 함수형 프로그래밍
__1.2.2 객체지향 프로그래밍
__1.2.3 절차형 프로그래밍
__1.2.4 패러다임의 혼합
예상 질문
2장. 네트워크
2.1 네트워크의 기초
__2.1.1 처리량과 지연 시간
__2.1.2 네트워크 토폴로지와 병목 현상
__2.1.3 네트워크 분류
__2.1.4 네트워크 성능 분석 명령어
__2.1.5 네트워크 프로토콜 표준화
2.2 TCP/IP 4계층 모델
__2.2.1 계층 구조
__2.2.2 PDU
2.3 네트워크 기기
__2.3.1 네트워크 기기의 처리 범위
__2.3.2 애플리케이션 계층을 처리하는 기기
__2.3.3 인터넷 계층을 처리하는 기기
__2.3.4 데이터 링크 계층을 처리하는 기기
__2.3.5 물리 계층을 처리하는 기기
2.4 IP 주소
__2.4.1 ARP
__2.4.2 홉바이홉 통신
__2.4.3 IP 주소 체계
__2.4.4 IP 주소를 이용한 위치 정보
2.5 HTTP
__2.5.1 HTTP/1.0
__2.5.2 HTTP/1.1
__2.5.3 HTTP/2
__2.5.4 HTTPS
__2.5.5 HTTP/3
예상 질문
3장. 운영체제
3.1 운영체제와 컴퓨터
__3.1.1 운영체제의 역할과 구조
__3.1.2 컴퓨터의 요소
3.2 메모리
__3.2.1 메모리 계층
__3.2.2 메모리 관리
3.3 프로세스와 스레드
__3.3.1 프로세스와 컴파일 과정
__3.3.2 프로세스의 상태
__3.3.3 프로세스의 메모리 구조
__3.3.4 PCB
__3.3.5 멀티프로세싱
__3.3.6 스레드와 멀티스레딩
__3.3.7 공유 자원과 임계 영역
__3.3.8 교착 상태
3.4 CPU 스케줄링 알고리즘
__3.4.1 비선점형 방식
__3.4.2 선점형 방식
예상 질문
4장. 데이터베이스
4.1 데이터베이스의 기본
__4.1.1 엔터티
__4.1.2 릴레이션
__4.1.3 속성
__4.1.4 도메인
__4.1.5 필드와 레코드
__4.1.6 관계
__4.1.7 키
4.2 ERD와 정규화 과정
__4.2.1 ERD의 중요성
__4.2.2 예제로 배우는 ERD
__4.2.3 정규화 과정
4.3 트랜잭션과 무결성
__4.3.1 트랜잭션
__4.3.2 무결성
__4.4 데이터베이스의 종류
__4.4.1 관계형 데이터베이스
__4.4.2 NoSQL 데이터베이스
4.5 인덱스
__4.5.1 인덱스의 필요성
__4.5.2 B-트리
__4.5.3 인덱스 만드는 방법
__4.5.4 인덱스 최적화 기법
4.6 조인의 종류
__4.6.1 내부 조인
__4.6.2 왼쪽 조인
__4.6.3 오른쪽 조인
__4.6.4 합집합 조인
4.7 조인의 원리
__4.7.1 중첩 루프 조인
__4.7.2 정렬 병합 조인
__4.7.3 해시 조인
예상 질문
5장. 자료 구조
5.1 복잡도
__5.1.1 시간 복잡도
__5.1.2 공간 복잡도
__5.1.3 자료 구조에서의 시간 복잡도
5.2 선형 자료 구조
__5.2.1 연결 리스트
__5.2.2 배열
__5.2.3 벡터
__5.2.4 스택
__5.2.5 큐
5.3 비선형 자료 구조
__5.3.1 그래프
__5.3.2 트리
__5.3.3 힙
__5.3.4 우선순위 큐
__5.3.5 맵
__5.3.6 셋
__5.3.7 해시 테이블
예상 질문
6장. 포트폴리오와 면접
6.1 포트폴리오
__6.1.1 첫 문장이 중요하다
__6.1.2 숫자로 말하라
__6.1.3 기술의 숙련도를 나눠서 표기하라
__6.1.4 리드미를 잘 작성하라
__6.1.5 오픈 소스 컨트리뷰터가 되자
__6.1.6 블로깅을 하자
6.2 면접
__6.2.1 꼬리에 꼬리를 무는 질문
__6.2.2 대답을 바꾸지 말자
__6.2.3 모르는 것은 모르는 것
__6.2.4 압박을 버텨라
__6.2.5 공식 사이트를 봐라
__6.2.6 또렷한 발음으로
__6.2.7 장점, 단점, 차이는 필수다
__6.2.8 업무를 예측하라
__6.2.9 체크리스트를 만들어 준비하라
__6.2.10 인성 면접
책 속으로
필자는 IT 대기업 면접을 준비할 때 “탄탄한 CS 전공지식이 필요하다.”라는 말을 듣고 수많은 전공 서적과 전공 강의들을 보며 CS 전공지식을 쌓으려고 노력했습니다. 그때는 무엇이 필요하고 필요 없는 지식인지 알 수 없어 다 외우려고 했지만 정말 많은 양이었기 때문에 너무 힘들었습니다. 또한, 인터넷에 있는 CS 전공지식들은 몇 개씩은 틀리기 마련이라 공부하다가 헷갈려서 다시 찾아보는 등의 어려움도 겪었습니다.
이 책은 그러한 문제점들을 해결하는 책입니다. 한 권만으로 CS 전공지식의 전반적인 내용을 학습할 수 있으며, 더 나아가 실제로 개발할 때 필요한 CS 전공지식을 담았습니다.
이 책의 장점은 다음과 같습니다.
ㆍ 면접에 나올 법한 CS 전공지식을 포함한 CS 전공지식의 전반을 다룹니다.
ㆍ 필자의 실제 개발 경험이 녹아 있어 이론에만 치우친 CS 전공지식이 아닌 이론과 실무가 아우러진 전공지식을 선사합니다.
ㆍ 필자의 수많은 면접 경험을 바탕으로 한 면접 노하우가 책 곳곳에 녹아 있습니다.
ㆍ 구글, 네이버, 카카오 등 탑티어급의 회사에 합격한 필자의 포트폴리오가 소개되며 포트폴리오 작성 노하우를 알려줍니다.
각 장은 다음과 같은 내용을 담고 있습니다.
ㆍ 1장에서는 디자인 패턴을 다룹니다. 이론뿐만 아니라 실제로 어떻게 디자인 패턴이 쓰이고 있는지를 서술했습니다. 예를 들어 ‘전략 패턴은 passport 라이브러리에서 사용된다’처럼 실무에서 어떻게 사용되고 있는지를 구체적으로 알려줍니다. 예시 코드로는 자바, 자바스크립트 두 가지의 언어로 구성했고, 코드의 난이도를 최대한 낮추면서도 디자인 패턴을 잘 표현하도록 노력했습니다.
ㆍ 2장에서는 네트워크를 다룹니다. 네트워크의 전반적인 내용을 설명하며 네트워크에서 중요한 IP, HTTP 부분은 따로 빼서 좀 더 자세하게 설명하여 중요한 부분은 깊게, 중요하지 않은 부분은 핵심만 설명합니다.
ㆍ 3장에서는 운영체제를 다룹니다. 운영체제의 핵심 요소 중 하나인 시스템콜이나 커널을 조금 더 쉽게 설명하고자 노력했으며, 프로세스와 스레드를 중심으로 설명합니다.
ㆍ 4장에서는 데이터베이스를 다룹니다. ERD나 트랜잭션, 인덱싱 등 데이터베이스에서의 중요한 부분들을 중점적으로 설명합니다.
ㆍ 5장에서는 자료 구조를 설명합니다. 먼저 시간 복잡도와 공간 복잡도를 설명하여 자료 구조의 기초를 알아보고 큐, 스택 등 필수적인 자료 구조를 전부 다룹니다.
ㆍ 6장에서는 필자의 포트폴리오를 중심으로 포트폴리오를 쓰는 팁과 인성 면접을 준비하는 팁을 알려줍니다.
이 책이 탄탄한 CS 전공지식을 갖춘 훌륭한 개발자가 되기 위한 첫걸음이 되길 바랍니다.
출판사 서평
4년 동안 학부를 다니면서 CS를 배웠지만, 막상 면접을 준비할 때는 빠진 것은 없는지, 어떤 식으로 대답할지 잘 몰랐습니다. 결국에는 맨땅에 몇 번 헤딩한 뒤에야 감을 잡았는데, 이 책이 그때 있었더라면 좋았겠다는 생각이 듭니다. 이 책은 그림과 코드를 십분 활용하여 CS를 재미있게 풀어서 설명하고, 짧은 분량과는 다르게 많은 내용을 커버합니다. CS를 잘 모르는 비전공자라면 쉽고 빠르게 CS를 훑어볼 수 있고, CS를 배운 전공자라면 면접 전에 가볍게 복기하거나 예상 질문에 대답해보면서 면접을 더욱 단단히 준비할 수 있을 것입니다. 특히 포트폴리오를 쓰는 법과 면접 예상 질문들은 이제 막 취업을 준비하는 사람에게 많은 도움이 될 것이라고 확신합니다.
최범석 | 네이버 리서치 엔지니어
현직 개발자 중에서도 기본적인 CS 관련 기반 지식이 부족한 개발자가 많습니다. 이러한 부분이 겉으로는 그리 중요해보이지 않을지 몰라도 실력 있는 소프트웨어 개발자가 되기 위해서는 반드시 숙지해야 하는 내용입니다. 이 책은 기본적으로 소프트웨어 개발자가 갖추어야 할 기본 지식을 상당 부분 담고 있습니다. 면접에서도 모든 질문에 답변할 필요는 없기 때문에 이 책의 내용만 충분히 숙지하신다면 기본 과목에 대한 지식이 부족하여 면접에 불합격하는 일은 없으리라고 생각합니다. 또한, 이 책은 배경지식을 쌓기 위한 기본서로도 좋습니다. 신입 개발자가 어떠한 내용을 공부하기 위해 라이브러리의 문서들을 읽다 보면 문장의 단어 뜻이나 배경지식이 부족하여 공부하기 힘든 부분들이 있을 수 있는데, 이 책은 그러한 부분들도 깔끔하게 채워줍니다.
김찬호 | 라인 백엔드 엔지니어
IT 면접을 잘 보기 위해서는 알아야 하는 지식이 많고 이를 짧은 시간 안에 공부하는 것은 어렵습니다. 어떠한 지식이 필요하고 어떠한 커리큘럼으로 공부해야 효율적일지 고민하고 있다면 이 책을 보는 것이 최선이라고 확신합니다. 또한, 이 책은 IT 지식뿐만 아니라 면접은 어떻게 봐야 하는지, 포트폴리오는 어떻게 작성해야 하는지 나와 있고, 면접 예상 질문까지 알려주어 면접을 원활하게 준비할 수 있습니다.
남승원 | 당근마켓 백엔드 개발자
개발자라면 알아야 할 필수적인 CS 지식들이 있지만 저와 같은 비전공자들은 이런 것들을 공부하는 데 있어 어려움이 많습니다. 어디서부터 시작해서 어디까지 학습해야 할지 잘 모르겠고, 방대한 범위를 정말 다 공부해야 하는지 로드맵을 그리기가 어려운데, 이 책에서는 비전공자들을 비롯한 전공자들까지도 알아두면 좋을 내용이 알차게 담겨 있습니다. 또한, 이미 CS 지식을 공부한 분들에게도 탄탄한 CS 지식을 다지는 데 도움을 주어 이 책을 기반으로 성공적인 이직 또는 취업 준비를 할 수 있으실 것입니다.
이태훈 | 배달의 민족 백엔드 개발자
이 책은 개발자라면 꼭 알아야 할 내용을 다루고 있습니다. 비전공자라면 이 책의 수많은 CS 전공지식으로 인해 한 번에 이해할 수 없을 수도 있지만, 키워드 중심으로 찾아가면서 이해하려고 한다면 어느새 전공자 수준으로 성장해가는 자신을 발견할 수 있을 것입니다. 전공자라면 이 책을 통해 자신의 CS 전공지식을 빠르게 훑어보며 부족한 면을 보완할 수 있습니다. 이 책을 통해 기본기가 탄탄한 개발자가 되는 기반을 마련하셨으면 합니다.
이태우 | 휴먼스케이프 CTO
이 책은 단편화된 컴퓨터 지식들을 연결해주고 면접 준비 중이신 분들이나 컴퓨터 공학의 기본기가 약하신 분들에게 큰 도움이 되는 책입니다. 적극 추천합니다!
김건우 | 클래스101 백엔드 개발자
---------------------------------------------
“이 책을 만들기까지 총 13명의 개발자 최범석(네이버 리서치 엔지니어), 김찬호(라인 백엔드 개발자), 이성준(쿠팡 시니어 소프트웨어 엔지니어), 남승원(당근마켓 백엔드 개발자), 이태훈(배달의 민족 백엔드 개발자), 이태우(휴먼스케이프 CTO), 송성빈(삼성전자 소프트웨어 엔지니어), 이승철(NHN 백엔드 개발자), 김인범(CNCITY 데이터 엔지니어 / MongoDB Korea 운영진), 김재엽(스타트업 데이터 엔지니어), 김건우(클래스101 백엔드 개발자), 조유빈(이스트소프트 IOS 개발자), 오규영(한전 KDN 소프트웨어 엔지니어) 님이 도와주셨습니다.”
기본정보
ISBN | 9791165219529 |
---|---|
발행(출시)일자 | 2022년 04월 28일 |
쪽수 | 292쪽 |
크기 |
182 * 234
* 21
mm
/ 752 g
|
총권수 | 1권 |
Klover
구매 후 리뷰 작성 시, e교환권 200원 적립
문장수집
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
판매가 5,000원 미만 상품의 경우 리워드 지급 대상에서 제외됩니다. (2024년 9월 30일부터 적용)
구매 후 리뷰 작성 시, e교환권 100원 적립