面接を学ぶアプリのアイコン

面接を学ぶ

教育 · 無料 · iOS · CoddyKit

面接を学ぶ — 面接官が本当に出す問題を練習

面接を学ぶ は、コーディング面接向けの無料 iOS / Android アプリです。データ構造とアルゴリズム、SQL、競技プログラミングを扱う90の短期コースと360のレッスンに加え、内蔵エディタで解いて実行できる 60 Python 問題を収録しています。まずは、正解である2つの Two Sum 解法が競い合う様子を見られるところから始まります。つまり、一方が他方を上回る理由を、暗記ではなく実際に目にしたこととして理解できます。

App Store — 無料でダウンロードGoogle Play — 無料でダウンロード
価格
無料、Proへのアップグレード
プラットフォーム
iOSとAndroid
対応言語
22
年齢レーティング
4+
バージョン
82.6.0
必要環境
iOS 15.1以降
Interview Prepコースカード、毎日の目標、World Coding Challengeのカウントダウンを表示したCoding Interview Prepのホーム画面SQL Fundamentals Interview QuestionsとPython Warm-Up for DSAから始まる、レベルタグ付きのコース一覧
903つのトラックに分かれたコース
60Python問題
カウントで確認実行して計算量を表示
答えは同じ。作業量は16倍。

最初のレッスンでは、同じ64個の数に対してTwo Sumを2通りで実行します。すべてのペアを確認する方法と、すでに見たものを記憶しておく方法です。そして、比較と検索が行われるたびに数をカウントします。このカウントこそがビッグO記法の核心であり、面接官が「なぜ」と尋ねたときに聞きたいことです。

概要

面接を学ぶは、技術面接の準備をする人のための無料のiOS・Androidアプリです。データ構造とアルゴリズム、SQLの面接問題、競技プログラミングを、3つのトラックに分かれた短いレッスンで学び、その後Pythonで解答を書いて実行します。このアプリは、コーディング面接を暗記ではなく説明力のテストとして捉えています。解法を実行してそのコストを示し、理解しにくい概念はAIメンターが説明します。

アプリの内容

画面イメージ

Interview Prepコースカード、毎日の目標、World Coding Challengeのカウントダウンを表示したCoding Interview Prepのホーム画面
ホーム現在のコース、連続学習日数を数えるデイリー目標、次回のWorld Coding Challengeラウンドを1画面で確認できます。
SQL Fundamentals Interview QuestionsとPython Warm-Up for DSAから始まる、レベルタグ付きのコース一覧
コース一覧全90コースを順番に表示し、それぞれにレベルとレッスン数をタグ付けしています。各トラックの最初のコースは無料です。
短いクエリ、SQLとデータベースエンジンの違いを解説するコンセプトカード、AIメンターのショートカットを表示するSQLレッスン
レッスンレッスンでは、短い解説、コード例、Explain SimplyやStep by StepなどのAIメンターへの質問ショートカットを組み合わせています。
SQLステートメントの4つのカテゴリ(DDL、DML、DCL、TCL)を扱うレッスンのコンセプトカード
面接で問われるコンセプトコンセプトカードでは、SQLステートメントの4つのカテゴリなど、面接官がよく質問するポイントを取り上げます。

コース

面接対策コースで学べること

アプリ独自のコース一覧には、SQLの基礎や計算量から、動的計画法、グラフ、コンテスト形式の問題まで、全90コース・360レッスンを収録しています。

  1. SQLの基礎とフィルタリングの落とし穴

    SQL Fundamentals Interview Questions、SELECT式、WHEREによるフィルタリングの落とし穴、そして上位N件の問題に使うORDER BYとLIMITを学びます。

  2. 時間計算量と空間計算量

    時間計算量と空間計算量、そしてClock上のBig-O:提出前に解答が制限時間内に通るかを見極めます。

  3. 配列、文字列、ハッシュ

    配列とTwo-Pointer Technique、Sliding Window Mastery、Prefix Sums、文字列とパターンマッチング、Hash MapsとSetsを学びます。

  4. リスト、スタック、キュー、探索

    Linked Lists from Scratch、Stacks and Queues in Action、Sorting Algorithms、Binary Search Masteryを学びます。

  5. 木、ヒープ、グラフ

    木の走査とパス、二分探索木、ヒープと優先度付きキュー、グラフにおけるBFSとDFSを学びます。

  6. 再帰、バックトラッキング、動的計画法

    再帰とCall Stack、バックトラッキング、Dynamic Programming Foundations、1Dおよび2DグリッドのDPパターン、ナップサックのバリエーションを学びます。

  7. JOIN、ウィンドウ関数、分析SQL

    INNER、LEFT、FULL OUTER JOIN、ROW_NUMBER、RANK、LAG、LEAD、グループごとの上位N件、ギャップと島、コホート分析とファネル分析を学びます。

  8. 競技プログラミングツールキット

    ジャッジと判定結果、高速な入力と出力、整数論、Dijkstra、Union-Find、コンテスト形式の問題に使うTrieを学びます。

使い方

練習セッションの進め方

通勤中、行列に並んでいるとき、会議前の10分間に取り組めるよう、セッションは設計されています。1問ずつ進み、それぞれの問題に理由が付いてきます。

  1. 毎日の問題から始める

    実際の面接問題を読み、考えてから、答えを表示します。毎日無料で取り組めます。連続記録を維持することで、忙しい週でも習慣を続ける理由が生まれます。

  2. 短いレッスンでパターンを学ぶ

    3つのトラックからレッスンを1つ選びます。それぞれ数分で学べる説明に、概念カード、コードスニペット、そして最初に読んだだけでは理解できないときに使える「簡単に説明」または「ステップごとに説明」のAIメンター欄が付いています。

  3. 解答を書いて実行する

    60問のコーディング問題から1つを開き、内蔵エディタでPythonの解答を書いて、チェックに対して実行します。その後、クイズとフリップカードで「読んだ」状態を「思い出せる」状態に変えていきます。

内容

アプリの内容

90

3つのトラックに分かれたコース

データ構造とアルゴリズム、面接のためのSQL、競技プログラミングを扱う360のレッスンを収録しています。各トラックには、最初の無料コースが用意されています。

60

Python問題

Two SumやValid Parenthesesから、Merge Intervals、Coin Change、Trapping Rain Water、Edit Distanceまで、パターンごとにまとめた、easy 20問、medium 20問、hard 20問のチャレンジです。

カウントで確認

実行して計算量を表示

アプリで解法のコストが高いと表示される場合、その数字は2つの解法を実行し、手順を横並びで数えた結果です。

20

ガイド付きパターンプロジェクト

2つのポインタ、sliding window、binary search、グリッド上のBFS、heap top-k、triesなど、1つのパターンをステップごとに構築します。各ステップで正しいコードブロックを選び、なぜ機能するのかを確認できます。

50 + 50

フリップカードとクイズ問題

まず考えてからめくる形式の面接問題フリップカード50問、復習セッション付きのクイズ問題50問、そしてデータ構造、アルゴリズム、SQLに関する67項目のチートシートを収録しています。

AI

AIメンター

概念が理解できないときは、自然な言葉で何でも質問できます。無料ユーザーは1日に数回メンターの回答を利用でき、Proでは上限がなくなります。

背景

コーディング面接では実際に何が試され、どう準備すればよいのでしょうか?

コーディング面接では、初めて見る問題に取り組み、筋のよいアプローチを選び、それがなぜ機能するのか、どれくらいのコストがかかるのかを声に出して説明し、そしてきれいにコードを書く力が確認されます。多くの問題は、少数のパターンを応用したものです。そのため、問題を1問ずつ解答ごと覚えるより、パターンごとに問題をまとめて準備するほうが、別の問題にも応用しやすくなります。候補者が過小評価しがちなのが説明です。2つの動く解法がどちらも正解ということはありますが、面接官が聞いているのは、通常、その中からなぜ一方を選んだのかという理由です。

時間計算量と空間計算量会話で使う用語

ビッグO記法は、入力が大きくなるにつれてアルゴリズムの処理量がどのように増えるかを表します。面接では共通言語として使われます。解法がO(n²)だと説明し、続けてハッシュマップを使ったO(n)の解法を見つけることが、問題の成否を分けるまさにその瞬間になることもよくあります。

問題よりパターン問題集だけでは伸び悩む理由

Two pointers、sliding window、binary search、hash maps、BFSとDFS、dynamic programmingは、出題される問題の多くをカバーします。問題がどのパターンに当てはまるかを見抜けるようになれば、見たことのない問題も解けるようになります。

採用選考でのSQLデータベース職だけのものではありません

アナリスト、データエンジニア、多くのバックエンド候補者が、SQLの問題に直面します。join、GROUP BYとHAVING、NULLの扱い、ウィンドウ関数、グループごとのtop-Nなどです。落とし穴は通常、LEFT JOINの結果がWHEREフィルターによってどのように変わるかといった、細部にあります。

考えを声に出すコミュニケーションの側面

無言で正解を出すより、少し粗くても声に出して答えるほうが高く評価されます。目の前に問題を置き、アイデアを試し、その後で説明と照らし合わせて確認する練習のほうが、完成した解答を読むよりも実際の面接に近いものになります。

適しています

向いている方・向いていない方

次のような方におすすめです

  • 初めてのインターンシップや新卒面接に向けて、よく出るトピックを体系的に学びたい方
  • 現役の開発者で、テクニカル面接の前にアルゴリズムを復習したい方
  • データアナリストやデータエンジニアの採用面接でSQLの質問が出る方
  • 暗記した答えを再現するだけでなく、なぜある正解が別の正解より優れているのかを理解したい方
  • 長時間の夜間学習より、スマートフォンで短時間の学習を毎日続けたい方

次のような方には適していません

  • 実際の面接官とのホワイトボード面接を完全にシミュレーションしたい方 — このアプリは面接の場ではなく、面接で必要な内容を練習するためのものです
  • すべて無料だと思っている方:各トラックの最初のコースと一部の問題は無料で、Proですべてのライブラリを利用できます
  • コーディング問題をPython以外の言語で対策したい方
  • コードを書いた経験がまったくない完全な初心者の方 — 最初のステップには初心者向けPythonコースが適しています

ご質問

よくある質問

スマートフォンでコーディング面接の準備をする最適な方法は何ですか?

長時間の詰め込み学習より、短時間の練習を繰り返すほうが効果的で、スマートフォンはその学習に適しています。面接を学ぶでは、面接問題を1日1問、パターン別の短いレッスン、内蔵エディタで書いて実行できる60問のPython問題を提供します。さらに、クイズとフリップカードで記憶を確認できるため、面接当日にも学んだ内容を覚えていられます。

面接を学ぶでは、アルゴリズムだけでなくSQLの面接問題にも対応していますか?

はい。SQLは、データ構造とアルゴリズム、競技プログラミングと並ぶ3つのトラックの1つです。WHEREとNULLの落とし穴、GROUP BYとHAVING、あらゆる種類のJOIN、サブクエリとCTE、ROW_NUMBER、RANK、LAG、LEADなどのウィンドウ関数、ギャップと島、コホート分析とファネル分析を扱います。

アルゴリズムを学ぶことと、答えを暗記することの違いは何ですか?

暗記した答えは、問題が少し変わっただけで通用しなくなりますが、パターンは多くの問題に応用できます。面接を学ぶでは、まずTwo Pointers、Sliding Window、Binary Search、Hash Maps、BFS、DFS、動的計画法などのパターンを教え、それを使う問題に取り組みます。最初のレッスンでは、Two Sumの2つの解法を並べて実行し、それぞれの処理量を数えることで、考え方を直接示します。

コーディング問題ではどのプログラミング言語を使いますか?

面接を学ぶの60問のコーディング問題は、アプリ内蔵エディタでPythonを使って解きます。解答を書いて実行し、チェックを受けることができます。レッスンではPythonの構文ではなく基礎となるアルゴリズムを解説するため、面接で選べる言語が何であってもパターンを応用できます。

問題とレッスンはいくつありますか?

アプリには3つのトラックに分かれた90の短いコースと360のレッスンに加え、60問のPythonコーディング問題、20のガイド付きパターンプロジェクト、50枚の面接フリップカード、50問のクイズ、67項目のチートシートがあります。各トラックの最初のコースであるSQL Fundamentals Interview Questions、Python Warm-Up for DSA、Welcome to the Arenaは無料です。

面接を学ぶは無料ですか?

無料でダウンロードして利用できます。デイリー面接問題、各トラックの最初のコース、2問のコーディング問題、1つのガイド付きプロジェクト、フリップカード、クイズ、チートシート、1日に数回までのAIメンターの回答は無料です。Proでは、全90コース、全60問、全20プロジェクト、コース修了証、無制限のAIメンター回答を利用できます。Google Playでは面接を学ぶ、App StoreではJob Interview Prep & Codingとして掲載されています。

アプリには広告が表示されますか?

いいえ。App Storeの掲載情報にもあるとおり、無料版でも面接を学ぶにバナー広告、インタースティシャル広告、リワード動画広告が表示されることはありません。収益は任意で加入できるProサブスクリプションによるものです。

コンセプトが理解できないとき、AIメンターに助けてもらえますか?

はい。どのレッスンからでもAIメンターに自然な言葉で質問でき、Explain SimplyやStep by Stepなどのショートカットをタップすることもできます。コンセプトがどうしても理解できないときに役立つよう設計されており、無料ユーザーも毎日数回まで回答を受けられます。

就職面接だけでなく、競技プログラミングにも使えますか?

はい。Competitive Programmingは面接を学ぶの独立したトラックで、オンラインジャッジと判定結果、高速な入力と出力、解答が制限時間内に通るかの見積もり、Prefix Sums、整数論、Dijkstra、Fenwick TreeとSegment Tree、文字列アルゴリズム、ゲーム理論を扱います。

どのプラットフォームと言語に対応していますか?

面接を学ぶはApp StoreのiPhoneとiPad、Google PlayのAndroidで利用でき、インターフェースは22言語に対応しています。App Storeでは4+のレーティングを取得しています。

始める

次の面接には、答えの理由まで説明できる状態で臨みましょう

iOSとAndroidで、22言語に対応。無料で始められます。

App Store — 無料でダウンロードGoogle Play — 無料でダウンロード
最終確認日 · CoddyKitが公開 · プライバシーポリシー
iOSで利用できます。