LaTeX の履歴書:どんなものか、Overleaf での作り方
LaTeX の履歴書とは何か、Overleaf での作り方を順を追って説明。人気のテンプレート(Jake's、Awesome-CV、moderncv、RenderCV)と ATS での注意点も紹介します。
LaTeX の履歴書とは、Word や Google ドキュメントで手作業でレイアウトするのではなく、プレーンテキストの .tex ファイルとして書き、組版エンジンで PDF にコンパイルする履歴書(CV)です。出力が毎回同じに見える、ソースを git で管理できる、テンプレートが無料、という理由でエンジニアや研究者に好まれています。ほとんどの採用担当者は、どのツールで PDF が作られたかに気づきもせず、気にもしません。ただ、応募フォームの裏にあるパーサーは気にすることがあり、LaTeX の履歴書のガイドの多くはそこを飛ばしています。
このガイドでは、LaTeX の履歴書とは何か、Overleaf での作り方の手順、よく使われるテンプレート(2026 年 10 月に各 GitHub リポジトリで確認)、そしてキーワードの一致を失いかねないテキスト抽出の問題を、1 分でできるテストとともに説明します。
LaTeX の履歴書とは
LaTeX は、組版エンジン TeX の上に作られた文書作成システムです。\section{Experience} や \textbf{Design Engineer} のようなコマンドを使い、内容と構造をマークアップのファイルに書くと、コンパイラー(pdfLaTeX、XeLaTeX、LuaLaTeX)がそのファイルを PDF にします。書式の決定はプリアンブルとマクロにあるので、項目間の間隔を変えるのは、すべての項目をドラッグして回るのではなく、1 行の編集で済みます。
LaTeX の履歴書は、その仕組みを 1〜2 ページの応募書類に使ったものです。実際には、テンプレートを使うことになります。誰かがすでにスタイルを整えた .tex ファイルで、見本の内容を自分の内容に置き換えます。出力はほかと同じようにアップロードする PDF です。
エンジニアや研究者に好まれる理由
- 一貫したタイポグラフィ。 揃え、間隔、文字サイズがルールに従うので、手作業で微調整しなくてもページが仕上がって見えます。
- プレーンテキスト。 ソースは git に入ります。2 つの版の差分を取り、職種ごとにブランチを持ち、先月削除した箇条書きも取り戻せます。
- 無料で持ち運べる。 Overleaf はブラウザで動き、TeX Live はどの OS でも動きます。テンプレートはオープンなライセンスのコードとして共有されています。
- 研究者の CV。 長い業績一覧、BibTeX との連携、複数ページの CV は、LaTeX に実質的な競争相手がいない分野です。
- 仲間であることのしるしになる。 一部のエンジニアリングや研究の世界では、Computer Modern の履歴書の見た目が「仲間」として読まれます。それにどれだけの価値があるかは測れないので、同点のときの決め手程度に考えてください。
コスト
- 初日の学習コストと、30 日目の編集の遅さ。箇条書きを 1 つ変えるたびに再コンパイルが必要です。
- 画面上ではきれいに見えるテンプレートが、テキストとして抽出すると壊れることがあります(ATS の節を参照)。
- 応募フォームが
.docxを求めるとき、Word にきれいに変換する方法はありません。
Overleaf で LaTeX の履歴書を作る方法
Overleaf は、テンプレートのギャラリーを備えたブラウザ上の LaTeX エディターで、インストールは不要です。履歴書なら無料アカウントで十分です(Overleaf のプラン)。
1. テンプレートを選ぶ
Overleaf の CV と履歴書のテンプレートギャラリー を開いて選ぶか、Jake’s Resume や sb2nov のソフトウェアエンジニアの履歴書 のような有名なテンプレートに直接移動します。人気のテンプレートは次の節で比較します。
2. 自分のプロジェクトとして開く
テンプレートのページで Open as Template をクリックすると、Overleaf がプロジェクトを自分のアカウントにコピーします(Overleaf, Creating a project from a template)。エディターが開き、左にソース、右にコンパイルされた PDF が表示されます。
3. 編集する前にファイルを読む
履歴書のテンプレートには 3 つの部分があります。
\documentclassの行と プリアンブル。パッケージを読み込み、ページの余白、フォント、色を設定します。\resumeSubheadingや\cventryのような 独自コマンド のブロック。1 つの職歴や 1 つのプロジェクトのレイアウトを定めます。\begin{document}と\end{document}のあいだの 本文。見本の内容があります。
最初は前の 2 つには手を付けず、本文だけを編集します。
4. 内容を置き換える
まず名前と連絡先の行を差し替え、そのあとセクションごとに進めます。テンプレートが使っているマクロの構造は保ってください。揃えを一貫させているのはその構造だからです。テンプレートのマクロを使わない素の LaTeX の項目は、次のようになります。
\section{Experience}
\textbf{Design Engineer} \hfill Jun 2023 to present \\
\textit{Vellore Climate Systems, Pune}
\begin{itemize}
\item Redesigned the air handler frame from 62 welded parts to 41,
cutting unit cost 11\% and assembly time by 35 minutes per unit.
\end{itemize}
通常のテキストでは、5 つの文字の前にバックスラッシュが必要です。%、&、#、$、_ です。エスケープしていない % は行の残りをコメントにしてしまうので、「cut cost 11% and」はエラーも出さずに「and」以降を失います。会社名のエスケープしていない &(「Smith & Co」)は、揃えに関するエラーでコンパイルを止めます。
日本語で履歴書を書く場合は注意が必要です。pdfLaTeX は日本語を扱えないので、Overleaf のメニューでコンパイラーを LuaLaTeX に切り替え、プリアンブルで \usepackage{luatexja} を読み込むか、日本語に対応したテンプレートを使ってください。英文レジュメなら、多くのテンプレートがそのまま使えます。
5. 再コンパイルしてログを読む
Recompile をクリックします。PDF が更新されなければログを開きます。初めてのエラーの多くは、} の閉じ忘れ、上の 5 つの文字のどれか、リストの外の \item です。ログの最初のエラーを直して再コンパイルしてください。あとのエラーは最初のエラーの副作用であることがよくあります。
6. PDF をダウンロードする
Recompile ボタンの横のダウンロードアイコンを使うか、Menu、Download、PDF の順に選びます(Overleaf, Exporting your work)。ファイル名は Firstname-Lastname-Resume.pdf にします。
7. テキスト層をテストする
どこかにアップロードする前に、下の ATS の節にあるコピー&ペーストのテストを実行してください。読みやすい LaTeX の履歴書と、見た目がいいだけの履歴書を分けるのは、このステップです。
8. ソースを保管する
Menu、Download、Source の順に選ぶと、プロジェクトの zip が手に入ります。それを git のリポジトリに入れます。そこから TeX Live(pdflatex resume.tex)や Docker でオフラインのコンパイルもできます。sb2nov のリポジトリには、そのための Dockerfile が含まれています。
人気の LaTeX の履歴書テンプレート
以下の各項目は、2026 年 10 月に GitHub のリポジトリと README で確認しました。スター数は概数で、今後変わります。
| テンプレート | リポジトリ | ライセンス | エンジン | 補足 |
|---|---|---|---|---|
| Jake’s Resume | jakegut/resume | MIT | pdfLaTeX | 1 段組み。sb2nov/resume がもと。リポジトリはアーカイブ済み(最後のプッシュは 2024 年 8 月)で、README は Overleaf のテンプレートを「Not updated」としている。スター約 2,800。 |
| sb2nov/resume | sb2nov/resume | MIT(形式。見本のデータは作者のもの) | pdfLaTeX | 「ソフトウェア開発者向けの 1 ページ、1 段組みの履歴書」。Overleaf のテンプレート、Dockerfile あり、2026 年も更新中。スター約 7,000。 |
| Awesome-CV | posquit0/Awesome-CV | LPPL-1.3c | XeLaTeX | CV、履歴書、カバーレターを 1 つのテンプレートで。Font Awesome のアイコン付き。README は完全な TeX ディストリビューションを前提とし、xelatex でコンパイルする。履歴書とカバーレターの両方の Overleaf のリンクあり。スター約 28,700。 |
| moderncv | moderncv/moderncv | LPPL-1.3c | pdfLaTeX(academicons を使うなら XeLaTeX か LuaLaTeX) |
CTAN にあり TeX Live に含まれる文書クラスで、classic、casual、banking、oldstyle、fancy の 5 つのスタイル。このリポジトリは元の xdanaux/moderncv の保守されているフォーク。スター約 1,000。 |
| RenderCV | rendercv/rendercv | MIT | Typst | YAML を書いて rendercv render を実行すると PDF ができる。変更履歴によると、バージョン 2.0(2025 年 1 月)で LaTeX から Typst に切り替えたので、現在は LaTeX のテンプレートというより LaTeX の代替。テーマには classic、sb2nov、moderncv、engineeringresumes がある。2026 年 3 月時点でバージョン 2.8。スター約 17,700。 |
どれを選ぶか
- 1 ページ、ATS を優先、エンジニアリングやソフトウェア: sb2nov/resume、またはすでに持っているなら Jake’s Resume。どちらもプリアンブルで
\pdfgentounicode=1を設定しており、次の節で重要になります。 - 研究者の CV、カバーレター、アイコンや色: Awesome-CV か moderncv。どちらも順番どおりに抽出できますが、アイコンやサイドバーは、レイアウトを変えるたびにコピー&ペーストのテストが必要です。
- TeX を学ばずにプレーンテキストで入力したい: RenderCV。YAML から LaTeX 風の出力が得られ、テーマは上のテンプレートを模しています。
LaTeX の PDF と ATS の注意点
応募者追跡システム(ATS)が読むのは、PDF の見た目ではなくテキスト層です。LaTeX は見た目はすばらしく作ります。問題が起きるのはテキスト層で、その形は 4 つあります。
合字(リガチャ)
LaTeX のフォントの多くは、「fi」「fl」「ff」のような文字の組み合わせを 1 つの合成されたグリフに置き換えます。PDF にそのグリフから 2 文字への対応表がないと、テキスト抽出ツールは欠けた文字やおかしな文字を返し、「efficient」が「e cient」になったり、真ん中の 3 文字が 1 つの合字(ffi)に置き換わったりします。すると「financial」や「workflow」で検索した採用担当者は、ページにその単語があるにもかかわらず、あなたの履歴書を見落とします。
pdfLaTeX での解決策はプリアンブルの 2 行で、Jake’s Resume と sb2nov/resume にはすでに含まれており、ソースには「Ensure that generated PDF is machine readable/ATS parsable」(生成する PDF を機械で読める/ATS で解析できるようにする)というコメントがあります(sb2nov/resume, sourabh_bajaj_resume.tex)。
\input{glyphtounicode}
\pdfgentounicode=1
XeLaTeX と LuaLaTeX ではこれらのコマンドは当てはまらず、結果はエンジンと TeX Live のバージョンによって変わります。TeX Live のメーリングリストへの 2018 年の報告では、TeX Live 2017 で作った PDF にはあった合字の対応が、同じ文書を TeX Live 2018 の XeLaTeX でコンパイルすると失われ、LuaLaTeX ではどちらでも保たれていました(tex-live list, 2018 年 5 月)。教訓は、テンプレートの主張を信じるのではなく、これからアップロードする PDF をテストすることです。日本語の履歴書で LuaLaTeX を使う場合も同じです。
段組み、minipage、表
2 段組みの LaTeX のテンプレートは、minipage、multicol、tabular で作られています。PDF はエンジンが出力した順番でテキストを保存し、それが 2 つの段をまたいで 1 行ずつになることもあります。Roche の履歴書の解析に関する FAQ は、その影響を雇用主の側から説明しています。「ATS は左から右に読むようにプログラムされているため、段をまっすぐ横切って読むものもあります」(Roche, Resume Parsing FAQ)。同じページは、避けるべきものとして表とテキストボックスも挙げています。
Jake と sb2nov のテンプレートは、見出しの行(左に役職、右に日付)に tabular* を使っています。この場合、行は短く 1 行として抽出されるので害はありません。問題が始まるのは、スキルのサイドバー全体が職歴のセクションの横の段に置かれたときです。
アイコン
メール、電話、GitHub の Font Awesome のアイコンは、アイコンフォントのグリフです。抽出したテキストでは私用領域の文字として現れるか、消えてしまいます。アイコンの横のテキストが情報を伝えていれば問題ありません。アイコンだけでなく、テキストとして github.com/yourname を書いてください。貼り付けた出力で連絡先の行を確認します。
フォントとヘッダー
pdfLaTeX は標準の Type 1 フォントを埋め込み、上の合字の対策をすれば、Computer Modern や Latin Modern からのコピー&ペーストはうまくいきます。fontspec で珍しいフォントを読み込むなら、テストしてください。連絡先は fancyhdr のページヘッダーではなく本文に置いてください。理由は Roche が挙げているとおりです。「ヘッダーとフッターの情報は、ATS に完全に落とされることがあります。」テンプレートが hyperref を読み込んでいるなら、ファイルのメタデータにあなたの名前が入るよう、pdftitle と pdfauthor を設定してください。
LaTeX の PDF を 1 分でテストする方法
- 任意のビューアーで PDF を開き、すべて選択してコピーし、プレーンテキストのエディターに貼り付けます。
- 貼り付けたテキストで、ページにあるとわかっている「fi」「fl」「ff」を含む単語を検索します。「efficient」「workflow」「financial」「offline」など。
- メールと電話番号があること、セクションが期待どおりの順番で上から下に並んでいることを確認します。
- 別の確認として、コマンドラインで
pdftotext resume.pdf -を実行します(Poppler の一部で、多くの Linux のパッケージマネージャーや macOS の Homebrew で入手できます)。出力はパーサーが見るものに近くなります。 - その出力で求人の重要な用語を検索します。ページにはあるのに出力にない用語があれば、応募する前にソースを直してください。
ここまでの内容はすべてテキスト抽出の話で、自分で確かめられます。テンプレートが特定の ATS を「通過する」という主張は外からは確かめられず、この記事ではそうした主張はしません。
LaTeX を使わずに LaTeX の見た目を
Resume Matcher は、ダウンロードして自分のマシンで動かす無料のオープンソースのアプリ(Apache 2.0)です。自分の AI モデル(Claude、ChatGPT、Gemini、DeepSeek、または Ollama 経由のローカルモデル)を使ってマスター履歴書を求人内容ごとにカスタマイズし、コードの安全策が勤務先、役職、日付を固定し、モデルが作り出した数値を元に戻します。ホスティングされたウェブサイトはありません。ATSチェック のタブは、アプリが書き出す PDF に対して上のテストの一種を実行します。単純な ATS のテキスト抽出ツールと同じやり方でテキストを読み戻し、選択可能なテキスト、読み取り順、欠けたセクションを報告します。Overleaf でコンパイルした PDF はチェックできません。
ビルダーには 7 つのテンプレートがあり、そのうちの 1 つ LaTeX は、古典的な LaTeX の履歴書の見た目を持つ HTML のテンプレートです。ほかの 6 つと同じく、ヘッドレスの Chrome ブラウザで本物のウェブページのテキストから印刷したテキストベースの PDF を、A4 または US Letter で書き出し、余白、間隔、フォントを調整できます。.tex ファイルは作りません。コンパイラーなしで見た目がほしいなら最速の方法で、ソースがほしいなら下の LaTeX 版か上のテンプレートを使ってください。プレビューは PDF テンプレートのページ(英語)にあります。
同じ 7 つのデザインを LaTeX のテンプレートで
アプリの 7 つのデザインはすべて、resume-matcher-templates に独立した LaTeX のプロジェクトとして Apache 2.0 で公開されています。どれも pdfLaTeX でコンパイルでき、シェルエスケープもフォントのダウンロードも不要です。Overleaf で使うには:
- リポジトリから 1 つのテンプレートの ZIP をダウンロードします。GitHub で ZIP のファイルページを開き、Download raw file を使います。
- Overleaf で New project → Existing project (.zip) を選び、アップロードします。
- メインの文書を
main.texに、コンパイラーを pdfLaTeX に設定します。 resume.texの見本の内容(example.comのプロフィールのリンクを含む)と、main.texの PDF のタイトルと著者を置き換えます。
各プロジェクトには 3 つのファイルが一緒に必要です。main.tex、resume.tex、resume-matcher.sty です。1 つの .tex ファイルを空のプロジェクトに貼り付けても、コンパイルできません。2 段組みのデザインには、ほかの 2 段組みのレイアウトと同じ抽出の注意点があるので、PDF で上のコピー&ペーストのテストを実行してください。これらのテンプレートは pdfLaTeX 用なので、日本語の本文にはそのままでは使えません。
どちらの方法でも、テンプレートは小さな部分です。履歴書をリストの上に押し上げるのは、求人ごとに内容をカスタマイズすることです。方法は 求人内容に合わせて履歴書をカスタマイズする方法 に、語彙の作業は 履歴書のキーワードガイド にあります。
よくある質問
LaTeX の履歴書は ATS に強いですか?
そうなりえます。pdfLaTeX と \pdfgentounicode=1 でコンパイルした 1 段組みのテンプレートは、きれいなテキストとして抽出されます。アイコンフォントを使った 2 段組みのテンプレートはそうならないかもしれません。どちらなのかは、上のコピー&ペーストのテストでわかります。
採用担当者は、履歴書が LaTeX で作られていることを気にしますか? 彼らが見るのは PDF です。エンジニアリングや研究の読み手の中にはスタイルに気づく人もいますが、ほとんどの読み手は考えもしません。ツールよりも、内容ときれいな抽出のほうが重要です。
pdfLaTeX、XeLaTeX、LuaLaTeX のどれを使えばいいですか?
テンプレートの README に従ってください。Jake’s と sb2nov は pdfLaTeX でコンパイルし、Awesome-CV は XeLaTeX でコンパイルします。moderncv は、academicons を加えない限り pdfLaTeX で動きます。日本語を含むなら LuaLaTeX です。Overleaf ではプロジェクトのメニューでコンパイラーを切り替えられます。
LaTeX の履歴書を Word に変換できますか?
レイアウトを保つ信頼できる方法はありません。応募フォームが .docx を求めるなら、同じ内容の Word 版を並行して持つか、Word を書き出せるツールでその版を作ってください。
求人ごとに 1 つの版を保つには?
プロジェクトを git に入れ、プリアンブルを共有しながら、求人ごとにブランチか .tex の写しを使います。RenderCV の YAML の入力なら、同じ流れで差分が取りやすくなります。Resume Matcher はビルダーを通じて同じことをし、マスターと、応募ごとのカスタマイズした写しを保ちます。
このガイドが役に立ったら、GitHub の Resume Matcher にスターを付けてください。開発しているのは Saurabh Rai です。GitHub、X、LinkedIn でフォローできます。
[この記事は AI の助けを借りて下書き、翻訳、整形しました。製品に関する情報は Resume Matcher のソースコードと照合して確認し、外部の情報源は引用箇所にリンクしています。]
役に立ちましたか? GitHub で Resume Matcher にスターを付けて、開発をフォローしてください