概要
- IPAが展開している「i コンピテンシ ディクショナリ」の簡易ビュアーを作ろうと悪戦苦闘した際の記録
- 今年から勉強し始めたPythonで何か作ろうと思い立ち、情報量が多そうなWebフレームワークのDjangoを選択
- どんなシステムが良いかと考えた結果、エンジニアのスキル把握/評価を行うことができるアプリを考案
- 調べてみるとIPAがすでに出していた
- さらに調査、直接問い合わせてみるとアプリ作っても良いよと言われたので作ることに決定
i コンピテンシ ディクショナリとは
- その名の通り辞書
- 詳細は本家を見ればわかりやすく書いてあるのでここでは要約のみ
要約
- 企業は多様な業務を遂行するために適切な能力を持った人材を確保、育成しなければならない
- 「適切な能力」は適切に測定されなければならず、何らかの指標が必要
- 業務遂行能力をタスク、業務遂行に必要な技能をスキルと定義し可視化できるようにした
- この業務には全部で○個のスキルが必要で、それぞれ現在の習熟度はこのくらいだから業務遂行可能という具合
- 項目は変更することができるので企業ごとの基準に合わせたカスタマイズも可能
- 見てるとシステム化したくなるような項目の多さと規則正しさ
- 各項目の関連図(完全にER図)も公開されている
-
https://icd.ipa.go.jp/icd/icd/download
- データセットよりダウンロード可能
システムについて
構成
- 環境
- Ubuntu14.04
- postgresql
- nginx
- gunicorn
- docker-compose
- 使用言語、フレームワーク
- python3
- django1.8
- Materialize
- ソース管理
- Git
- bitbucket
開発
都合により以下のテーマで色々覚書含め別記事を書く予定です
- pythonをwebで使う(python3 + gunicorn + nginx)
- dockerとdocker-compose
- Django画面遷移の基本
- DjangoのMTV(Model Template View)について
- Djangoのフォーム生成機能(ModelとModelForm)
- bitbucketとgithub比較
開発中の画面
- エンジニアの職種に対応したスキルの一覧を出したいためまずはユーザーになりたい職種を選択してもらうというところ
その他
なぜDjangoか
- Python使い始めたばかりの自分には情報が豊富そうで魅力的に感じたので
- 豊富な情報量が仇となり色々詰まったけれどそのぶん色々知れた
- このあたりもまとめたいと思います
掲載について
- IPAのHPに配布OKらしき文言はあるものの、確定的ではなかったため事前にメールすると、大丈夫ですとの回答
- 目標があったほうが捗るためありがたく使わせていただきました。まだ未公開なのでPart.2では公開したい