コンテンツ
- チームと文化の管理
- バグやストレスなし-あなたの人生を破壊することなく人生を変えるソフトウェアを作成するためのステップバイステップガイド
- プロセスの開放–コアDevOps哲学
- スタックの取り扱い– DevOpsマネージャーとシステム管理
ソース:DragonImages / iStockphoto
取り除く:
DevOpsは洗練されたアイデアです。DevOpsマネージャーは、コードベースの作業、セキュリティ、コストなどの側面を網羅する大きな仕事を担っています。
ソフトウェア開発とソフトウェア操作の2つのプロセスをブレンドする「DevOps」の概念は、ビジネスの世界で山を動かしました。企業は、プロジェクトをパイプラインで動かし、合理化された継続的なソフトウェア配信を促進する方法について、この革新的な哲学を取り入れようと急いでいます。
この動的な環境では、DevOpsマネージャーは企業構造の重要な人物です。 (DevOpsの開発におけるDevOpsの詳細をご覧ください。)
DevOpsマネージャーは何をしますか?短い答えと長い答えがあります。簡単な答えは、DevOpsマネージャーは単に哲学としてDevOpsを促進および実装するということです。DevOpsマネージャーは、DevOps戦略に従ってチームを処理し、DevOpsを外部コミュニティにも、たとえば顧客ベースに伝道します。
長い答えは、DevOpsマネージャーは多くの帽子をかぶることができるということです。チーム管理だけでなく、テスト、システムの保守、ビジネスパートナーやベンダーとの契約の設定などの技術プロセスにも関与している可能性があります。セキュリティからコスト、自動化、CI / CDに至るまで、DevOpsマネージャーはさまざまな責任と課題を抱えた真の仕事を担っています。
DevOpsマネージャーが日々何をするかについて、もう少し専門家に尋ねました。
チームと文化の管理
ほとんどすべてのDevOpsマネージャーにとってのトップレベルの課題の1つは、ビジネスの人的側面です。
通常、DevOpsの求人広告は、DevOpsマネージャーにエンジニアのチームを指揮し、DevOpsの実装目標に向けて移動させる責任を負います。
「DevOpsマネージャーは、関与するさまざまなチームがソフトウェア配信の品質と速度に向けた共通の目的で協力することを保証する責任があります」とアリセントのJitendra Thethi氏は述べています。 「すべてのケースで克服する共通の課題は、組織にもたらす必要のある文化的変化です。これには、チームに適切なツールとベストプラクティスを提供する上で、リーダーシップレベルからエントリーレベルに至るまでのコミットメントが含まれます。」
バグやストレスなし-あなたの人生を破壊することなく人生を変えるソフトウェアを作成するためのステップバイステップガイド
誰もソフトウェアの品質を気にしない場合、プログラミングスキルを向上させることはできません。
また、Thethiは、自動化のテストに熱心に関与しているDevOpsマネージャーの数を指摘し、これらの専門家は「自動化で手動アクティビティを置き換えるまたは排除するツールを使用する」と述べました。
「DevOpsマネージャーは、関連するDevOpsマトリックスに基づいて、サイクル時間、ビルドの頻度、テストカバレッジとテストのサイクル時間、リリースの速度、および展開の頻度を継続的に測定および最適化します。」
プロセスの開放–コアDevOps哲学
このチーム管理はすべて、DevOpsの「魔法」の一部を会社のワークフローに取り入れるのに役立ちます。
目標到達プロセスまたはパイプラインを強化するために、DevOpsマネージャーはプロセスを高速化または同期化する革新的な方法を見つけて、プロセスをよりシームレスにする必要があります。多くの場合、ハードウェアおよびソフトウェア環境の制限の一部を廃止することにより、企業が100%のピーク効率で動作することを防ぎます。 (DevOpsが組織に適しているかどうかわからない場合は、DevOpsがIT戦略にとって重要である理由を確認してください。)
「この業界では、過去5〜10年にわたって、開発者と運用のために別々のサイロを使用してソフトウェアを開発および展開しても、通常は良い結果が得られないという一般的な認識がありました」と、Retriever CommunicationsのCTOであるNic Grange氏は説明しました。 「サイロは、フェンスを越えて物事を投げかけ、何かがうまくいかなかったときにお互いを責めるという文化を作り出します。 DevOps運動の初期の段階では、それらのサイロを分解することに焦点が置かれていました。そのため、開発者とオペレーションはお互いにより共感し、よりよく連携することができました。」
DevOpsマネージャーが完了することを求められる可能性のあるいくつかのコアタスクを列挙する中で、Grangeは、新しいソフトウェアを迅速に展開し、コードベースに取り組む前にさまざまな種類のシステム設計を実装するために高度に自動化されたCI / CDパイプラインを持っていると述べました運用分野における開発者のスキル。
このすべてが、会社に具体的な利益をもたらすと彼は言った。
「DevOpsアプローチを使用すると、企業はソフトウェアをより頻繁に展開し、より迅速に配信し、信頼性を高めることができるはずです」と、グランジ氏は述べています。 「これは、誰かが新しい機能を考えてから実際に実際のユーザーの手に渡るまでの時間を短縮できることを意味します。また、ソフトウェアが本番環境に到達した時点で既に動作するように設計されているため、ソフトウェアの信頼性が高いことを意味する必要があります。
スタックの取り扱い– DevOpsマネージャーとシステム管理
DevOpsマネージャーに割り当てることができる他の多くのタスクの一部は、テクノロジースタック、特定のハードウェアおよびソフトウェア環境、およびシステムを正常に機能させるリスク管理プロトコルに関連しています。
アジャイルプラクティスを革新するだけでは十分ではありません。DevOpsマネージャーも将来の計画を立てる必要があります。これらの個人は、災害復旧やクラウドコストの管理を支援するよう求められる場合があります。 AWSなどのベンダーサービス、Microsoft Azureなどの製品、さらにはDockerやKubernetesなどのコンテナー仮想化ツールと連携する必要がある場合があります。場合によっては、スタックの問題を解決する必要があります。一部の企業では、自社の製品やサービスのサービスレベル契約の作成や、外部ベンダーのサービスやサービスの評価に関与するDevOpsマネージャーもいる場合があります。
「理想的なDevOpsマネージャーには、開発、運用、セキュリティ、インフラストラクチャ、およびサポートに渡る幅広いスキルを持つチームがあり、コンサルタントとして行動することで、総合的な配信チームが新しいツールとテクニックを取り入れることができます」とAtlassianのデベロッパーアドボケートは述べています。 「より現実的には、DevOpsマネージャーには少数の(システム管理者)がおり、デプロイメントパイプラインのすべてのツールを自動化、統合、および運用することは不可能です。」
ブキャナンはさらに、DevOpsマネージャーは単なる発明パラダイムのように感じる人もいますが、実際のアプリケーションではこの役割がどれほど重要かを示していると説明しました。
「DevOpsの利点を認識していない会社を見つけるのは難しいです」とブキャナンは言いました。 「このような概念はほとんどありませんが、大幅に改善される見込みがあります。しかし、DevOpsマネージャーが何をするのかを特定するのは難しいため、DevOpsが何であるかを正確に定義するのは困難です。初期のDevOpsの思想的リーダーは、DevOpsマネージャーはもちろんのこと、DevOpsチームのようなものはないはずだと主張しました。それでも、業界調査と求人はどちらも専門家と矛盾しています。」
実際、DevOpsマネージャーはITで大きな仕事をしています。彼らは、機械学習と知覚コンピューティングの新しい時代に突入する際に、最新かつ最高のテクノロジーを生み出し続ける「次世代」の管理慣行への道を開く手助けをしています。