最近気になってきたキーワード、『 DevOps(デブオプスと読みます、うーんカタカナにするとイマイチ感が...) 』。2009年にベルギーで一般的になりました。それからはいろいろな場所でDevOps のカンファレンスが行われているようです。日本では去年くらいからよく耳にするようになってきました。(もっと前かな?私が情弱?) 開発が『 Development 』、運用が『 Operation 』なので、2つの単語をあわせて DevOps となったようです。
要は、開発と運用を一体として考えるようなことだと思っています。すべての機能を開発後に顧客へリリース ( Waterfall Model ) するのではなく、ある程度開発したら、顧客にリリース・運用を行い、顧客の要望、運用で発生した問題点等をすばやくフィードバックし、改善していく ( Agile Model ) といったものです。
従来、Agile はソフトウェアの設計・開発工程だけのものと思われていましたが、それを顧客リリース後の運用フェーズも含めるのが流行りになってきているようです。世の中の求人もその影響を受けてきており、最近は、開発からリリース・運用までのスピードを加速させるためか、フロントエンドの開発から、インフラの運用まで一気通貫できる技術者である『 DevOps エンジニア』とか『 フルスタックエンジニア 』というキーワードの募集が目立ちます。
はてなで DevOps エンジニア を募集していますね。
--------------------------------
求人内容をみてみると、
- 求められる知識/経験
UNIX系OS、RDBMS(特に Linux、MySQL)についての基礎知識
ネットワーク機器(ルータ・スイッチなど)についての基礎知識
スクリプト言語(主に Perl/PHP/Python/Ruby)についての基礎知識
- あると好ましい知識
Webアプリケーションフレームワークを用いたアプリケーション開発の経験
ネットワークアプリケーションの開発経験
高トラフィックサイトの開発/運用経験
アルゴリズム/データ構造に関する基礎知識
CPUなどハードウェアに関する知識
OS の動作原理に関する知識
分散技術に関する知識
--------------------------------
インフラ、ミドルウェア、開発技術などかなり幅広い知識が要求されるようです。
一昔に比べてクラウドが一般的になったことで、仮想化技術を用いたインフラ構築が劇的に容易になったことや、開発環境、.NETFramework等のフレームワークなども充実しており、一人の技術者で出来ることが増えたことや、DevOps のような流れもあるため、このような技術者が求められるようになった要因なのでしょう。
昔書いた記事のサーバーワークス)大石さんの講演を思い出しました。昔と今では求められ方も変わるんだなと....こんな時代になったら、エンジニアとして生き残っていけるんだろうか。
※いろんな方が DevOps についてまとめられています。『 DevOps 』 、『 フルスタックエンジニア 』のキーワードで検索することで、色々なサイトが見つかると思います。個人的には、『 5分で分かった気になる DevOps 』が分り易いですね。参考にしてみてください。