[PHPWebエンジニア]ポートフォリオ作成の注意点
こんにちは。新卒後、SES会社から転職を経て、自社内開発で働いてるPHPWebエンジニア3年生のななです。
今回は、未経験からWebエンジニアを目指す方向けの記事です。
転職時に必要なポートフォリオ作成の注意点についてご紹介します。
はじめに
ポートフォリオとは
ポートフォリオとは、転職時に会社に見せるための、自分で作成したWebサービスです。
履歴書または職務経歴書に、URLで記述して採用担当に共有します。
エンジニアの技術力は大学の偏差値と違い、数値化することはできません。
そなため、技術力をアピールするためにポートフォリオは基本的には必須です。
資格は効率が悪い
「PHP技術者認定試験」もありますが、ITと無縁の人事が面接官だとなかなか凄さが伝わりません。
また伝わるとしても、試験に費用もかかりますし、階級によってはかなり難問で、その勉強のために転職活動に無駄に時間を費やしてしまいます。
もし落ちてしまえばまた次の試験まで待たなければなりません。
資格を取るくらいでしたら、自分でポートフォリオを作成した方が楽ですし、具体的な技術力が相手に伝わりやすいです。
必要なサーバー代、ドメイン代を合わせても月1000円程度です。
ポートフォリオ作成時の注意点
基本的な認証機能は必ず実装しよう
基本的な認証機能とは以下のことです。
ログイン機能
ログアウト機能
プロフィール編集機能
パスワードリセット機能
ほとんどのWebサービスは認証機能があるので、必ず実装すると良いでしょう。
DBを使おう
DB(データベース)とは、その名の通り、ユーザー情報などのデータを保存する保管庫のような役割を果たします。
もちろんDB無しのWebサービスもありますが、95%以上のWebサービスはDBを扱います。
ログインで扱うメールアドレス、パスワードもDBに保存されます。
DBの種類は、あまりにもマニアックなものでなければなんでも良いと思います。
メジャーなのは以下です。
MySQL
PostgreSQL
「SQLite」というより簡単に扱えるDBもありますが、ユーザー情報、パスワード無しで使えてしまい、セキュリティ面での評価が下がってしまうのでお勧めしません。
私は、便利で使いやすい関数が多い「PostgreSQL」をよく使ってます。
フレームワークを必ず使おう
フレームワークを使うことで、すでにディレクトリ構造が決まってるのでスムーズに開発することができます。
99%の会社ではフレームワークを使って開発をしてます。
転職する上でフレームワークの知識は必須になるので、必ず活用しましょう。
フレームワーク無しでもWebサービスは作れますが、採用側からは「フレームワークの使い方知らないのかな」と思われてしまいます。
PHPのフレームワークは何種類かありますが、いずれも基本構造は同じなので、好きなのを選んで良いと思います。
1番無難なのは「Laravel」です。
Laravelは近年急激に人気が上昇して、(おそらく)もっとも使われてるフレームワークです。
私も個人で開発する際はLaravelを使ってますが、1番使いやすく感じます。
セキュリティ対策を行う
会社側がもっとも恐れていることは、セキュリティの知識が乏しいエンジニアを採用し、個人情報などの情報漏洩をしてしまうことです。
セキュリティの知識もあることをアピールするために、ポートフォリオをセキュリティ対策しましょう。
長くなるのでざっと主なセキュリティ対策を紹介します。
CSRF対策
フォームバリデーション対策
SQLインジェクション対策
XSS対策
知らない単語かもしれませんが、上記4つは先ほど紹介した「Laravel」のフレームワークを使えばカバーできます。
Gitを使おう
Gitとは簡単に説明すると、無料で使えるコード管理ツールです。
開発現場では必ずと言っていいほど扱うツールなので、慣れておくと良いと思います。
SourceTreeと言う、コマンド無しでもGitを扱えるソフトもありますが、なるべくコマンドで扱えるように勉強しておきましょう。
「GitHub」と連携して使うことをおすすめします。
デザインにはこだわろう
htmlの入力欄や選択肢などはなるべくデフォルトのデザインは使わず、cssでデザインしましょう。
Bootstrapを使うとより簡単にデザインできます。
コーダーからいずれはPMに昇進することを考えると、サイトのデザイン(視覚的な使いやすさ)にこだわりを持たない人は採用時に不利になります。
サーバーに公開しよう
もちろん、作成したポートフォリオはサーバー上にアップロードしないと、URLで他の人が見ることはできません。
サーバーに公開するためにはAWSまたはレンタルVPSを使う必要がありますが、安ければ月1000円程度で利用できます。
おすすめVPSは以下です。
さくらVPS
ConoHa
現役のエンジニアで個人開発する人はよく「ConoHa」を使うイメージがあります。
私も趣味での開発では「ConoHa」を使ってますが、慣れてない人はドキュメントが充実している「さくらVPS」も良いでしょう。
AWSも安いですが、料金が定額制ではない(アクセス数に応じて勝手に料金が変わる)ので、不安な方は先ほどご紹介した「ConoHa」「さくらVPS」などのような定額制のVPSをおすすめします。
ドメイン名を取得しよう
ドメイン名とは、例えば「https://note.com」の「note.com」の部分です。
番号のみのIPアドレスのままでも共有できますが、
(例:https://000.000.000.000)
採用側からすると、手抜き扱いにされる場合があります。
ドメイン名は、「お名前.com」などで取得できるので、取得してドメイン名でUPLを共有するようにしましょう。
「お名前.com」は有料ですが、年間でおよそ1000円〜程度しかかかりません(ドメイン名による)。
SSL証明書を取得しよう
SSL証明書を取得すると、URLの「http://〜」の部分に「s」がついて、「https://〜」になります。
「s」がつくとサーバーとの通信が暗号化され、セキュリティに強くなります。
このSSL証明書もドメイン名と同じく、取得しないと採用側からは手抜き扱いになってしまうので、取得しておきましょう。
SSL証明書は基本的には有料ですが、開発用に扱う無料のSSL証明書「Let’s Encrypt」もあるので、そちらをおすすめします。
その他実装した方が良い機能
実装した方が良い機能について細かく説明すると長くなり過ぎてしまうので、ざっとご紹介します。
(別記事でまとめるかも)
気になったものやわからないものは調べてまでください。
外部APIをつかう
js側からAjax通信を行う
jsのさまざまなフレームワークを使う
以上をポートフォリオに組み込むと、評価が飛躍的に上がります。
まとめ
実際に企業がWebサービスを作るときに使うツール、気をつけている点などに注目すれば、自ずと高い評価を得られるポートフォリオを作成することができます。
この記事が気に入ったらサポートをしてみませんか?