SEの転職

公開日:2018/11/26  更新日:2018/12/11

《Web業界》の新人エンジニアがまず身につけなければいけない姿勢やスキルとは?

パソコンで勉強するイメージ

Web業界は移り変わりが激しい業界であり、なおかつ多くの事を学び続けなければいけない業界です。ただ受け身な姿勢でいてはキャリアアップもスキルアップも望めません。どのような姿勢が必要で、どのようなスキルを身に着けるか、予め理解しておくことが重要です。

本記事では、Web業界に新しくエンジニアとして就職・転職する方に向けて、Web業界で生きていくにあたって身に着けて置いた方が良い基本的な姿勢やスキルについて説明します。

社会人としてのコミュニケーション能力は必須

会議のイメージ
Web業界でも、同僚や上司の機嫌を必要でもないのに損ねないようにする、チーム内での報連相を徹底するといったコミュニケーションの基本は当然要求されます。また、要件定義といった上流を志向するのであれば、顧客がどのようなサービスを求めているかを聞き出し、サービスを提案し、契約条件を折衝する必要があります

社会人として要求されるコミュニケーション能力は、当然Web業界でエンジニアとして働く場合でも要求されます。

問題は“まず”自己解決を試みる

アイディアを出すイメージ
Webエンジニアとして仕事をしていると、目的の仕様を達成する方法が分からない、期待する動作をしないなどといった様々な問題が発生します。このような場合に、すぐに同僚に質問してはいけません。エンジニアとしてスキルアップが望めないだけでなく、Google検索代わりにされた同僚からの心象も損ねてしまいます。

まず問題の自己解決を試みましょう。考えていることを図にして整理し、Webや書籍を漁って情報を調べ、自分のコードを注意深くデバッグします。プログラムが期待する通りの動作をしない場合、その原因はほぼ確実にあなたの実装ミスです。

どうしても解決できない場合は、自分が直面している課題と併せて、今まで自分がどのように解決を試みてきたかを同僚や上司に説明するようにしましょう。答えを得やすくなりますし、相手から心象を損ねる可能性も少なくなります。
ただし、仕事が遅れないように注意してください。

納期直前まで自己解決を試みた結果、開発が間に合わないことがあってはいけません。どれだけの期間、どのような手段を試してから相談するかを決めてから自己解決に取り組みましょう。

常に仕事への自分の労力を省力化する

図に書いてみて考える
自分への労力を省力化するとは、単にサボるということではありません。ライブラリやフレームワークを使用すれば特定の機能を一々実装する必要はありませんし、良く使う機能はメソッドやクラスとしてまとめることは一見手間がかかりますが、以降は他のコードや開発で使いまわすことができます

コード中にコメントを入れておき、必要に応じて追加でドキュメントを準備することで、自分がプロジェクトから手を引かなければならなくなった場合でも、同僚へスムーズに引き継ぎを行うことが出来ます。

Web業界でエンジニアとして働くのであれば、このような将来の自分が楽できるように今労力を使う、といった思考が重要です。

志向するキャリアに合わせた技術を学ぶ

計画を立てるイメージ
Web業界も他のIT分野と同様、特定のプログラミング言語やフレームワークに習熟することは必須のスキルです。一方で、これらの技術は無数にあるため、無計画に勉強していても意味がありません。

自分が志向するキャリアや環境、流行に合わせて勉強するようにししょう。

フロントエンドエンジニアはHTML、CSS、JavaScriptの3本柱

フロントエンド側の技術は基本的にHTML、CSS、JavaScriptの3つに集約されます。これらについて使い方を一通り勉強しておきましょう。

特に、JavaScriptはAngularやReactといったライブラリが多数存在するため、これらを利用することで複雑な機能をより簡単に実現できるようになります。また、JavaScriptに習熟していれば、キャリアを変更したいときにnode.jsを勉強してバックエンドに転向する、ということも可能です。

さらに、近年ではAltJS(Alternative JavaScript)の利用も盛んです。AltJSはコンパイルすることでJavaScriptのプログラムを生成するプログラミング言語で、TypeScriptやBabelなどが挙げられます。

会社によっては開発の選択肢になりつつあるので、今の職場での要求や将来志望するキャリアに合わせて勉強しておくとよいでしょう。

【解説】未経験でもなれる!フロントエンジニアになる方法と、そのキャリアパスとは?

バックエンドエンジニアは環境と流行に合わせて選ぶ

バックエンドのプログラミング言語はRuby、PHP、Python、Java、Node.js、Scala、Haskell、Golangなど数多くの選択肢があります。また、これらの言語ごとにフレームワークが幾つか存在します。

例えば、RubyにはRuby on Rails、Django、Laravelといったフレームワークがあります。この他に、データベースを取り扱うためにMySQLやSQL Serverなど、データベース管理システムについても勉強する必要があります。

これらの無数にある技術を欲張ってあれもこれもと手を付けるとどれも物にできず、中途半端な人材になりかねません。まずは現在(あるいは希望する)職場でよく使用されるプログラミング言語、フレームワークを中心に勉強して職場に適応しましょう。

更なるスキルアップを狙う場合は、環境と流行を見極めつつ出来ることを増やすことを意識しましょう。自分が取り組みたい案件の多くでPythonが使われているのに、PHPの勉強をしてもしょうがありませんし、使われなくなりつつあるあるフレームワークを学んでも意味がありません。また、Ruby、Python、PHPは全てスクリプト言語なので、これらばかり勉強しているとJavaなどのコンパイル言語を用いた案件には参加できません。

自分が希望する環境、今の流行に沿うもので、自分が出来ることを大きく広げるような技術を学ぶとよいでしょう。また、バックエンドエンジニアであっても、フロントエンドのプログラミング言語のうちHTMLとCSSについてはその基本は抑えておきましょう

【解説】未経験からのサーバーサイド(バックエンド)エンジニアへの道!

セキュリティに関しては必ず抑えておく

Web業界で働く以上、セキュリティについてはその基本だけでも必ず理解している必要があります。書籍を利用して網羅的に勉強した後は、日々の情報収集の中で知識をアップデートしましょう。

コンピュータ・サイエンスもどこかで必要になる

コンピュータ・サイエンスを専門とする大学や大学院を卒業していればよいのですが、そうでない方は余力があるときでよいので、コンピュータ・サイエンスの知識にも触れておきましょう。

データ構造とアルゴリズムに詳しければより速く動作するプログラムを書くことができますし、ネットワークの知識があればそもそもWebサービスがどのようにして動いているのかを理解する手助けになります。

開発環境や便利なツールを使いこなして開発効率を上げる

PCで開発するイメージ
プログラミング言語やフレームワークを熟知し、使いこなせるだけでは意味がありません。

Web業界では素早く、誤りなく開発する必要があります。そのためには、バージョン管理システム統合開発環境などを始めとするツールについて、何ができて何ができないのか見定めて置き、それを実践する必要があります。

gitによるバージョン管理は必須スキルに

Web業界に限らず、多くのIT分野でバージョン管理システムとしてgitがデファクトスタンダードになりつつあります。

リポジトリの作成、クローン、ブランチの作成・削除、コミット、プッシュ、プルといったごく基本的な操作の他、rebaseのように注意を要するコマンドの使い方などはWeb業界ではもはや必須スキルです。

gitに習熟するためにも、プログラムやサービスを自分で作る際は必ずgitで管理する癖をつけましょう。

gitはWeb上に良質な資料がたくさん存在するため、独学でも基本的な使い方から気を付けなければならないことまで、多くの事を勉強できます。個人でgitを利用したい場合は、GitHub (https://github.co.jp/) や Bitbucket (https://bitbucket.org/) などのサービスを利用すると簡単です。

統合開発環境やテキストエディタを使いこなす

統合開発環境を使うのか、それともテキストエディタ、コンパイラ、デバッガを別に準備して使うのかは人や環境によってそれぞれです。しかしいずれの場合も、開発環境をより使いやすくする努力を怠らないようにしましょう。

例として統合開発環境でのコーディングを挙げると、コードの自動補完やシンタックスのハイライト、変数やメソッドの宣言へのジャンプといった便利な機能が提供されているはずです。開発していて開発環境に不満を感じたら、それを解消する機能がデフォルトで存在しないか、あるいはプラグインとして提供されていないか、良く調べてみましょう。

また、保存や検索など良く使う機能にはショートカットやコマンドが準備されています。これらを覚えるだけでも作業効率は大幅に向上します。

Web業界での勉強のやり方を身に着ける

パソコンに向かって勉強するイメージ
プログラミング言語にせよ、フレームワークにせよ、技術は書籍やWeb上のドキュメントに目を通しただけでは身に着けません。それらを使ってサービスやプラグインを作るなど、アウトプットを繰り返すことで初めて自分の物になっていきます

仕事の中でインプット、アウトプットを繰り返すことは言うまでもなく、移り変わりの早いWeb業界についていくためには帰宅後に自宅で勉強する必要もあります。技術が好きでないとやっていけない、と言われるのはそのためです。

自分で何かプログラムを作ってみる

新しく学んだ技術を習得するのに最も適しているのは学んだことを利用するようなプログラムを作ることです。最初から壮大なものを作ろうとせず、最小限機能するプログラムを作り、そこに機能を追加していく形で、学んだ技術を使ってみましょう。実装力の向上にも繋がります。

どうしても解決できない問題はQ&Aサイトで質問してみる

独学の場合でも、バグなどの問題に直面することは多々あります。どうしても解決できない問題がある場合は、teratail (https://teratail.com/) やSack Overflow (https://ja.stackoverflow.com/) などのQ&Aサイトを利用してみましょう。

質問するときは、自分が取り組んでいる問題の背景、困っている点、試してみた手段などを過不足なく伝えるように工夫しましょう。問題解決のために相手が協力しやすいように質問する能力もWeb業界では重要なポイントです。

講習会や勉強会に参加して整理された情報を学ぶ

connpass (https://connpass.com/) やTECH PLAY (https://techplay.jp/) を利用して学びたいことを取り扱っているセミナーや講習会に参加しましょう。

ある程度整理された形で情報を得ることができますし、ハンズオン形式の講習会であれば、学んだことをその場でアウトプットすることで理解を深めることができます。ただし、複数人が参加し時間にも制限がある以上、あなたが理解に困ってもかかりきりで教えてくれるというわけではありません。

プログラミング学習サイトを利用する

より体形的に勉強したいのであれば、プログラミング学習サイトを利用するのも一つの手です。

ドットインストール (https://dotinstall.com/) 、Progate (https://prog-8.com/) 、paizaラーニング (https://paiza.jp/works) などは無料で利用することができます

オンラインスクールを利用する

メンターなど、自由に質問できる相手が欲しい場合は、オンラインスクールの利用を検討してみましょう。

最近では、CodeCamp (>> 口コミ・評判を見る) 、TECH BOOST (>> 口コミ・評判を見る)、DIVE INTO CODE (>> 口コミ・評判を見る) など、エンジニアのためのオンラインスクールも増えてきました。ただ、オンラインスクールは発展途上で、取り扱っている言語やカリキュラムがまだまだ限られています

【独学だと続かない人へ】プログラミングスクール比較9選!多忙な社会人や初心者の方にもおすすめ!

日頃の情報収集を怠らない

ノートパソコンで検索するイメージ
Web業界で生きていくためには勉強以外にも情報収集が必要です。業界の動向や最新のセキュリティの情報、新しいフレームワークなどについて知っていると、仕事や勉強だけでなく、今後のキャリアを考えるという点でも参考になります。

Web業界でのトピックを総合的に取り扱っている、あるいはそのような情報が多く集まっているWebサイトをフォローしておきましょう。

以下に幾つか例を挙げるので参考にしてみてください。

また、余裕があれば技術評論社のWEB+DB PRESSSoftware Designといった雑誌も購読するようにしましょう。

【2018年版】フロントエンドの皆さんへアンケート!あなたが《日々チェックするサイト》を教えてください

【2018年版】フロントエンドの皆さんへアンケート!あなたが今年買って良かった《技術本》を教えてください

まとめ

勉強のイメージ
以上で述べた姿勢やスキルは、Web業界でエンジニアとして働く基本の一歩にすぎません。基本的な事柄を学んだら、日頃の情報収集の成果と身に着けた勉強のやり方を活かしてスキルアップ・キャリアアップを目指していきましょう。




-SEの転職
-, ,

転ストおすすめの転職エージェント

IT/WEB業界に強くとにかく内定率が高い!
《レバテックキャリアの公式サイト》

レバテックキャリア

大手エージェントの強みを生かして豊富な求人の中から転職先を選べる
《マイナビエージェント×ITの公式サイト》

マイナビエージェント×IT

豊富な非公開求人と業界を熟知した担当者が転職を強力にサポート
《ワークポートの公式サイト》

ワークポート

圧倒的な求人数の多さで転職先の幅が広がる
《リクルートエージェントの公式サイト》

【リクルートエージェント】

過去のデータを生かしたマッチングで自分に合った転職先が見つかる
《ギークリーの公式サイト》

ギークリー

関連記事

ノートパソコンでプログラミングするイメージ

先輩に聞いた!企業で働く「業務系プログラマー(常駐フリーランス)の1日」の仕事の流れと勤務時間や業務内容

トモヤさん(仮名) の場合 年齢 40代 性別 男性 会社の業種 銀行業務系、保険業務系、薬局業務系、物流。現在はフリーランス 担当の業種 業務系プログラマー(VB.netやC#)。現在は業務系システ …

インターネットのイメージ

先輩に聞いた!企業で働く「ネットワークエンジニアの1日」の仕事の流れと勤務時間や業務内容

ヨシトモさん(仮名) の場合 年齢 30代 性別 男性 会社の業種 システム開発会社 担当の業種 ネットワークエンジニア Contents1 はじめに2 1日の流れ2.1 08:30 出勤及び引継ぎの …

パソコンでプログラミング画面を見る

先輩に聞いた!企業で働く「プログラマーの1日」の仕事の流れと勤務時間や業務内容

トモヤさん(仮名) の場合 年齢 30代 性別 男性 会社の業種 システム開発会社 担当の業種 会社オープン系プログラマー Contents1 はじめに2 1日の流れ2.1 08:30 出勤及び引継ぎ …

カフェで仕事するイメージ

フリーランスエンジニアの不安を解消してくれる強い味方!案件・求人紹介サイト比較9選!

Contents1 フリーランスエンジニアの味方!案件・求人紹介サイトを利用するメリット、デメリットとは?1.1 案件・求人紹介サイトを利用するメリット1.1.1 不利な条件の仕事を請け負うリスクを回 …

オフィス内で仕事をする男性

社内SEの仕事とは?転職に向けてすべき準備は何?

SEは誰と仕事をするかで2種類に分類できます。外部の会社から仕事を受注する開発SEと自社内の情報システムの開発や保守に携わる社内SEです。 ここでは、転職を考えている方に向けて、社内SEの仕事の内容や …




サイト内を検索

ページのトップへ戻る