エンジニア転職 Java

【Java転職者向け】どんなポートフォリオを作成すべきか?

投稿日:2020年10月18日 更新日:

Javaプログラマとして開発リーダと新人教育をした立場から執筆しています。

対象読者

未経験からJavaプログラマに就職・転職しようとする方

目次

なぜポートフォリオを作成するのか?

・スキルアップ
単純にスキルが無いと採用されないと思ってください。
採用されても、スキルが必要とされないような仕事をするはめになるか、そもそも仕事が無いと思ってください。
自社開発または受託開発でない限り、SESで派遣労働になります(大半がここになる)ので、「スキルが無い=面談で落ちる」か、面談に受かっても業務についていけなくて苦しむことになります。
なので、事前準備(スキルアップ)としてポートフォリオ作成くらいはしておく必要があります。

・PR
「これができます!」
「こんな知識があります!」
と、面接で吠えるより実物を示す方が相手にとっては現実的です。
私は副業案件を獲得しようと、知り合いのIT企業の社長に掛け合ったことがありますが、
ポートフォリオが無いため一切の評価をされずに不採用でした。
(この時の案件はPHPで、Java案件はほぼないとのことなのでその後のお付き合いはありません)

・仕事を知る
これは結構重要です。
Javaプログラマになろうとしているのに、仕事の中身を知らないのは致命的です。
実際にプログラマの仕事はコードをただ書くだけでなく、設計書を読み取る必要がありますし、テストもします。
ポートフォリオを作成することで、設計(構想)通りに作ることと、作ったものが正常に動作することを実践し、プログラマとしての業務を学ぶことになります。

どんなポートフォリオを作成すべきか?

レベル感でいうとフレームワークは使えるようになっておくとベストです。
理由はフレームワークを使用しないで開発することはほぼ100%無いからです。
なので、入門書レベルを終えた程度で終わってはいけません。
簡単なWebアプリケーションでいいので、フレームワークで作ることがゴールになります。

ではどのようなものを作成すればいいかというと、CRUD機能を一通り実装することです。
※CRUD:データの登録(Create)、読出し(Read)、更新(Update)、削除(Delete)の頭文字をとった言葉。

システムは何らかのデータを登録、表示、更新、削除するものです。
なので、これらをフレームワークで一通り実装できることを目指します。

執筆時点(2020年10月)でおすすめのフレームワークは、「Spring」です。
理由は案件数が多いことと、拡張性があるという点です。

どのようにPRすべきか?

ポートフォリオを作成し終えたらGithubにソースコードを公開します。
これで採用者はソースコードを見て、あなたの品質を正しく評価できます。
デザイン周りについてもPRしたければ、デモ画像をGIFで公開しておくと尚良しです。

(追記:2021年5月23日)
AWSにWebアプリケーションをデプロイする方法を紹介している書籍がわかり易いかったので紹介いたします。
私自身も参考にし、読んだその日にデプロイを完了させました。
AWSへWebアプリケーション(Java)をデプロイする方法(書籍紹介)

参考教材

①Springでポートフォリオ作成するなら、まずはこの教材を一通りこなしてからがよいです。
 開発環境の構築から、CRUD機能の実装まで一通り網羅しています。
 Spring解体新書 Java入門のあとはこれを学ぶべき: Spring Boot2で実際に作って学べる!

②本ブログでSpringのチュートリアルを作成しました。
 CRUDの基本が学べるWebアプリケーションになっていますので、
 ポートフォリオのサンプルとしても使って頂けると思います。
 Springチュートリアル

まとめ

・就職、転職前にはポートフォリオを作成して最低限のスキルを獲得しておくこと。
・レベルはフレームワークを使用して簡単なWebアプリケーション開発ができる程度。
・Github等に公開して成果を目に見える形にする。

 
最後までお読み頂き、ありがとうございました!
ご意見・ご要望がありましたら、遠慮なくコメント下さい!
もし内容が良かったらランキング評価を頂けると励みになります(^^)

ランキング評価する

-エンジニア転職, Java
-,

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

gradle

gradleタスクのビルド時にプロパティを引数に付与する方法

概要 gradleタスクのビルド時にプロパティを引数で付与するには、「-Pに続けてプロパティ名=値」で指定します。 <usage>

  …

junit, テスト, junit5

【Junit5】表示名のカスタマイズ(@DisplayName)

概要 Junit5で表示名をカスタマイズする方法です。 Junit4については以下を参考にしてください。  ↓ https://irof.hateblo.jp/entry/20130124/p1 でき …

junit, テスト, junit5

【JUnit5】テストコードの基本

概要 JUnit5でテストコードを書く基本について学ぶ。 テストの命名規則 テストクラス、テストメソッドの記述には一般的な慣例があります。 ここではそれらを紹介しますが、実際にはプロジェクト内でのコー …

【Java】LinkedHashSetの使い方(挿入順を保持するSet)

LinkedHashSetはHashSetのサブクラスであり、同じメソッドが実装されています。 メソッドの使い方であればHashSetと同じなので、HashSetの使い方を参照下さい。  ↓ 【Jav …

難しい,困難,頭を抱える

オブジェクト指向が難しいと思うならこれを読め!

オブジェクト指向はJava、JavaScript、PHP、Python、Rubyなどなど 色んな言語で使われているパラダイム(考え方)です。 上から順に追っていくだけ(手続き型)ではわからない仕組みに …

■運営者プロフィール
IT業界10年のエンジニア。
PHP -> VBA -> Javaと渡り歩いてきて、今はJavaをメインにフリーランスエンジニアとして活躍中!

[保有資格]
・Java SE 11 Gold

一度はエンジニアを辞めざるを得なかった私が再びエンジニアとして復活した数奇な物語

SpringFramworkの良書

■おすすめ教材
Javaの基本を学んだ人が、次のステップとして読む本(中級者向け)

※SpringはJavaのFrameworkの1つです。
変更のしやすさ、保守性の高さが特徴です。