자바 코딩 인터뷰 완벽 가이드 : 자바 프로그래머의 취업을 위한 258가지 코딩 인터뷰 & 테스트

자바 코딩 인터뷰 완벽 가이드 : 자바 프로그래머의 취업을 위한 258가지 코딩 인터뷰 & 테스트

$44.67
Description
코딩 인터뷰뿐만 아니라 연봉 협상법, 불합격 대처법까지!
자바 프로그래머의 취업 & 이직 노하우 대공개
자바는 전자정부 표준프레임워크를 이용하는 웹 기반 애플리케이션 개발부터 안드로이드 앱 같은 모바일 분야까지 다양한 산업을 지탱하는 매우 인기 있는 프로그래밍 언어입니다. 전 세계 수십억 대의 장치에 사용되기 때문에 많은 사람이 배우고 싶어 하는 매력적인 언어이기도 합니다. 또한 컴퓨터공학 전공이라면 객체지향 프로그래밍을 제대로 이해하는 데 꼭 필요한 핵심이기도 합니다. 이러한 자바를 배우는 것과 자바 분야에서 경력을 쌓는 것에는 큰 차이가 있습니다.

이 책은 자바 관련 경력을 쌓고 자바 중심 기술 인터뷰를 멋지게 해내고 싶은 독자에게 필요한 가이드입니다. 구글, 아마존, 마이크로소프트, 어도비, 플립카트와 같은 다양한 IT 기업에 입사 지원했을 때 마주할 수 있는 250개 이상의 가장 유명한 자바 코딩 테스트&인터뷰 문제를 독창적인 방식으로 해결합니다. 이를 위해 광범위한 자바 코딩 인터뷰&테스트를 해결하는 최고의 기법을 모았습니다.

이 책을 다 읽고 나면 여러분은 자바 코딩 테스트나 인터뷰 문제를 해결하기 위한 탄탄한 정보 기반을 갖추게 될 것입니다. 또한 여러분이 꿈꾸는 자바 프로그래머가 될 수 있다는 자신감을 심어줄 것입니다.

저자

안겔레오나르드

저자:안겔레오나르드
자바분야에서20년이상의경력을가진최고기술전략가입니다.강력한아키텍처,클린코드및고성능을지원하는자바분산애플리케이션을설계하고개발하는일에주력하고있습니다.코칭,멘토링및기술리더십에도열정이있습니다.

역자:시진
국내대기업에서인공지능관련연구를진행하고챗봇서비스를개발하는7년차개발자입니다.주로자연어처리중심의연구와자바,파이썬위주의개발경력을쌓아가고있습니다.개발과관련된공부는분야를가리지않고좋아하며자기계발과지식공유를목표로번역에참여하고있습니다.

감수:테자스위니만다르조그
열정이넘치는자바교육자입니다.자바,J2EE,스프링,스프링클라우드,마이크로서비스및관련기술교육분야에서12년이상의경력이있습니다.많은유명기업과협업해교육및기술향상프로그램을진행하기도했습니다.또한자바,스프링및하이버네이트를사용하는프로젝트개발에참여하고있으며스프링,반응형프로그래밍,모듈프로그래밍에관한책을세권저술했습니다.

목차

Part1인터뷰에서묻는기술외적인영역

1장인터뷰를준비하는방법
1.1초보자인터뷰로드맵
1.2자기성찰
1.3취업시장분석
1.4올바른경험쌓기
1.4.1일단시작하세요
1.4.2온라인공간에존재감을보여주세요
1.5이력서작성
1.5.1이력서심사관이찾는이력서란?
1.5.2적당한이력서의길이
1.5.3경력작성방법
1.5.4프로젝트소개작성방법
1.5.5사용가능한기술작성방법
1.5.6링크드인이력서
1.6입사지원과정
1.6.1채용중인회사탐색
1.6.2이력서제출
1.7인터뷰응시
1.7.1화상인터뷰
1.7.2대면인터뷰
1.7.3흔히하기쉬운실수
1.8마치며

2장유명IT기업인터뷰살펴보기
2.1구글인터뷰
2.2아마존인터뷰
2.3마이크로소프트인터뷰
2.4페이스북인터뷰
2.5크로스오버인터뷰
2.6마치며

3장일반적인기술외질문및답변방법
3.1기술외질문의목적이무엇인가요?
3.2어떤경험을했나요?
3.3가장좋아하는프로그래밍언어는무엇인가요?
3.4어떤일을하고싶은가요?
3.5경력의목표가무엇인가요?
3.6어떤근무방식을선호하나요?
3.7왜이직하려고하나요?
3.8연봉이력이어떻게되나요?
3.9우리가왜당신을고용해야하나요?
3.10얼마나많은연봉을받고싶은가요?
3.11질문이있나요?
3.12마치며

4장불합격에대처하는방법
4.1채용제안을수락하거나거절하기
4.2불합격할수도있다는사실을인정하기
4.3회사가다양한이유로지원자를불합격시킴을이해하기
4.3.1인터뷰이후피드백받기
4.4불합격요인을객관적으로파악하고제거하기
4.5회사에집착하지않기
4.6자신감잃지않기
4.7마치며

5장기술인터뷰접근방법
5.1기술시험
5.2코딩테스트
5.2.1코딩테스트에특화한문제는어렵기마련이다
5.2.2코딩테스트문제를해결하는방법
5.3마치며

Part2자바핵심개념이해하기

6장객체지향프로그래밍
6.1객체지향프로그래밍의개념이해
6.1.1객체란무엇인가?
6.1.2클래스란무엇인가?
6.1.3추상화란무엇인가?
6.1.4캡슐화란무엇인가?
6.1.5상속이란무엇인가?
6.1.6다형성이란무엇인가?
6.1.7연관이란무엇인가?
6.1.8집약이란무엇인가?
6.1.9구성이란무엇인가?
6.2SOLID원칙이해
6.2.1S란무엇인가?
6.2.2O란무엇인가?
6.2.3L이란무엇인가?
6.2.4I란무엇인가?
6.2.5D란무엇인가?
6.3객체지향프로그래밍,SOLID,GOF디자인패턴과관련한유명질문
6.3.1객체지향프로그래밍에서메서드오버라이딩이란무엇인가?
6.3.2객체지향프로그래밍에서메서드오버로딩이란무엇인가?
6.3.3자바에서공변메서드오버라이딩이란무엇인가?
6.3.4오버라이딩및오버로딩메서드에서예외를다룰때주요제한사항은무엇인가?
6.3.5슈퍼클래스의오버라이드된메서드를서브클래스의오버라이딩메서드에서어떻게호출할수있는가?
6.3.6main메서드를오버라이드또는오버로드할수있는가?
6.3.7자바에서static이아닌메서드를static메서드로오버라이드할수있는가?
6.3.8자바인터페이스안에abstract가아닌메서드를포함할수있는가?
6.3.9default메서드를가지는인터페이스와추상클래스의주요차이점은무엇인가?
6.3.10추상클래스와인터페이스의주요차이점은무엇인가?
6.3.11abstract메서드가없는추상클래스를만들수있는가?
6.3.12추상이면서동시에final인클래스를만들수있는가?
6.3.13다형성,오버라이딩,오버로딩의차이점은무엇인가?
6.3.14바인딩작업이란무엇인가?
6.3.15정적바인딩과동적바인딩의주요차이점은무엇인가?
6.3.16자바에서메서드하이딩이란무엇인가?
6.3.17자바에서가상메서드를작성할수있는가?
6.3.18추상화와다형성의차이점은무엇인가?
6.3.19다형성을구현하는방법으로오버로딩을고려할수있는가?
6.3.20데커레이터패턴에적합한객체지향프로그래밍개념은무엇인가?
6.3.21싱글턴패턴은언제사용해야하는가?
6.3.22전략패턴과상태패턴의차이점은무엇인가?
6.3.23프록시패턴과데커레이터패턴의차이점은무엇인가?
6.3.24퍼사드패턴과데커레이터패턴의차이점은무엇인가?
6.3.25템플릿메서드패턴과전략패턴의주요차이점은무엇인가?
6.3.26빌더패턴과팩토리패턴의주요차이점은무엇인가?
6.3.27어댑터패턴과브리지패턴의주요차이점은무엇인가?
6.4코딩테스트
6.4.1코딩테스트1:주크박스
6.4.2코딩테스트2:자판기
6.4.3코딩테스트3:카드한벌
6.4.4코딩테스트4:주차장
6.4.5코딩테스트5:온라인도서관시스템
6.4.6코딩테스트6:해시테이블
6.4.7코딩테스트7:파일시스템
6.4.8코딩테스트8:튜플
6.4.9코딩테스트9:영화표예약시스템이있는영화관
6.4.10코딩테스트10:원형바이트버퍼
6.5마치며

7장알고리즘의빅오분석법
7.1유추
7.2빅오시간복잡도
7.3최고의경우,최악의경우,기대하는경우
7.4빅오예제
7.4.1예제1:O(1)
7.4.2예제2:O(n)-선형시간알고리즘
7.4.3예제3:O(n)-상수제외
7.4.4예제4:비우세항제외
7.4.5예제5:입력데이터가다르면변수도다르게설정
7.4.6예제6:서로다른단계의합또는곱
7.4.7예제7:logn실행시간
7.4.8예제8:재귀실행시간
7.4.9예제9:이진트리의중위순회
7.4.10예제10:n의변동
7.4.11예제11:메모이제이션
7.4.12예제12:행렬의1/2반복실행
7.4.13예제13:중첩반복문에서O(1)식별
7.4.14예제14:배열의1/2반복실행
7.4.15예제15:빅오표현식줄이기
7.4.16예제16:O(logn)의시간복잡도를가지는반복실행
7.4.17예제17:문자열비교
7.4.18예제18:팩토리얼의빅오
7.4.19예제19:n표기법을사용할때주의사항
7.4.20예제20:합과반복횟수
7.4.21예제21:빅오의반복횟수
7.4.22예제22:자릿수
7.4.23예제23:정렬
7.5기술인터뷰를위한꿀팁
7.6마치며

8장재귀및동적프로그래밍
8.1재귀의개요
8.1.1재귀문제인식하기
8.2동적프로그래밍의개요
8.2.1메모이제이션
8.2.2태뷸레이션
8.3코딩테스트
8.3.1코딩테스트1:로봇격자지도
8.3.2코딩테스트2:하노이의탑
8.3.3코딩테스트3:요세푸스
8.3.4코딩테스트4:영역구하기
8.3.5코딩테스트5:동전거스름돈
8.3.6코딩테스트6:5개의탑
8.3.7코딩테스트7:마법의인덱스
8.3.8코딩테스트8:떨어지는공
8.3.9코딩테스트9:상자쌓기
8.3.10코딩테스트10:문자열순열
8.3.11코딩테스트11:기사의여행
8.3.12코딩테스트12:중괄호여닫기
8.3.13코딩테스트13:계단
8.3.14코딩테스트14:부분집합합계
8.3.15코딩테스트15:줄바꿈
8.4마치며

9장비트조작
9.1비트연산개요
9.1.1자바int형의이진표기법
9.1.2비트연산자
9.1.3비트시프트연산자
9.1.4비트를다루는요령
9.2코딩테스트
9.2.1코딩테스트1:비트값가져오기
9.2.2코딩테스트2:비트값설정하기
9.2.3코딩테스트3:비트값초기화하기
9.2.4코딩테스트4:손으로이진수더하기
9.2.5코딩테스트5:코드로이진수더하기
9.2.6코딩테스트6:손으로이진수곱하기
9.2.7코딩테스트7:코드로이진수곱하기
9.2.8코딩테스트8:손으로이진수빼기
9.2.9코딩테스트9:코드로이진수빼기
9.2.10코딩테스트10:손으로이진수나누기
9.2.11코딩테스트11:코드로이진수나누기
9.2.12코딩테스트12:비트치환하기
9.2.13코딩테스트13:가장길게연속된1
9.2.14코딩테스트14:다음과이전숫자
9.2.15코딩테스트15:변환
9.2.16코딩테스트16:식최대화하기
9.2.17코딩테스트17:홀수와짝수비트교체하기
9.2.18코딩테스트18:비트회전
9.2.19코딩테스트19:숫자계산하기
9.2.20코딩테스트20:고유한요소
9.2.21코딩테스트21:중복값검색하기
9.2.22코딩테스트22:고유요소2개
9.2.23코딩테스트23:멱집합
9.2.24코딩테스트24:유일하게설정된비트의위치검색하기
9.2.25코딩테스트25:부동소수점을이진수혹은반대로변환하기
9.3마치며
.
.
(중략)
.
.
Part4동시성과함수형프로그래밍

16장동시성
16.1자바동시성(멀티스레딩)의개요
16.2기술인터뷰
16.2.1기술인터뷰1:스레드생명주기상태
16.2.2기술인터뷰2:교착상태
16.2.3기술인터뷰3:경쟁상태
16.2.4기술인터뷰4:재진입가능한록
16.2.5기술인터뷰5:Executor와ExecutorService
16.2.6기술인터뷰6:Runnable과Callable
16.2.7기술인터뷰7:기아상태
16.2.8기술인터뷰8:라이브록
16.2.9기술인터뷰9:start와run메서드
16.2.10기술인터뷰10:Thread와Runnable
16.2.11기술인터뷰11:CountDownLatch와CyclicBarrier
16.2.12기술인터뷰12:wait와sleep
16.2.13기술인터뷰13:ConcurrentHashMap과Hashtable
16.2.14기술인터뷰14:ThreadLocal
16.2.15기술인터뷰15:submit과execute
16.2.16기술인터뷰16:interrupted와isInterrupted
16.2.17기술인터뷰17:스레드중단
16.2.18

출판사 서평

자바프로그래머의구직에필요한‘종합선물세트’를만난다!

프로그래머의취업이나이직과정에서기술면접과코딩테스트가자리잡은지도여러해가흘렀습니다.처음에는구직자를뽑는기업도시행착오를겪었고,구직자도정보가부족해제대로준비하지못하는시기가있었지만,이제는자리를잡아가는느낌입니다.이러한흐름에발맞춰서기술면접이나코딩테스트를준비하는데필요한책도많이늘었습니다.그런데IT산업에서큰비중을차지하는자바라는프로그래밍언어에맞춰취업이나이직을준비하는바이블과같은책은상대적으로적었습니다.이책은자바프로그래머를위한구직바이블이한권은꼭있어야하지않겠느라는의도에서기획했습니다.

이책의매력을한마디로설명한다면‘종합선물세트’라고하겠습니다.840쪽이라는분량이설명하듯처음취업을준비하는상황에구직자가해야할일,이력서쓰는법,인터뷰요령,연봉협상방법,기술면접과코딩테스트연습이라는모든토끼를잡을수있도록구성되어있습니다.또한이책에서제시하는각종내용은구글,마이크로소프트,페이스북,어도비등세계적으로유명한IT기업의최신사례를참고해트렌드를반영하려는노력을기울였습니다.

누구나마음한쪽에는높은연봉을받고커리어를쌓을수있는기업에서일하고싶을것입니다.그러려면해당기업에자신이매력적인인재임을어필해야하죠.앞으로이책을읽고각기업에서채용하고싶은매력적인자바프로그래머가되면좋겠다는희망을담습니다.또한많은자바프로그래머가자연스럽게추천할수있는책이되면좋겠다는희망도함께담습니다.

이책의특징

시간복잡도,객체지향프로그래밍,재귀알고리즘과같은다양한주제의코딩테스트&인터뷰문제258개를해결해봅니다.
코딩테스트&인터뷰에서소개하는단계별과정을습득해좋은코드가무엇인지파악하고이를효율적으로작성하는방법을배웁니다.
인기있는기술인터뷰질문을살펴보고까다로운알고리즘을관리가능한단위로나누는다양한기술을배웁니다.
올바르고체계적인논리력을키울수있는브레인티저알고리즘을다룹니다.
취업성공과실패를결정짓는기술외일반적인인터뷰질문도자세히소개합니다.
IT유명기업이자바프로그래머에게원하는전체적인그림을살펴봅니다.