未経験からPHPを独学して就職・転職する為の最小限スキル
「学校とかでちゃんと学ばなきゃダメ?」
「就職に必要なスキルを知りたい!」
私はPHPを独学してPHPエンジニアとして採用されたことがあります。
私の場合、10年程Javaエンジニア経験があってからのPHPエンジニア採用でしたが、エンジニア未経験からでも、PHPを独学して
- Webエンジニア
- スマホアプリやゲームのサーバーサイドエンジニア
に就職することは十分可能だと思います。PHPエンジニアの求人数はトップクラスでJavaと同じくらい多いですからね。
ということで、就職するために必要なPHPスキルについて紹介します。
重要スキル1. PHPとデータベースの基礎知識
if文やループ等の制御構文などの基礎的な構文規則を覚えて、配列、連想配列、文字列操作などの基礎的な使い方を覚えます。その後、データベース(MySQLまたはPostgreSQL)の使い方、SQLの構文を覚えましょう。
この辺りは初心者向けのPHPの本やWebサイトを読んで、いくつかコードを打ち込んでいる内に自然と覚えられます。
プログラミングって学校の勉強のように本を読んでるだけでは身につきません。
プログラミング言語は言葉なので使ってなんぼです。使うと自然に身につきます。言葉ですからね。
英語も使えば覚えられるはずなんですけど、日本に住んでいるとなかなか使う機会がないので覚えられないんです。
ですが、プログラミング言語は作りたいものを作ってるうちに自然と使えるので断然学びやすいんです。
と言われても、「作りたいものとか特にないんだよなぁ…」という方はPHPオンラインブートキャンプとかを利用するのもいいかもしれません。課題をこなしているうちに自然と覚えられますからね。
重要スキル2. JSON API, Ajax
PHPの入門書に掛かれているものは大抵、PHPが画面情報のHTMLを出力するものです。例えば以下のようなコードです。
<html> <body> <?php echo "Helle World"; ?> </body> </html>
しかし、PHPが出力できるのはHTMLだけではありません。HTML以外でよく使われるフォーマットはJSONです。JSONとはJavaScript Object Notationの略でJavaScriptというプログラミング言語で採用されているデータ形式のことです。PHPの連想配列と似ています。
{ name: 'やまろう', bloodType: 'O型' }
↑のような形式のデータです。これをechoで返してやればいいんです。以下のようなコードになります。
$a = array( 'name' => 'やまろう', 'bloodType' => 'O型' ); echo json_encode($a);
FuelPHPというフレームワークを使うと以下のような書き方になります。
class Controller_Api extends Controller_Rest { public function action_adminfindquestions() { return $this->response ( array ( 'name' => 'やまろう', 'bloodType' => 'O型' )); } }
このようにJSONデータを出力するPHPプログラムをJSON APIと言います。
JSON APIはクライアントに画面情報ではなく、データを返したい場合に使われます。
ブラウザからJavaScriptを使ってJSON APIと通信してデータを取得する技術の総称をAjaxと言います。例えば以下のようなコードです。JQueryというライブラリを使っています。
<script type="text/javascript" src="https://code.jquery.com/jquery-2.1.4.min.js"></script> <script type="text/javascript"> $.getJSON('http://localhost/person_data.php'; ?>', { person_id: 1234, }, function(json){ alert(json.name + ' ' + json.bloodType); }); </script>
こうすることでJavaScriptがサーバーと通信してデータを取得することができます。
Webアプリケーションじゃなくてスマホアプリ・ゲームのクライアントからもJSON APIと通信できます。
スマホアプリ・ゲームのサーバーサイドエンジニアを担当する場合は、ほとんどの仕事がJSON APIの開発です。スマホアプリにHTMLを返してもしょうがないですからね。
重要スキル3. フレームワークの利用経験
企業で行われているPHP開発では、ほとんどの場合フレームワークが使われています。
フレームワークとは開発をかんたんにするためのプログラム部品・骨組みの集まりです。一から全てのコードを書くよりも、フレームワークを使った方が、早くプログラムを完成させることができます。
PHPのフレームワークはたくさんあります。有名なものだけでも
- Lalavel
- Symfony
- CakePHP
- Zend framework
- CodeIgniter
- FuelPHP
とたくさんあります。
これまではCakePHPやSymfonyがよく使われていました。ここ数年伸びてるのはLalavelです。
フレームワークは共通点が多いので、どれか一つ使った経験があれば、その知識を流用して他のフレームワークを習得できます。
ですから、どれか一つでもフレームワークを使った経験があると採用される可能性がぐっと上がるはずです。
最小限に絞れば学ぶべきことは意外と少ない
いかがだったでしょうか?仕事をするために必要な最小限のスキルって、実はそんなに多くないことがおわかり頂けたかと思います。
ということで、ここで紹介した最小限の知識を学べば、未経験からPHPエンジニアになることは十分可能ですので、ぜひトライしてみてください!
ぶっちゃけると、20代であればプログラミングスキルゼロでも採用する会社はたくさんあります。プログラミングの知識は入社後、数ヶ月間の研修を受ければ覚えられますからね。それくらいIT業界って人手不足なんです。
ですから、
- 独学で知識を身につけてから就職する
- 就職してから研修で知識を教わる
のどちらでもいいと思います。