世界で闘うプログラミング力を鍛える本 コーディング面接189問とその解法
- 著作者名:Gayle Laakmann McDowell
- 監訳者名:岡田佑一、 小林啓倫
-
- 書籍:4,180円
- 電子版:4,180円
- B5変型判:772ページ
- ISBN:978-4-8399-6010-0
- 発売日:2017年02月27日
内容紹介
トップIT企業が出題するコーディング面接にチャレンジ!
人気のあるトップIT企業で行われるコーディング面接に合格し採用されるための攻略本として、グーグル等でエンジニアとして働き、かつ多くの採用プロセスに関わってきた著者によって本書は執筆されました。米国で大人気のコンピュータプログラミングに関するベストセラー書(Cracking the Coding Interview: 189 Programming Questions and Solutions)の日本語版です。
本書で取り上げるプログラミング問題はトップIT企業が求める能力が凝縮されている、面接で実際に使われたものです。そしてなによりもアルゴリズムを中心としたコンピュータサイエンスの基礎知識や活用法を楽しみながら学べる内容となっています。
前著「世界で闘うプログラミング力を鍛える150問」と比べ計算量に関する説明がより詳細になりました。新規の問題はもちろん、既存の問題についても時間計算量・空間計算量の記述が追加され、計算量の見積もりについての話題も参考になるでしょう。また木とグラフ・探索アルゴリズムに関する説明も充実したものになり、純粋なプログラミング技術書としてのバランスと深みが増しました。Big-O記法の解説章や発展課題、解き方のヒントの追加、また全ての問題がカテゴライズされより読みやすくなりました。
本書が支持されている理由は「面接」という限られた時間だけにフォーカスするのではなく、その前後における行動までアドバイスしてくれている点です。「エンジニアとして日々をどう過ごすか」を考える上で非常に有益でしょう。
自分がプログラマとして現在「どんな分野」に関して、どの程度の「能力」があるのか。これからのキャリアアップに必要な知識やスキルを考える手がかりとして。あるいは本当に優秀な候補者を採用する面接を行うための一冊として。
本書にはそのヒントがたくさん含まれています。
充実のラインナップに加え、割引セールも定期的に実施中!
商品を選択する
フォーマット | 価格 | 備考 | |
---|---|---|---|
書籍 | 4,180円 | ||
4,180円 | ※ご購入後、「マイページ」からファイルをダウンロードしてください。 ※ご購入された電子書籍には、購入者情報、および暗号化したコードが埋め込まれております。 ※購入者の個人的な利用目的以外での電子書籍の複製を禁じております。無断で複製・掲載および販売を行った場合、法律により罰せられる可能性もございますので、ご遠慮ください。 |
備考
Gayle Laakmann McDowel(ゲイル・L・マクダウェル)はソフトウェアエンジニアとして、マイクロソフト、アップル、グーグルに勤務した経験を持つ。特にグーグルでは主任面接官の1人として採用委員会のメンバーを務めた。著者自身の面接官・志願者としての豊富な経験を元にCareerCup.comを設立し、有名企業による数千もの面接問題のデータベースやコーディング面接に関するアドバイスのためのフォーラムを提供している。
ペンシルベニア大学でコンピュータサイエンス、ウォートンスクールでMBAの学士・修士号を取得。カリフォルニア州パロアルト在住。夫、2人の息子、犬およびコンピュータ科学の本と共に暮らし、また毎日コーディングを行っている。
訳者プロフィール
岡田佑一(おかだ ゆういち)
小さな学習塾を営む。子どもたちとの日常から生まれたアイデアを元にプログラミング問題を多数作成し、解説記事等の執筆活動も行っている。著書に『ショートコーディング 職人達の技法』、執筆協力に『プログラミングコンテスト攻略のためのアルゴリズムとデータ構造 』(以上、マイナビ出版)。
小林啓倫(こばやし あきひと)
経営コンサルタント。システムエンジニアとしてキャリアを積んだ後、米バブソン大学でMBAを取得。その後外資系コンサルティングファーム、国内ベンチャー企業を経て、現在はコンサルタント業の傍ら、ライター/翻訳者としても活動。監訳書に『世界で闘うプロダクトマネジャーになるための本』(マイナビ出版)、訳書に『ソーシャル物理学「: 良いアイデアはいかに広がるか」の新しい科学』(草思社)など多数。
目次
I. 面接の流れII. 面接試験の舞台裏
マイクロソフト、アマゾン、グーグル、アップル、フェイスブック、パランティールの面接
III. 特殊な状況
職歴の長い候補者 / テスターとSDET / プロダクト/プログラム・マネージャ / 開発リーダー/マネージャ / スタートアップ起業 / 合併や買収による人材獲得
IV. 面接の前に
履歴書の書き方 / 準備表
V. 行動に関する質問
面接準備の表 / 技術的プロジェクトについて整理する
VI. ビッグ・オー記法(Big O)
VII. 技術的な質問
問題攻略ガイド / 最適化と解答テクニック / 面接の「最強」言語 / 良い、きれいなコードとは
VIII. オファーとその後
IX. 問題、X. 解法
[データ構造]
1 配列と文字列
2 連結リスト
3 スタックとキュー
4 木とグラフ
[考え方とアルゴリズム]
5 ビット操作
6 数学と論理パズル
7 オブジェクト指向設計
8 再帰と動的計画法
9 スケーラビリティとシステムデザイン
10 ソートと探索
11 テスト
[知識ベース]
12 CとC++
13 Java
14 データベース
15 スレッドとロック
[追加練習問題]
16 中級編
17 上級編
XI. より高度な話題
トポロジカルソート / ダイクストラ法 / ハッシュテーブルの衝突処理 / ラビン-カープ文字列検索 / AVL木 / 赤黒木 / マップリデュース
XII. コードライブラリ
HashMapList<T, E> / TreeNode(二分探索木) / LinkedListNode(連結リスト) / Trie & TrieNode(トライ木)
XIII. ヒント
[データ構造]のヒント
[考え方とアルゴリズム]
[知識ベース]のヒント
[追加練習問題]のヒント
索引
プロフィール