見出し画像

システムアーキテクチャーって聞くと身構えるエージェントさんへ(PMポジションとの決定的な違い)

どうも!木村です!
玉ねぎ切った図ってよく言われてるやつ、その切り方バーベキューでしかやらないやつだろ、家でカレー作るときにその切り方せんやろって思った人も
システムアーキテクチャーを分かりやすく対応いただける記事にしてみました!


■アーキテクチャーって?設計業務との違いは?
■何ができればアーキテクトなの?
■クリーンアーキテクチャーって?
■まとめ



■アーキテクチャーって?設計業務との違いは?

超簡単にいうと、

サービス(システム)をビジネスサイドの意見を考慮しつつ、長期的に運用できるような要件定義〜設計を行って、マネジメントしていく

です!
あれっ。それってPMじゃないっすか。
って思えた人、実は正解なんです。

開発するにあたって必要な環境を全部知ってますよ、作れますよ。ってことはつまり、
バックエンドやインフラや画面側や開発環境(ツール)などサービスに合わせて考えられますよってスキルがただのPMとは違うんだってアピールになってるんです。

ちょっと詳しく書くと
ただ作って終わりじゃないサービスでは追加コンテンツ作ることってありますよね。
既存のソースコードと干渉して動かない。。とか、データーベースの作り方が微妙で変な感じにSQL書かなきゃいけなくなった。。とかとか。
これは運用面を意識してない設計をしてしまった時の困った例です。
ちゃんと考えていても起きることではありますが、少なくともどう変えればなんとかなる、がわかりやすい為、比較的エンジニアが変な困り方をしないで済むようにアーキテクチャーは必要なのです。



■何ができればアーキテクトなの?

ではエージェントが
「この人はアーキテクトの人だ!」
と確信を持って営業できるために必要な情報をまとめましたのでご覧ください!

一応通常PMポジションの業務を先に書いておきます。

・要件定義
・顧客折衝
・ドキュメント作成(クラス図やシーケンス図とかも含め)
・WBS(やることリスト)/ガントチャート(スケジュール)作成
・工数見積もり
・ベンダー選定/ベンダーコントロール/受け入れテスト
・作業指示/進捗管理
・メンバー管理/マネジメント

ここからが大事なアーキテクトの業務!!(ここ重要!)

・クリーンアーキテクチャーの概念を利用した設計
・インフラの選定〜構築
※特にクラウドサービスやterraform/ansibleなどの構成管理
・バックエンド側の設計〜開発スキル
※DBやらAPIやら各機能で使うツールなど
・可能であればフロント
※特にreact.js/vue.jsの知見
・開発のために必要なツールの選定〜導入、ルール策定
※GitやらCI/CDツールやらタスク管理ツールなど

なかなか厄介な言葉が出てきたと思いますが、
AWSなどのクラウドサービス、TerraformやAnsibleはよくSREエンジニア(Dev-ops←デブオプス)が対応するツールです。
長くなるので改めて別で書きますのでお待ちを。



■クリーンアーキテクチャーって?

クリーンアーキテクチャーの図

で、ようやく出てきましたクリーンアーキテクチャー。
まず予備知識としてクリーンアーキテクチャーってのはあくまで考え方(設計概念)なので、知ってるか知らないかだけのお話です。

営業として覚えておいてほしい内容はこちら!

クリーンアーキとは・・・階層を分けて、運用していく上で影響範囲がどこまでなのかをわかるようにする考え方

例えば月額制のWebサービスがあってデザインを変えてもビジネスモデルが変わることないですが、ビジネスモデルが変わったらデザインって絶対変わりますよね?ってものっす。

その考え方(分け方)を持ってすれば運用するのがめちゃくちゃ楽になるということだけ覚えておきましょう!



■最後に

アーキテクチャ/アーキテクトに関して超ざっくりお伝えしましたが、
アーキテクトの人がどんなスキルが必要なのかを理解すれば営業はできますよね!
本当は金額も書きたいですが、会社毎に違うと思うので伏せます涙
ただ、間違いなく

アーキテクト>>>PM

となることはご理解いただけたかなと思います!
もしかしたら所属されているPMさんでアーキテクトの方がいらっしゃるかもしれませんので、経歴書やアピールを変えるだけで大幅な金額UPが狙えるかもしれませんよ〜!

全然関係ないですが、
スキルシートをどう書いたら案件集まる?金額高くなる?みたいな相談もパートナーさんやフリーランスさんから受け付けております!
ぜひ一度ご相談してみてください〜!

この記事が気に入ったらサポートをしてみませんか?