핵심 개념 요약

본 영상은 개발자 취업을 위한 컴퓨터 과학 지식(CS 지식) 특강으로, 강민철 저자가 진행합니다. 컴퓨터 과학은 연산, 정보, 자동화에 대한 학문이며, 프로그램 작동의 근거를 설명하는 학문입니다. 오늘날 AI의 발전으로 인해 프로그램 작동 원리를 이해하고 문제를 진단하는 개발자의 역량이 더욱 중요해졌으며, 이는 기술 면접에서 CS 지식을 검증하는 이유가 됩니다.

기술 면접 대비를 위한 컴퓨터 과학 학습은 단순히 용어의 뜻을 암기하는 방식으로는 부족합니다. 개념의 근본적인 이해와 함께 코드 기반의 질문이나 꼬리 질문에 답할 수 있는 응용력이 필요합니다. 실제로 기술 면접에서는 용어 단순 암기보다는 개념에 대한 심층적인 대화, 코드 표현 요구, 경험 질문 등이 더 자주 출제됩니다.

자주 출제되는 컴퓨터 과학 지식은 크게 공통 지식과 개별 지식으로 나뉩니다.

공통 지식: 대부분의 직무에서 비교적 공통적으로 출제되며, 컴퓨터 구조, 운영 체제, 자료 구조, 네트워크, 데이터베이스를 포함합니다.

개별 지식: 개별 직군, 지원자의 경력, 기업의 성격에 따라 질문 내용이 달라질 수 있으며, 프로그래밍 언어, 프레임워크와 라이브러리, 개발 도구, 자기소개서 및 직무 전문성 관련 질문을 포함합니다.

본 영상에서는 공통 지식의 주요 범위를 마인드맵처럼 설명하며, 각 과목에서 어떤 내용을 어느 정도로 학습해야 하는지 큰 그림을 제시합니다. 컴퓨터 구조에서는 컴퓨터가 이해하는 정보(데이터, 명령어)와 핵심 부품(CPU, 메모리, 보조 기억 장치, 입출력 장치)을, 운영 체제에서는 프로세스/쓰레드 관리와 자원 할당/관리(CPU 스케줄링, 가상 메모리, 파일 시스템)를, 자료 구조에서는 데이터 구조(배열, 연결 리스트, 스택, 큐, 해시 테이블, 트리, 그래프)와 성능 판단 기준(시간 복잡도, 공간 복잡도)을, 네트워크에서는 계층 구조와 주요 프로토콜(IP, TCP, UDP, HTTP 등), 트래픽 관리를, 데이터베이스에서는 데이터베이스/DBMS, 엔티티/스키마, 트랜잭션(ACID), DBMS 유형(RDBMS, NoSQL) 및 관련 기술(SQL, 인덱스, 조인, 정규화)을 다룹니다.

단답형 퀴즈 (각 2-3 문장으로 답변)

컴퓨터 과학이란 무엇인가요?

개발자가 컴퓨터 과학 지식을 알아야 하는 주된 이유는 무엇인가요?

기술 면접에서 컴퓨터 과학 지식이 중요하게 다루어지는 이유는 무엇인가요?

단순히 컴퓨터 과학 용어의 뜻을 암기하는 방식으로 기술 면접을 대비했을 때 발생할 수 있는 문제점은 무엇인가요?

컴퓨터 과학 공통 지식에 해당하는 다섯 가지 주요 과목은 무엇인가요?