フルスタックエンジニアが身に付けるべき知識のまとめ

一時期「フルスタックエンジニア」という単語が一種のバズワードとなっていましたが、最近は以前ほど「フルスタックエンジニア」という単語は聞かなくなりました。

しかし、実際にその単語を使わなくても、多くのエンジニアが「フルスタックエンジニア」を目指しているのは事実です。

フルスタックエンジニアという言葉の定義は曖昧ですが、基本的にはフロントエンドの知識、サーバーサイドの知識、そしてインフラ周りの基本的な知識を身に付けており、やろうと思えば一人でサービスをローンチできる状態にあるエンジニアのことをフルスタックエンジニアといいます。

エンジニアとして1つの道を極めるという人いますし、そのように1つの道を極めるというのも素晴らしい判断だと思います。

一方、フルスタックエンジニアを目指すという判断も同様に素晴らしい判断だと思います。

フルスタックであれば企業でも重宝されますし、個人でサービスを立ち上げる際にも一人で全部できてしまいます。

転職をする際にも転職先はすぐに見つかります。

そういう意味でフルスタックエンジニアを目指すというのは、エンジニアとして素晴らしい判断です。

先ほどフルスタックエンジニアの定義を軽くしましたが、実際にフルスタックエンジニアが身に付けるべきことを今回は1つずつ説明していきたいと思います。

スポンサーリンク
PC用の広告

フロントエンドの知識

まずはフロントエンドの知識です。

HTMLとCSSは絶対に身に付けるべき知識です。これができないと話になりません。

これはフルスタックでなくても、エンジニアであれば全ての人が身に付けるべきと言えるかもしれません。

また、Javascriptの基本的な知識も必要です。

最近ではjQueryを使うことは減ってきていますが、JQueryを最低限軽く触れるぐらいの知識は持っておく必要があります。

既存のプロジェクトの中にはJQueryをがっつり使っているプロジェクトもあるので、移行期である今はまだ触れたほうが賢明です。

また、最近であればReact.jsかVue.jsのどちらかを書けるようになる必要があります。

ReactかVueでSPAのフロントエンドを書ける知識が必要です。

また、Webpackやbabelなどの知識も同時に身に付けておく必要があります。

フルスタックエンジニアを目指すなら、フロントエンドはこれぐい身に付けておきたいところです。

デザインに関してはよほど余裕がある場合には手を出してもいいと思いますが、デザインはデザイナーに基本任せるのであれば、最初の段階では手を出さなくてもいいかと思います。

サーバーサイドの知識

サーバーサイドは、最低限1つの言語と、その言語のフレームワーク1つを身に付けましょう。

例えばRubyとRuby on Railsであったり、PythonとDjangoであったり、PHPとLaravelといった感じです。

フレームワークを使ってWebサービスのバックエンドが簡単に組めるのはもちろんのこと、APIをサクッと作れるようになっておく必要もあります。

また、余裕があれば自分の得意な言語とは性質が異なるサーバーサイドの言語を学ぶとさらにフルスタックエンジニアとしての価値が上がります。

動的型付けの言語が得意であれば静的型付けの言語にも手を出してみるべきです。

また、当然ですがSQLの知識やデータベース周りの知識もしっかりと身に付けておく必要があります。

フレームワークを使うとここがおろそかになりがちですが、フルスタックエンジニアを目指すのであればDB周りも絶対に押さえておく必要があります。

インフラ周りの知識

サーバーサイドとフロントエンドの知識に加え、インフラ周りの知識も知っておく必要があります。

今の時代であれば、AWSやGCP(Google Cloud Platform)のどちらか1つを使いこなせるようになっておく必要があります。

GUIを使ってサーバーを立ち上げて諸々の設定をできればまず最初の段階としてはクリアだと思います。

が、コマンドを使って構築したり設定したりできるようになるとさらに良いかと思います。

また、インフラに関しては運用面の知識もしっかりと身に付けておく必要があります。

ログの見方であったり、障害時の対応であったり、ここはどれだけでも追求しようと思えば追求できてしまいます。

フロントエンドやサーバーサイドにある程度自信が持てるようになってからインフラ周りを攻めるというのがもしかしたら効率がいいかもしれません。

その他身に付けるべき知識

フロントエンドの知識とサーバーサイドの知識とインフラの知識が身に付けば、フルスタックエンジニアと名乗ることはできると思います。

(ネイティブアプリが作れなくてはフルスタックエンジニアとは呼べない、という人もいるかもしれませんが。)

そのほか身に付けておいたほうがいい知識としては、基本的なコンピューターサイエンスの知識が挙げられます。

入門 コンピュータ科学 ITを支える技術と理論の基礎知識」を一冊読んで最低限の知識を身に付けておけば良いかと思います。

また、ネットワークに関する知識もあると後々役に立ちます。

マスタリングTCP/IP 入門編 第5版」などが名著として有名ですので、この本に一度目を通しておくと良いかと思います。

この知識は、障害時などに問題の切り分けをしたり、原因の目星を付ける際に非常に役に立ちます。

長くこの業界で活躍をしたいのであれば必須の知識と言えます。

以上がフルスタックエンジニアで身に付けておきたい知識の一覧です。

一朝一夕ではフルスタックエンジニアになることはできませんが、継続していけば誰でもフルスタックエンジニアになれます。

また、忘れてはいけないのは、全てが平均点止まりではだめということです。

全て平均点を超えるのは当然で、その中でどこか1つの領域で突き抜けていると、エンジニアとしての市場価値はさらに上がります。

ただ、自分がどの領域に向いているのか、どの分野が好きなのかは一度触ってみないことには分かりません。

そういう意味でもまずは全てで平均点以上が取れるようになるのが先かもしれません。

フルスタックエンジニアになることは簡単ではありませんが、努力すれば必ずなれるので頑張りましょう!

スポンサーリンク
PC用の広告

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
PC用の広告