paiza開発日誌

IT/Webエンジニア向け総合求人・学習サービス「paiza」(https://paiza.jp ギノ株式会社)の開発者が開発の事、プログラミングネタ、ITエンジニアの転職などについて書いています。

ITエンジニア向け・受かる職務経歴書の書き方【例文付き】

f:id:paiza:20180705190249j:plain
Photo by Markus Spiske
f:id:paiza:20140916135428p:plainこんにちは、谷口です。

転職活動をしていて「職務経歴書や転職サイトに登録するキャリアシートを書くのが苦手…」「何をどう書いたらよいのかわからない…」という人は多いかと思います。

paizaでも、職務経歴書で悩んでいる応募者の方から文面を見せてもらうことがありますが、職務経歴書で落とされてしまう人は、その経歴に問題があるわけではなく、書き方に問題があるケースがほとんどです。

今回は、いろいろなパターンの職務経歴書を見てわかった、職務経歴書を書くときのポイントと、受かる職務経歴書と落ちる職務経歴書の事例についてお話します。

職務経歴書やキャリアシートを書くのが苦手な方の参考になればと思います。

■職務経歴書で重要な項目

職務経歴書やキャリアシートにおいて、特に重要かつ書くのが大変な項目は下記の3つです。

  • 職務経歴
  • 自己アピール
  • 目指すキャリア

■職務経歴

職務経歴書というぐらいですから、一番大事なのは職務経歴です。

一般的な選考では、書類選考→一次面接→二次面接…と選考過程が進んでいくわけですが、1人の書類を見る時間は10秒から長くても1分ほどで、NGと判断された応募者はどんどん落とされていきます。なかでも職務経歴の内容がわかりにくいと、その時点で落とされてしまいます

◆職務経歴を書くときのポイント

職務経歴は、自分が「こんな仕事をやってきたからこういうことができます」と、根拠を持って伝える項目です。

ほかの職種でも言えることですが、エンジニアの場合は特に「課題発生→原因調査→対策検討・実施→結果」といった流れが書けるエピソードを持ってくるとよいですね。

◇落ちる例

【業務内容】
金融・不動産関連のWebサイト・管理画面の開発・保守に3年間従事。要件聞き取りから設計・デザイナーへの指示・コーディング・テスト・リリースまでを基本的に一人で担当。

【実績】
・業務改善への積極的な取り組み
業務の標準化や自動化に積極的に取り組みました。開発環境構築や提携作業手順のマニュアル化、コーディング規約の整備、Redmineの導入、デプロイ作業のバッチ処理化についての導入を主導し貢献しました。

・ユーザー視点に立った提案
顧客であるグループ企業からの依頼にそのまま従うのではなく、ユーザー視点に立ってよりよい提案を行うよう意識しました。

・リーダー経験
2年目からは担当チームのサブリーダーとして貢献しました。

「Github、Redmine、JIRA etc…を導入しました」「チームリーダーでした」「ユーザー目線があります」みたいな文を並べてしまう人(そして面接で言う人)はすごく多いですが、それだけでアピールにはなりません。

「コミュニケーション力があります」とだけ書かれていても「具体的にどういうこと?」と思いますよね。同様に、「〇〇をしました」というだけでは、どんな状況で何のために実行したのか、結果はどうなったのか…といった具体的な話がわからないからです。

上記の例の場合、職務経歴書で落とされるか、通過しても面接で「いろいろなツールがありますがなぜRedmineにしたのですか?他のツールの方がよかったのでは?Redmineを導入してどんな結果が出たのですか?」「どんな現場のどんな開発チームで、具体的にはどんなリーダー業務をやっていたのですか?リーダーとして、チームのどんな課題を解決した経験はありますか?チームをまとめるに当たって何が重要だと思いますか?」などと痛いところを突っ込まれてしまうことが予想されます。

「何がアピールになるかわからないからあれもこれも…」と盛って書きたくなる気持ちはわかりますが、面接では、職務経歴書で書いた内容をもとに話したり質問されたりするため、突っ込まれて困る話はなるべく書かないほうがいいでしょう。

◇受かる例

上記の例の人だと、特に自分が主体的に実行できた項目に絞って、「課題発生→原因調査→対策検討・実施→結果」の流れが簡単にでもわかるように書けるとよいでしょう。

【エンジニアリングだけでなく、体制の構築・安定化に貢献】
2年目より配属された部署でサブリーダーとして下記を実行しました。
・Github上に環境構築マニュアルを整備
 →業務が標準化され、新入社員のキャッチアップ時間も半減しました。
・Redmineを導入し、プロジェクト管理体制の構築
 →金銭的問題とオンプレ環境での構築が必須だったため、Redmineを採用。
  プロジェクト管理が人力で行われていた状況から、プロジェクト管理ツールの導入・現場での定着までをリードしました。
・デプロイ作業の自動化


以前は各業務の属人性が高く、業務の停止や遅れが頻発していた状態でしたが、上記の対策実施後は遅延ほぼ0の体制に成長させることができました。

◇落ちる例

・Aサービスのバックエンド開発
【期間】 2012年~2018年
【開発環境】 Java、MySQL、AWS、Github……
【メンバー】10名
【役職】サブリーダー
【業務】主に開発・運用に従事

こういった書き方で終わっている方も多いですが、具体的にどんな開発業務に携わっていたのか、どんな経験やスキルがあるのかがわかりづらいため、ひと目でスルーされてしまいます。

やはり小さなことでもよいので、自分で課題を見つけて解決しようと取り組んだ経験を思い出して、もっと具体的な話に落とし込んだほうがよりよい職務経歴書になります。

こういう話をすると「課題解決した経験なんてない~」と言う人も多いですが、そんなことはないはずです。課題というのは、要は「困りごと」です。仕事をしていて「ちょっと困った経験が一度もない人」なんていないはずです。特にエンジニアの場合、細かいトラブル解決や不具合対応や改善を行った経験がある人は多いですよね。細かい業務も振り返りながら書き出してみて、そこからまとめていきましょう。

◇受かる例

Aサービスのバックエンド開発を6年ほど担当する中で、以下のような業務を実行してきました。

・メール配信バッチ処理の高速化・効率化
 バッチ処理が終わらない問題があったのと、バッチ処理速度が遅いせいでユーザーへのメール配信にも遅延が発生していたため、クエリの最適化(n+1の解決、バルクインサートなど)や並列化を実行し、バッチ完遂・メール遅延なしの状態を実現しました。

・サーバダウン問題の改善
 月1回は必ずサーバダウンが発生する状況を解決しました。
 まずプロファイラー(Mackarel)の提案・導入を行い、メモリやCPUの原因切り分けを可能な状態に改善。その後プログラムの最適化を行い、サーバダウンはそれ以降発生していません。
 ツールの検証から提案・導入、ツールデータから実際の改善まで全て主導して実行しました。

エンジニアとして課題を分析し、適切な解決に向かって取り組める人であることが伝わる内容になったかと思います。

また、細かい開発環境やツールの仕様経験については、開発スキルとして別の欄を設けてまとめて記載したほうがわかりやすくなり、的確にアピールできます。

ちなみにpaizaキャリアシート作成画面では、項目ごとにヒントになる記入例も出てきますから、参考にしてみてください。

paizaキャリアシート作成画面こちら

■自己アピール

自己アピールは職務経歴のまとめに近い内容になるかと思います。職務経歴が「こういう仕事をしてきました」という内容になっているわけですから、自己アピールも「仕事を通してこのスキルを身につけたので、今後はこういうことに活かしたいです」と、一続きの内容になっていたほうが説得力が出ます。

また、未経験からエンジニアになりたい、B2Bの受託開発からWeb系の自社開発に行きたい…などと未経験分野への転職を考えている人は、制作物を公開するのもよいアピールになります。

◇落ちる例

(何の脈絡もなく)コミュニケーション能力や自主性があります。

(勉強している内容や制作物の記載はないけど)やる気だけは誰にも負けません!

自己アピールは新たに考える必要があるものではなく、職務経歴と一続きになっていれば説得力が出る項目です。逆に、自己アピールで初めて職務経歴と特に関連性のないアピールがあっても、根拠や一貫性のない自己アピールになってしまいます。

◇受かる例

(職務経歴書にサーバサイド開発の実績を書いた上で)Webサービスのサーバサイド高速化・効率化においては多数の経験・実績を出してきました。今後はより高負荷な環境でチャレンジすることでサーバーサイド開発のスキルを高めつつ、フルスタックに対応できるエンジニアを目指していきたいと考えています。

自己アピールで重要なのは、「次にやりたい仕事」へ向けてのアピールです。逆に言えば、関係のないアピールは不要です。

また、進みたい方向性によってアピールすべき内容は変わります。

現職も応募先も同じような業務分野で、ある程度経験がある分野での転職を目指す場合は、職務経歴をしっかり書いた上で、上記のように「前職で身につけたスキルを次の仕事でも活かしたい」とアピールをしたほうがいいでしょう。

逆に未経験分野に進みたい場合は、「自分でここまで勉強しました」「独学でこんなサービスを作ってみました」といったことが言えると、実務経験がなくても必要な技術や業務内容を把握していること、この分野の開発がしたいという熱意があることをアピールできます。

■目指すキャリア

目指すキャリアについては、転職サイトのキャリアシートなどで項目が設けられている場合が多いため、考えておきましょう。(面接でも聞かれます)

次にどんな企業に転職して何がしたいか…というのはもちろん、中長期的な目標も同じ道筋の上にあるとベストですね。

◇落ちる例

プログラミングさえできればよいので、サービスや会社はなんでもいい。

(B2Bのビジネスシステムを作っている企業への応募なのに)私は昔からゲームが好きでゲーム開発事業への憧れが強いため、将来的にはゲームエンジニアを目指しています!

まず、エンジニアにプログラミングをさせるためにサービスを運営している企業はありません。応募先が末端の下請企業などでない限り、企業はエンジニアに「ただコードを書くこと」ではなく「プログラミングを手段として課題を解決してくれること」を求めています。

「プログラミングさえできればどんな仕事でもいい」と言っても、「プログラミングが好きで技術志向の人なんだな」とは思われません。むしろ「単純にコード書いていたいだけで、技術的に広がりのない人だな」とマイナスに思われてしまいます。

また、やりたい仕事と応募先がつながっていない場合も「なんで応募したの?」「うちじゃないほうがいいでしょ…」と思われてしまいます。

◇落ちる例

(職務経歴にはB2Bの受託開発しか経験がないって書いてあるけど)次はWeb開発ができる企業に進みたいと考えています。

転向したいという目的があるのはよいのですが、もう少し補足がないと、「B2Bの経験しかないみたいだけど、どうやってやっていくつもりなの?」と思われてしまいます。

◇受かる例

将来的にはWebサービス開発の仕事がしたいと考えています。現在はB2Bの受託開発経験しかなく、Web開発に必要な技術の学習に取り組んでいますが、前職では実務として経験できるフィールドがないため、まずはWeb開発に携われる企業へ転職をして、経験を詰みたいと考えています。

次の転職と将来的な目標がつながっていて、前の例よりは納得感のある内容になりました。

■まとめ

面接では職務経歴書をもとに質問されるので、しっかり書いておくことができれば、その後の選考も通過しやすくなります。

また、転職サイトにキャリアシートを登録しておけば、企業からスカウトが来る場合もあるため、書いておいて損はありません。

paizaでは、優秀なエンジニアの方がもっと正当な待遇・評価を獲得した上でキャリアアップを実現できるよう「年収保証スカウト」を実施いたします。

paizaの年収保証スカウトには

  • 通常では内定時に提示されるオファー額をスカウト時に提示
  • 実際のオファー額も、スカウト時に提示された年収の95%以上を保証(業界最高保証率)
  • テックリードやエンジニアマネジャーなど600万円以上のオファーのみ

といった特徴があります。

paizaの年収保証スカウトについて詳しくはこちら


また、年収保証スカウト実施期間中、このサイトを使って応募し、転職された方には、お祝い金として10万円分のAmazonギフトカードもしくはApple Storeギフトカードをお贈りいたします。

転職お祝い金について詳しくはこちら


ぜひこの機会にキャリアシートを登録してみてください!

paizaのキャリアシート作成画面こちら


※もちろんこれまで通り、事前の書類選考なしで必ず面談できる選考も実施しています。
paiza転職



 

paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。

詳しくはこちら

paizaラーニング

そしてpaizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。

スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。

詳しくはこちら

paizaのスキルチェック

初心者向け・Pythonの仮想環境venvとPipenvによるパッケージ管理についての解説

f:id:paiza:20180703153459j:plain
秋山です。

Pythonに限った話ではないですが、プログラミングをしていると、使っているライブラリのバージョンを変えたいけど別のライブラリとの依存関係があって難しい…みたいなことってありますよね。

こういったバージョン由来のトラブルやつらみをある程度カバーして助けてくれるのが、仮想環境とパッケージ管理です。

仮想環境とパッケージ管理を使いこなせるようになれば、少なくとも「バージョンの依存関係であっちを入れたらこっちが動かなくなった!」とか「Pythonのバージョンを上げたらこっちのパッケージが動かなくなった!」みたいなトラブルからは解放されます。

今回はPython初心者向けに、仮想環境とは何ぞという話と、venvとpipを使った標準的なPythonにおけるパッケージ管理方法、さらにPipenvを使ってもう少し楽に管理する方法などについて書いていきます。

■venvとpipを使ってみる

Pythonで開発をしていると、使おうと思ってpip installしたライブラリが固定のバージョンにしか対応していないとか、このシステムでは古いバージョンを使いたいけど、また別の開発では最新版を使いたい…というように、バージョンに翻弄されてしまうことがよくあります。

そこで、固定のバージョンやライブラリ類が使える閉じた環境(=仮想環境)を使います。

この仮想環境をパッケージ管理しようと思ったら、仮想環境のツールに付随して特定のバージョンで固定しておく…といった方法が多いかと思います。単純にpipでrequirements.txtを用意しておくのが、最も単純なやり方ですね。

特に仮想環境を使ったりパッケージ管理したりしていない場合は

pip freeze > requirements.txt

で入っているライブラリ類を全て出力することができます。

出力されるファイルはそれぞれの環境で異なるかと思いますが、たとえば

numpy==1.14.2
opencv-contrib-python==3.4.0.12
opencv-python==3.4.0.12
pandas==0.19.2
pandocfilters==1.4.1
pdf2image==0.1.10
pexpect==4.2.1
pickleshare==0.7.4
Pillow==5.0.0

みたいな感じで出てきます。numpy==1.14.2というのはnumpyのバージョン1.14.2が入ってますよ~という意味です。

このtrequirements.txtを別の環境へ持っていって

pip install -r requirements.txt

とするだけで、requirements.txtのライブラリがまるっとインストールされます。便利ですな。

ただ、複数のプログラムを取り扱っていると「今回はあのライブラリは必要ない」とか「あのライブラリだけバージョンを変えたい」といった感じで、環境を分けたいなあというケースが増えてきます。

そこで仮想環境の出番です。

まずは、Python3で推奨されているvenvを使ってみましょう。

python3 -m venv test_python

とすると、 test_pythonという仮想環境が作られます。できた仮想環境に入ってみましょう。

 source test_python/bin/activate

とコマンドを打てば、仮想環境に入れて、 (test_python) とターミナルの頭に付くようになるかと思います。

仮想環境から抜けるには

deactivate

と打ちます。


仮想環境が本当にちゃんと分離しているのか確認するために、もう一つ仮想環境を作ってみましょう。

python3 -m venv test_python_sub

これで、test_python と test_python_sub という2つの仮想環境ができました。

それぞれがちゃんと分離しているのか確認してみましょう。

 source test_python/bin/activate

pip install flask

pip freeze > test_python_requirements.txt

deactivate



 source test_python_sub/bin/activate

pip install bottle

pip freeze > test_python_sub_requirements.txt

deactivate



cat test_python_requirements.txt

とすると、出力は

click==6.7

Flask==1.0.2

itsdangerous==0.24

Jinja2==2.10

MarkupSafe==1.0

Werkzeug==0.14.1

となり、pip installでflaskを入れたことや、その依存関係がtest_python_requirements.txt に書き出されます。

cat test_python_sub_requirements.txt

とすると、出力されるのは

bottle==0.12.13

だけです。bottleは依存関係がないので、単独でインストールされています。


このようにすれば、 source */bin/activate 〜 deactivate で環境を分離できて、不要なライブラリやバージョンの不一致などによるトラブルを避けられます。

またvenvを使うと、OS標準で使っているPythonから隔離した状態でもパッケージ管理ができます。

仮想環境の取り扱いについて、詳細は以下の公式ドキュメントに書かれています。

28.3. venv --- 仮想環境の作成 — Python 3.6.6 ドキュメント

公式的には、venvで仮想環境を作り、pipでいい感じにパッケージ管理しましょう…ということが推奨されています。

■Pipenvを使ってみる

venvとpipだけでもよいのですが、それだけだとかゆいところに手が届かない場合もあるなぁということで、今回はPipenvも試してみます。

Pipenv: 人間のためのPython開発ワークフロー — pipenv 2018.7.1 ドキュメント

人間のためのPython開発ワークフロー…というだけあって、venv・pipだけだと管理しきれない部分もフォローしてくれます。

pip install pipenv

で入ります。

mkdir pipenv_test

cd pipenv_test

pipenv install

とすると、Pipenvの仮想環境や設定ファイルが吐き出されます。

pipenv shell

で、venvのsource */bin/activate と同じように仮想環境のシェルに入ることができます。

Pipenvでパッケージ管理をする場合は、pipではなくpipenvでパッケージのインストールを行います。

pipenv install flask

とすると、Pipfile.lock(requirements.txtと同じようなもの)には

[packages]

flask = "*"

が追記されます。バージョン指定が無いので "*" となっていますが、バージョン指定しても大丈夫です。

Pipfile.lockには

"default": {
"click": {
"hashes": [
"sha256:29f99fc6125fbc931b758dc053b3114e55c77a6e4c6c3a2674a2dc986016381d",
"sha256:f15516df478d5a56180fbf80e68f206010e6d160fc39fa508b65e035fd75130b"
],
"version": "==6.7"
},
"flask": {
"hashes": [
"sha256:2271c0070dbcb5275fad4a82e29f23ab92682dc45f9dfbc22c02ba9b9322ce48",
"sha256:a080b744b7e345ccfcbc77954861cb05b3c63786e93f2b3875e0913d44b43f05"
],
"index": "pypi",
"version": "==1.0.2"
},

というように、依存関係のあるパッケージのバージョンやハッシュ値などが管理されています。

Pipfileと同様に、別の場所でPipfile.lockを使ってパッケージをインストールして使うこともできます。


ちなみにPipfileをただ別の場所に持っていって pipenv install とすると、 Pipfile から各種パッケージとPythonの仮想環境がインストールされて、さらにPipenvで指定されたバージョン(指定されていなければ最新版)を固定したPipfile.lockが作られます。

pipenv installでPipfileを無視してPipfile.lockのみを参照してパッケージをインストールしたいとき(要するにバージョン固定したいとき)には、 --ignore-pipfile オプションをつけることで実行できます。


あと、普通の requirements.txt がほしい場合は(あまりないかと思いますが、pipenvを使っていない環境に同じバージョン入れたい時とか)

pipenv lock -r

とするとpip freezeと同じ結果が得られます。pipenv shellなどで入るとpip freezeでも同じ結果が得られますが。

また、pipenvではPythonのバージョン管理もできます。

pipenv --python 3.6.2

とすると、Pipfileに

[requires]

python_version = "3.6"

というふうに、3.6のバージョン指定ができます。

ここで、たとえば先日出た3.7を指定してみたい~というときは、 "3.6" を "3.7" に書き換えて

pipenv --rm

pipenv install

とすれば、Pythonのバージョンが切り替わった仮想環境になります。

また、pipenvには pipenv check というコマンドがあり、PEP 508に従っているかどうかとsafetyを使った脆弱性のチェックをしてくれます。

公式ドキュメントに例が出ていますが、たとえば django = "==1.10.1" というふうにDjangoの脆弱性があるバージョンを指定していると、pipenv checkしたときに脆弱性が見つかったぞという警告などを表示してくれます。

Pipenvの進んだ使い方 — pipenv 2018.7.1 ドキュメント


あとは、pipenv graph とすると依存関係をこんなふうにいい感じに表示してくれたりします。

Flask==1.0.2

  - click [required: >=5.1, installed: 6.7]

  - itsdangerous [required: >=0.24, installed: 0.24]

  - Jinja2 [required: >=2.10, installed: 2.10]

    - MarkupSafe [required: >=0.23, installed: 1.0]

  - Werkzeug [required: >=0.14, installed: 0.14.1]

pandas==0.23.1

  - numpy [required: >=1.9.0, installed: 1.14.5]

  - python-dateutil [required: >=2.5.0, installed: 2.7.3]

    - six [required: >=1.5, installed: 1.11.0]

  - pytz [required: >=2011k, installed: 2018.5]

scipy==1.1.0

  - numpy [required: >=1.8.2, installed: 1.14.5]

たとえばPandasとScipyはNumpyを参照しているんだな、といったことがひと目で分かって便利です。

■まとめ

というわけで、Pythonの仮想環境&バージョン管理に関する初歩的な話でした。

最近Pythonを使うようになったばかり…という人は、とりあえず公式推奨の venv + pip を使うのがいい気がする…。

ほかにもPythonや機械学習などに関する記事をいろいろ書いているので、興味のある方は見てみてください。
paiza.hatenablog.com
paiza.hatenablog.com


「まずはPythonでプログラミングできるようになりたい!」という方は、プログラミングが動画で学べる「paizaラーニング」の「Python入門編」(今年から全編無料になりました)から始めてみてください。先日新しく「Python入門編7: 関数を理解しよう」が追加されました。

paizaラーニング



 

paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。

詳しくはこちら

paizaラーニング

そしてpaizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。

スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。

詳しくはこちら

paizaのスキルチェック

【20卒】就活で有利になる!ITエンジニアになりたい人向け・インターン先の選び方

f:id:paiza:20180703113856j:plain
Photo by hackNY.org
f:id:paiza:20140916135428p:plainこんにちは、谷口です。

2020年卒業予定者の皆さん、インターンシップには参加しましたか?

インターンに参加しておくと、先々の就活をスムーズに進めやすくなります。就活生や内定者の方で「もっと早くからインターンに参加しておけばよかった…」と後悔している人は毎年少なくありません。

とは言え、「インターンで何ができるのか」「どのようにインターン先を選ぶべきか」などがわからないまま応募するのは難しいですよね。

そこで今回は、インターンとは何なのか、参加するとどんなメリットがあるのか、インターン先はどのように選べばよいのかなどについてお話しします。

■インターンとは?

インターンとは、学生が企業などの中で一定期間働き、就業体験ができる制度です。日本では、大学であれば主に3年の長期休暇中、就活が本格化する前あたりの時期における実施が一般的です。

◆主なインターンの形式と得られるもの

インターンの内容は企業ごとにさまざまですが、主に以下の形式のものがあります。

◇説明会形式

インターン説明会の場合、その名の通り説明会形式で、企業の事業内容や職種ごとの業務内容、実際に働いている人のお話などが聞けるインターンになります。

下記の実務やチーム開発を伴うインターンの前に開催される場合も多く、通常一日(数時間)で終わります。


【得られるもの】

  • 業界や企業情報、事業内容や業務内容に関する情報など

説明会がメインのインターンは、気軽に参加をして、企業情報を集めることができるため、

  • IT業界やエンジニアの仕事についてよくわかっていないのでまずは情報収集をしたい
  • ゲーム開発企業とWebサービス開発企業で迷っている・自社開発と受託開発で迷っているなど、興味のある分野が複数ある
  • 興味のある企業が複数あるけど、比較できる情報がない

といった方に向いています。

インターン説明会で情報を集めておくと、企業ごとにどんな事業や業務をおこなっているのか、そのなかで自分がどんな仕事に興味を感じるかを考えるのに役立ちます。そのため、なるべく複数社に参加した方が、情報の比較・検討がしやすくなります。

◇ハッカソンやゲームジャムなどのチーム開発形式

たとえば「参加者同士でチームを組んで、課題に沿ったゲームを作り上げて発表する」などといった内容のインターンがこれに当たります。

期間は一日で終わるものから、一週間やそれ以上かけるものもあります。


【得られるもの】

  • チームでの開発経験と成果物

学生のうちはチームで開発をするような経験はそれほどないかと思いますが、エンジニアとして就職をしたら、ほとんどの企業ではチームでモノ作りをすることになります。

そのため、少しでもチーム開発経験があることは就活でも強みになります。また、完成した成果物も、採用選考で実際に見せながらアピールポイントにできます。

◇実務参加形式

実際に現役エンジニアの人と一緒に実務に参加する形式のインターンです。アルバイトと同様に賃金が発生する場合もあります。

期間は一日で終わるものから、一週間や一ヶ月以上じっくり実務に取り組めるものもあります。

エンジニアとして実際の開発現場で実務に取り組んでもらうため、受け入れられる人数には限りがあります。また、ある程度の開発スキルを持った学生を求める企業が多く、インターンの段階から採用選考が行われるケースも珍しくありません。

注意点としては、インターン選考では、今まで勉強してきた内容やその企業のインターンへ参加しようと思った動機などを、現時点で言える範囲でよいので明確にしておく必要があります。

また長期のインターンになる場合はスケジュール管理が必要です。


【得られるもの】

  • 実務に関する情報
  • チーム開発や実務に携わる体験

説明会とは違い、就職前から実務を経験できるのはこのインターンだけです。

企業から一方的に話を聞くだけでなく、開発現場の雰囲気やどんな人がいるのか、どんなフローで開発が進んでいくのか、どんな開発環境を使っているのか、どんな知識が必要な仕事なのか…といった実務に関する内容を、身をもって経験できます。

■インターン参加時に重要なこと

◆目的を持って参加する

インターンというのは「どこでもいいから参加さえしておけばよい!」というものではありません。大事なのは、自分なりに「このインターンで何を得るか」を明確にしておくことです。

なんか就活で有利になるんでしょ?」「友達がみんな参加しているみたいだから……」と何も考えず参加だけしても、目的意識がないと結局何も得られず時間の無駄になってしまいますし、得られたものがなければ、就活本番でのアピール材料にもなりません。

  • まずは広く情報を集めたい
  • ゲーム業界に行きたいからゲーム開発について知りたい
  • ゲームとWebサービスで迷っているから情報を集めて比較したい
  • A社とB社とC社に興味があるから求人応募前に比較したい
  • 実際の開発業務を経験して雰囲気をつかみたい
  • チーム開発をした経験がないのでやってみたい

など、自分なりにどんな目的でもよいので、どんな情報や経験を得たいか、今後にどう活かすかを明確にしておいた方がよいでしょう。

◆目的に沿ってインターン先を選ぶ

インターン先は自分の目的に合わせて選べばよいわけですが、「まだ何も思いつかない」と言う人も、例えばエンジニアとしての就職を考えているのであれば「憧れのあの企業を覗いてみたい」「実際のエンジニアがどんな業務をしているのか知りたい」といった興味は少なからず感じているかと思います。そこから、さらに業界・職種・経験できそうな内容、加えて期間と場所で条件を絞って考えていけば、インターン先候補の企業は見えてくるはずです。

もう少し具体的に考えると…

  • どんな業界・企業・職種に興味があるのか?

例:IT業界の中でもゲーム業界がいい、研究開発をしている企業がいいなど…

  • インターンを通して何を知りたいのか?

例:ITエンジニアの具体的な仕事内容を知りたい、憧れのあの企業の開発チームが具体的にどんなものか知りたいなど…

  • インターンを通してどんな経験がしたいのか?

例:ITエンジニアになるか、ほかの職種を目指すか迷っているので業務内容を経験してみたい、実際にITエンジニアの業務についていけるか体験したい、インターンを通じて自分のスキルをレベルアップさせたいなど…

  • 時期はいつ頃なら参加できるのか?

長期インターンに参加できれば、企業や業務内容についてもより深く知ることができますが、研究や教育実習、授業やアルバイトなどとの兼ね合いを考えましょう。特に複数企業へのインターンを検討している方は、スケジュールが重ならないように気をつける必要があります。

  • 場所はどのあたりなら参加できるのか?

夏休み等を利用して地方から東京のインターンに参加する方も多いですが、参加時期と同様に場所も無理のないように検討しましょう。「地方在住だけど、気になるのは東京の企業が多い…」という方は、うまく長期休みを使いましょう。

上記のような項目を考えてみると、具体的な応募先を選びやすくなります。

■まとめ

インターンは、就活の方向性を考えるための有効な機会です。

インターンに参加した経験があると、就活が始まってからの面接でも実体験をもとにした説得力のある話ができますし、アピールもしやすくなります。

特に理系の場合、4年になってから研究などで忙しそうな人ほど、3年のうちにインターンに参加しておくことで、早めに就活の方向性を定めたり情報収集をしたりできます。また、インターン経由の選考を受けて、早いと3年の10月頃に内定を獲得される方もいるぐらいです。


paiza新卒では、7/5(木)に「20卒向け・paizaインターン勉強会」を開催いたします。その場でプログラミング問題を解いて解説を受けたり、企業のインターン情報を聞いたり、その他プログラミングや就活に関する相談ができたりする勉強会ですので、ご興味のある方はぜひご参加ください。


paiza新卒では20卒向けインターン求人情報を多数公開しております。

paiza新卒


また、paizaラーニングの「ITエンジニアの就活準備編」では、エンジニアのキャリアや働き方がわかる「業界構造を学ぶ」、就活で使えるポートフォリオの作り方がわかる「ポートフォリオ制作」のレッスンを全編無料で公開中しています。就活に役立つ情報が、動画を通して気軽に学べます。
www.youtube.com




 

paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。

詳しくはこちら

paizaラーニング

そしてpaizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。

スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。

詳しくはこちら

paizaのスキルチェック