GitHubの機能をフルに使って職務経歴書の継続的インテグレーションを実現する
GitHub で職務経歴書を公開 & 継続的に改善していく環境を作ったのでその紹介です。
リポジトリはこちらです。
なぜ職務経歴書を?
今のチームがとても好きなので転職の予定はないのですが、「安定しているときこそ職務経歴書をまとめておくべき。本当に職務経歴書が必要なときはメンタルが消耗していて書く余裕はない」という話を最近知り合いから聞き、それは確かにと思い書き初めました。どうせ書くなら何か面白いことをしたいなと GitHub に公開 & CI 環境の構築をやってみました。
機能紹介
🌐 GitHub Pages で Web ページとしての公開
Markdown + GitHub のファイルビューでも良いのですが、より見やすいほうが好ましいですよね。
GitHub の無料ホスティグ GitHub Pages を使って Web ページとして公開しています。
GitHub ページのデザイン はdocs/_config.yml
で設定しています。今は theme の設定だけですが、より細かい調整が可能です。
✨ textlint での文章校正
職務経歴書でjavascript
や、JAVA
とか書かれていたら「大丈夫か..?」と思いますよね。
大事な書類の typo を防ぐために、textlint による文書校正を行っています。husky による pre-commit フックでの実行 & GitHub Actions での push 時の実行環境も整備しています。
自動修正にも対応しているので Warning や Error が出た場合は以下を実行してみてください。
$ yarn lint --fix
📝 md-to-pdf での PDF 生成
Web で職務経歴書をみてもらえればそれで完結なんですが、企業側としてはデータ or 紙で欲しいという場合もあると思います。
その対応のために md-to-pdf での Markdown から PDF への変換機能を追加しています。
$ yarn build:pdf
md-to-pdf は内部で Puppeteer を使用しています。PDF のデザインは、CSS で細かい調整が可能です(例: ゴシック体から明朝体への変換など)。
調整する場合は、pdf-configs/style.css
、pdf-configs/config.js
を編集してください。
実際に出力される PDF はこのようなものです。
結構綺麗に出力されているのではないでしょうか。
kawamataryo/resume/releases/download/v0.1.6/resume.pdf
🛠GitHub Actions でのリリースビルド
GitHub 付属の CI 機能 GitHub Actions を使って、Release の自動作成と PDF の自動ビルドを行っています。
tag 付きで push したときに Workflow が流れて以下のように Release の作成、自動ビルドされた PDF ファイルの assets への登録されます。
PDF を共有するときはこちらの画面を説明すれば良いのでとても手軽なのではと思っています。
Release 情報で更新日・バージョンも明確です。
📅 GitHub Actions での更新リマインダー
職務経歴書を書いたは良いものの更新を忘れがちになりますよね。
GitHub Actions のスケジュール実行機能を利用して、3 か月ごとに更新の Issue を自動作成することで職務経歴書の更新を促します。
Issue はクローズしたくなるのがエンジニアの性なので、職務経歴書アップデートへの良い圧力になるのではと期待しています。
おまけ
ここまで紹介した機能をすぐに自分用に展開できる GitHub template も公開しています。もし職務経歴書の GitHub 公開に興味があればぜひ使ってみてください!
Use this template
ボタンをクリックすると、自分の新しいリポジトリとして作成できます。
GitHub template の詳細はこちらの記事に以前書きました。
GitHubのTemplate Repository機能のすゝめ - Qiita
終わりに
以上、「GitHub の機能をフルに使って職務経歴書の継続的インテグレーションを実現する」でした。
この環境を使って職務経歴書を継続的にアップデートしていきたいです。
(何もしていないと何も書けないので、まず業務で実績を作っていかないと..💪)
Discussion