*

未経験者が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つ覚えるというのはあまり効率がよくありません。

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

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

 

関連記事

プログラミングを独学で身につけるときに大切な6つのポイント

さきほど「プログラミング」で検索キーワードをかけたら入力補完で「プログラミング 入門」や「プログラミ

記事を読む

セミナー告知のお知らせ

突然ですが2018/06/16にIT業界への就職希望者を対象とした無料プログラミングセミナーを開催さ

記事を読む

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

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

記事を読む

PHPで掲示板を作ろう! 掲示板の作成方法 その1

以前、お問い合わせフォームを作成しましたが、今回からは数回に分けて掲示板を作成していこうと思います。

記事を読む

CMSとは?

先週オフィスにきた新規の受講生の方に「CMSを使いたいので、使い方を教えていただきたいのですが・・・

記事を読む

なぜPHPなのか

はじめまして、プログラミングの講師を担当させていただきます、松本と申します。 このたび、株式会

記事を読む

「初級」〜「中級」のPHPエンジニアのスキルについてまとめてみる

いままで主にPHP(を中心としたWeb技術)を勉強し始めの傾けに記事を書いていましたが、今回は初級か

記事を読む

Java/PHP/Perl/Ruby/Python 主要Web系言語徹底比較

本日はWeb系で使われているプログラミング言語の比較をしてみようと思います。 Web系で使われ

記事を読む

PHPで掲示板を作ろう!(データベース編) その6 まとめ編

今回はMySQLの第6回目の講義です。今回で終わりですので、ソースの説明と今までの解説の概略を書いて

記事を読む

気を付けよう!個人事業主として働くときのトラブル

最近は開発のほうが忙しく、更新頻度が落ちているのですが、既存の記事を読んでる読者さんが多く、アクセス

記事を読む

Message

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

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

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

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

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

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

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

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

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

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

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

→もっと見る

  • follow us in feedly
PAGE TOP ↑