エンジニアを目指すならサーバを自腹で立てて運用すべし!あなたの成長を促進するその理由とは(前編)

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

この記事では、なぜサーバ運用を経験すると技術レベルアップに有効かについて説明します。

サーバ構築・運用経験は技術レベルアップの近道!?

仮に読者の方が目指しているのがアプリケーションレイヤのソフトウェアエンジニアだとしても、一度はサーバ運用を経験することをオススメします。普段使っているサーバーや言語を支えているOSレイヤーやミドルウェアのレイヤーが、どうセットアップされて、どう管理されているのかを知っているか否かで、ソフトウェアの開発効率や発想の広がりに大きな差が出てきます。

datacenter with cctv camera in a long row

datacenter with cctv camera in a long row

Macのローカル開発ではできない事とは!?

それは、「世界に対して自分のプロダクトを公開すること」です。もちろんWebサーバ立てて、DB立てて、ブラウザで動作確認して、、と開発自体はできますが、あなたのPC上で開発している限りそのプロダクトは日の目を浴びることがありません。では、なぜプロダクトを公開する事に意味があるのでしょう?

mba_1

プロダクトを公開してこそ学べる事がある

強制的に運用しなければいけない状況を作ることで、学べることが沢山あります。立てたサーバーにwordpressで構築したブログでも、Webアプリでもなんでもよいので、インターネットに公開するサービスを何か乗せて、メンテナンスし続ける状況を作ることが大切です。

「解決したい課題」が沢山出てくる!

実際にサービスを運用してみると、困った事や解決したい事が沢山出てきます。例えば軽く思いつくだけでも以下のような事に直面するはずです。

  • アプリケーションコードの更新(=デプロイ)ってどうするればいいの?
  • ミドルウェアのアップデートってどうすればいいの?
  • ディスクが一杯になってきたけど、どうすればいいの?
  • サイトが重い!どうすれば早くなるんだろう、、
  • 気づいたらサイトが落ちてた!どうすればすぐ気づけるようになるだろう?
  • デザインを変更したのに反映されない!なんでだろう??
  • サイトが成長してきた!サーバ引っ越ししたいけどどうすればいいの?

解決したい事が沢山 = 学びのモチベーション

PAK85_lalamushimegane20140321

このような悩みこそがエンジニアとしての勉強意欲を促進し、自己学習につながります。最初の話に戻りますが、上記のようなサービス運用を経て見つけた悩みを解決する為にはOSやミドルウェア、データストアレイヤについての知識が求められる事が往々にしてあります。

  • 1:課題発見
  • 2:調査
  • 3:挑戦
  • 4:解決

このプロセスを繰り返す事で様々な技術レイヤの知識が身につくのです。

終わりに

この記事では、エンジニアを目指す人がなぜ自前でサーバ運用、サービスを公開した方がよいかについてまとめました。次回は、これらを実現する為にオススメのサーバホスティング業者の選定方法や課金体系等についてまとめたいと思います。
ではでは!

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

SNSでもご購読できます。

コメントを残す

*