*

未経験者がWEBエンジニアとして就職する前に身につけておいたほうがよいスキル一覧

公開日: : 最終更新日:2015/10/01 WEB全般, 講義 , , ,

夕方、用事から帰ってきてから寝てしまったので寝れなくなっている松本です。

寝れないので今日はもう1本記事を書きます。例によって技術的なことではなくて雑談ネタですが。

WEBエンジニアとして就職する場合、大体求人案件には「実務経験2年」などと書かれていることが一般的です。

とはいっても未経験の方は経験そのものがありませんから実務未経験者はどれくらいのことができればよいのか?といったことがわかりません。もちろん企業によって違いますが、私の経験からこれぐらいのことができれば最低限の仕事はできるだろうという基準を書かせていただきます。

自分はPHPですが、その他の言語でも多少は参考になるのではと思います。

プログラミング言語

配列の基本操作

このブログでも何回もいいましたが超重要です。プログラミングは結局のところどこからかデータをひっぱってきて、加工して、どこかに送るということを延々とやります。

そのデータはほとんどの場合、配列を使いますので配列の操作が自由自在にできることが大前提です。これはおそらく例外はないと思います。

基本的なエラー消去

プログラミングを学習し始めていると、最初のうちはほとんどまともに進みません。エラーがぼこぼこでてきてしまうからです。そういったエラーをすばやく消せないと作業そのものがすすみません。

もちろん何年仕事をしていてもはまってしまうエラーはでてきてしまうのですが、基本的なものであればすぐに潰せることが必須条件でしょう。

ファイルの入出力、データベースへの入出力

外部とのデータ連携ですね。多くのWEBアプリはよほど単純なものでない限り、外部にデータを保存しておきます。

多くの場合はデータベースですが、テキストなこともあります。ファイル(またはデータベース)からデータを取り出して、加工し、逆にこれらに保存するといった操作はスムーズにできるようになっておきましょう。

デバッグ処理

アプリを作るときに疑問に思った部分で適切にデバッグをできるか。PHPだとvar_dumpですね。これができないと調査そのものができませんので、絶対に見につけておくべきスキルです。

基本的なオブジェクト指向の理解、クラス設計

ある程度の規模のWEBアプリになってくるとDB、ログイン、メール送信、セッション管理など様々な機能が必要になってきます。これらをうまく使い分けるにはオブジェクト指向を理解し、クラスを設計することが必須になってきます。

強引に1つのファイルだけで書くこともできますが、非常にソースがみにくくなります。

初心者にとってはオブジェクト指向はかなり鬼門で多くの方がここでつまずきます。しかし、オブジェクト指向を使うと使わないとではできることや保守性(メンテナンスのしやすさ)が大きく変わってきますので必ず使えるようになっておきましょう。

機能とファイルの分割

クラスの設計にも通じますが、複雑なアプリであれば機能ごとにクラスを作り、ファイル自体を分割します。役割ごとにファイルを適切に分けられるか。フレームワークを使っていなくても、役割ごとにざっくりとソースを分割できるようになって起きましょう。

セッション

ログイン情報などPOSTと違って比較的長い期間のデータを取り扱う場合、セッションやクッキーを使うことがあります。POSTとセッションを適切に使い分けられるか。

 

以上、言語のスキルで言うとざっくりいうとこんなところかなという気がします。

データベース

現在のWEBアプリですとほぼデータベースは必須ですね。

MySQLかPostgresSQLが使えれば問題ないと思います。片方の操作に習熟していればもう片方の操作もそれほど問題ないでしょう。

データベースの作成、ユーザーの作成、テーブル作成

これは基本ですね。コンソールからログインして、データベース→ユーザー→テーブルを自在につくれるかどうかです。

int,varcharなど基本的な型の理解

テーブル設計などに通じますが、型を適切に選べるか。とはいっても最初はint,varchar,text,timestamp,datetime,tinyintぐらいでしょう。これぐらいの使い分けが適切にできるかですね。逆に言うと最初はこれぐらいが使えればなんとかなります。

select,insert,update,deleteなどの基本構文操作

特にselectは最頻出なので何もみなくてもできるようになりましょう。またSUMやAVERAGEなど基本的な算術計算もできるようになっておいたほうがよいです。

複数テーブルの使用

リレーションを使って複数テーブルを使ったアプリを作れるか。ざっくりで良いので仕様を把握して1:Nを理解して複数のテーブルに分けられるようにしておきましょう。

バックアップ、リストアができるか

ダンプしてDBファイルを別サーバーに移行できるかどうかですね。ほとんどの場合まずは自分のローカルPCでアプリを作っていると思いますので、これらを別環境にスムーズに移行できるようにしておきましょう。

ネットワーク、サーバー

最初は自分のPCで作業をしていると思いますが、リリースする際は当然サーバーにアプリを配置することになります。それが円滑に行うための基本的な知識と処理になれておきましょう。これらの作業はVPSなどを借りて作業をすることで身につくでしょう。

サーバーサービスの分類

ロリポップなどのいわゆる通常のレンタルサーバー業者、VPSサーバー、クラウドサーバー、各種サービスがどのように違いどのような用途でつかわれるのかを理解しておきましょう。

IPとドメイン、DNSの知識

WEB上の住所というのはどうなっているのか。なぜWEB上でhttp://www.xxxx.jpなどとうつとWEBサイトを見ることができるのか。

基本的なLinuxコマンド

就職する前にファイルの操作がCUIで問題なくできるようになっておきましょう。特にls,cd,mv,cpといったコマンドは最頻出であり、数学をやるときの九九のようなものです。Windows(GUI)での操作が不便に感じられるぐらいCUIになれればOKです。

ユーザー権限とパーミッション

Windowsと違いマルチユーザーですので、権限とパーミッションの理解は最重要です。初心者がサーバーにあげたのにうごかない・・ときは大抵ここがネックになっています。適切に設定を行い、動かせるようになっておきましょう。

基本的なサービスのインストール

yumでいいので、WEBサービスをリリースする際に必要なソフトウェアをインストールできるようにしておきましょう。最低限,Apache,PHP,MySQLがインストールできて操作できればなんとかなります。

ソフト操作

エンジニアとして仕事をしていると業務に必要な様々なソフトウェアが必要になってきます。それらを使って日常的な操作が不自由ないかどうかは作業が円滑にすすむかに大きくかかわってきます。

エディタ

特にエディタは毎日ずっと使うものですので、作業が円滑にできるかどうかは時間に大きくかかわってきます。下記操作はできるようになっておきましょう。エディタによってはないものもあります。

特に置換系はできると作業スピードがかなり変わりますのでしっかりと覚えておきましょう。

  • 矩形選択
  • 入力補完処理
  • 特殊文字表記(全角、タブ、改行など)
  • 文字置換(正規表現を含むもの)
  • 複数ファイルにまたがった置換
  • 基本的なプラグインの導入
  • マクロ操作
  • 各種設定変更

FTP(SFTP)ソフト

有名どころでいうとFileZilaやWinSCPでしょうか。ホスト情報をもらってすぐにログインして操作ができるか。

SSHソフト

TeraTermやPuttyが有名でしょう。私はPoderosaというソフトを使っています。こちらもホスト情報をもらってログイン操作ができるか。

下記セキュリティ設定ができると望ましいです。

  • rootログイン禁止
  • パスワードログイン禁止
  • 鍵認証

上記のスキルを身につけるために

このようなスキルですが、教材を読んで1つ1つ覚えるというのはあまり効率がよくありません。

お勧めするのは掲示板などのアプリを作成し、自分なりにどんどんカスタマイズを加えていくことです。どんなアプリでも拡張していくうちにかならず上記の機能を全て実装しきります。

それが最速でスキルを身につける方法です。初心者のかたはぜひ参考に!

 

関連記事

よく使う処理をまとめよう その1 (関数)

おはようございます。松本です。 私の会社では10時半から掃除の時間でして、ここ数ヶ月ずっとやっ

記事を読む

プログラミング学習法「写経」について

本日は本ブログのメインテーマであるプログラミング学習について考えてみたいと思います。 今までプ

記事を読む

オブジェクト指向

オブジェクト指向 その1 コードを1行も書かずに理解してみる

今回はオブジェクト指向について書きます。 プログラミングを少しでもやった(orやろうと思った)

記事を読む

勘違いしてはいけない未経験ややる気という言葉

かなり久しぶりの投稿になってしまいました・・・ 以前ダイエットに成功し、2年以上かけて10kg

記事を読む

エディタを使いこなそう

PHPでプログラミングを始めるためにはXAMPPのインストールともう一つエディタというソフトをそろえ

記事を読む

PHPはなぜ簡単といわれるのか?

最近ではブラック企業と同じような意味合いでブラックバイトなんて言葉があるらしいですね。 ただ定

記事を読む

教え方がうまい人に共通するたった1つの考え方

やや遅い気もしますが、あけましておめでとうございます。 今年もよろしくお願いします。 昨

記事を読む

PHPで掲示板を作ろう!(データベース編) その3 データベース作成編

ちょっと間隔があいてしまいましたが、今回はMySQLの講義です。 前回までの記事 PHPで掲示板

記事を読む

PHP 掲示板

PHPで掲示板を作ろう! 掲示板の作成方法 その3(エラーチェックとファイル書き込み)

今回はPHPのコードの説明です。 掲示板の作成方法についてやります。 えー、前回の掲示板

記事を読む

PHPで掲示板を作ろう!(データベース編) その2 MySQLログイン編

あ、最近はこのブログの画像に凝るようにしています。サイドバーなんかみていただくとブログのアイキャッチ

記事を読む

Message

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

無料PHPスクール
自社開発>客先常駐である本当の理由

このブログでも何回か取り上げていますが、ITエンジニアの働き方としては

エンジニアにとって必要なコミュニケーション能力とは

気がついたらもう3月下旬になっていますね・・ 年末年始忙しかった

エンジニアを採用する上で大事なこと

本日はエンジニアの採用について書きたいと思います。最近少し採用に絡んだ

エンジニアが給料を上げる方法を真面目に考えて見ました。

本日はエンジニアと給料の話題について触れて行こうと思います。 エ

エンジニアの「スキル」とはなんぞや

給与が低いことに悩んでるエンジニアへのアドバイスをツイートで見たところ

→もっと見る

  • follow us in feedly
PAGE TOP ↑