エンジニア転職 プログラミング

【Javaポートフォリオ】なぜスクレイピングツールがおすすめか?

投稿日:

なぜスクレイピングツールか?

・スキルに需要がある
・総合的なスキルが身に付く
・個人開発に応用できる

スキルに需要がある

執筆時点(2021年3月28日)時点で、ランサーズに1643件の発注があります。
今後これは増えてくる傾向にあると予想できます。
理由は企業が競合の情報収集をスクレイピングで行っているということです。

また、ビッグデータによるデータ分析も今後は伸びて行く分野と見ていますが、その元データは何処から取得すると思いますか?

自社の購買データだけで無く、他社の価格戦略やプロモーション戦略を分析して、自社の戦略に反映していくのは容易に予測できることです。
そのためにスクレイピングでデータ収集するのは当たり前になってきます。
そういった視点から、需要のあるスキルと言えます。

あとは自分が興味を持てるかがポートフォリオ作成のモチベーションになってきます。
ポートフォリオは、「自分が興味を持ち、技術的にもビジネス的にも需要があるもの」を選ぶことが大事です。

総合的なスキルが身に付く

DBスキル

スクレイピングはデータを取得してくるだけでなく、データの受け皿となるデータベースへの格納も必要になります。

定形データであればRDBMSでいいですし、不定形データであればNoSQLを採用したりと、どのみちデータベースを使用します。
そのため、データベースの設計についてのスキルが必要になってきます。

コーディングスキル

次にそのデータを活用するためのWebアプリケーションを開発することで、コーディングスキルが身に付きます。

インフラ構築

ポートフォリオとして公開する前提でいうと、クラウド環境を使うことをおすすめします。
これは構築の容易性とスキルのキャッチアップのためです。
そもそも今ではAWS、GCP、Azureといったクラウド環境で運用するのが当たり前になってきているので、クラウド以外にデプロイする選択肢はないとは思います。

ネットワークスキル

また、クラウド環境内ではネットワークの設定も必要なるので、それらの知識も身に付きます。
DMZを意識した構成にすることで、セキュリティへの考慮も身に付きます。

ポートフォリオを作ってクラウドに公開するだけで、これだけの総合力が身につことになります。

個人開発に応用できる

正直ここまで自走できるのであれば、個人開発としてサービスを運用することも十分可能です。

収益を上げられるかどうかはマーケティングや需給バランスなどのビジネス要素が関わってくるので別問題とはなりますが、ビジネス視点を養うという点で他のエンジニアとの差別可になりえます。

私は自分と妻が使用するものを作っているだけですが、「どういう機能があったら使いやすいか?」を考えることで、ユーザ視点に立つ練習になっています。

小人数で使用するものであったとしても、自ら進んで使い易さを追及したり提案したりすることで、言われた通りにコーディングするだけのプログラマより,遥かにアドバンデージがあります。

そういったことも含めて、個人開発に取り組むとよりユーザ視点に立った開発・提案ができるようになります。
これは、面談において大きなPRポイントにもなることに加えて、実業務においてもユーザからの好評価に繋がります。

まとめ

  • ポートフォリオは自分の興味と技術的な需要とビジネス的な需要を考慮すること。
    それが、意欲と価値増大になる。
  • ポートフォリオをクラウドで公開することは、総合的なスキルアップになる。
  • クラウドの公開までを自走できれば、個人開発もできるレベルになっている。
    個人開発はビジネス視点、ユーザ視点を持つきっかけにもなり、他のプログラマとの差別化につながる。

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

ランキング評価する

-エンジニア転職, プログラミング
-

執筆者:


comment

メールアドレスが公開されることはありません。

CAPTCHA


関連記事

junit, テスト, junit5

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

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

違い,diff,比較,天秤

【図解】Mockito – mock と spy の違いは?

テストコードでモックを書くときによく使うMockitoですが、mock()とspy()の違いについてよくわからないという方向けに図解で解説します。 図解 mock() ・全てのメソッドが一旦使用不可に …

junit, テスト, junit5

【JUnit5】基本的なAssertionまとめ

概要 JUnit5における基本的なAssertionをまとめました。 検証方法 等価性 値が等価であるかを検証するメソッドです。 以下はorg.junit.jupiter.api.Assertions …

【SpringBoot入門】#4~ headerの作成と埋め込み

概要 全ての画面で使用するヘッダーを作成します。 そして、Index画面に埋め込むところまでを行います。 共通ヘッダーの作成

・&lt …

【SpringSecurity】#3~ 独自のログイン画面

概要 オリジナルのログイン画面を実装する方法です。 以下の内容になっています。 ログイン用のHTMLを用意する。 Controllerにログインの遷移先を定義する。 SecurityConfigクラス …

SpringFramworkの良書

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

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