はじめに
- クラウドインフラエンジニアの採用面談時に質問すると、その人のレベルが測れそうなことのリストを作ってみる試み
- 履歴書や職務経歴書は基本的に盛ってあるので信用しない
- 本質的にはクラウドだろうとオンプレだろうとインフラエンジニアに求められるスキルには大差ないと思う
- これらに答えられるから優秀とは限らないが、答えられない人の多くは優秀とは言えない可能性が高い
- あくまで、本人なりの理解があって、その説明とか説明力があって、自社とのギャップが明確になればいいと思う
- Web系に偏っていることは認める。あとネットワークエンジニアも考慮外になっている
- 混ぜるとわかりにくくなると思うので AWS に寄せてある。
なにはともあれできることを確認
- 使える、使ったことがある、使いこなすことができるOS
- 同上で言語
- 同上でミドルウエア(DBMS, Cache, KVS, その他)
- 環境構築で使用するツールは何が使えるか
- エディタ、IDEは何を使っているか
- 公開リポジトリ(github,bitbucketなど)があれば教えてもらう
- CIツール(TravisCI, CircleCI, Jenkinsなど)の使用履歴
- デプロイについて話してもらう(capistrano, BG Deploy, 自前でシェル書いていたとか)
AWS で全体的に
-
コンソリデーティッドビリングを理解しているか
- 請求とコストページを見ているかどうか、コスト意識がわかる
- ルートアカウント、IAMユーザ、グループ、ロールの役割の違いを説明できるか
- 主体的にアカウント管理をしてきたのか他の誰かがやったことに乗ってきただけなのかがわかる
- セキュリティに関する意識がわかる
- リージョンとアベイラビリティゾーンの関係を説明できるか。使用箇所の選定基準を持っているか
- ちゃんと使っていたのかどうかがわかる
- コスト意識がわかる
- VPC でパブリックサブネットとプライベートサブネットの違いを説明できるか
- ネットワークがなんとなくでもわかるレベルなのかがわかる
- 特定の要件によってオールパブリックでしかやっていないケースは許容範囲(理由が説明できること)
- subnet をどう区切るかを説明できるか
- 使ったことのある(管理可能な)AWSのサービス名を列挙してもらう
- 自社で必要のないサービスは挙がらなくても構わない
- Workspaces とか Snowball とかちょっと特殊な用途ですし
- 逆に必要なサービスが挙がってこない場合は聞いてみること
- EC2 や ELB はもちろん ElastiCache,RDS,R53,CloudFront,ACM,WAF,S3,Glacier くらいは Web 系なら使っていて欲しい
- 実際自前でテストでこれらを使っても数百円から数千円未満で十分勉強できます
- Lambda や API Gateway とかである程度遊んでいます、な人については、本当に写経で遊んだだけのタイプと自分の作業に組み込んでる人の二系統あると思うので注意
- ここ数年 docker に対する注目度が高いので必要なら確認
- 自社で必要のないサービスは挙がらなくても構わない
- AWSに関する情報の仕入先
- 本家ドキュメントやAWSブログ, ソリューションアーキテクトブログは当然として、APN企業のテックブログ、海外ブログなど
具体的なシステム構成について
- これまでの経験から、もっとも理解できているシステム構成についてAWSで実現するとどのような構成になるか
- 自社で必要なサービス形態に合わせたシステム構成の場合はどうか
- Webサービス企業なら、3Tier, LAMPなどの構成図をその場で書いてもらう
- あなたが考える理想的なサービスのシステム構成図を書いてもらう
- 注目すべき要件を考えておく
- 今後は(iOSの)ATS のおかげで https が必須になるので、ACM を理解しているかどうか
- CloudFront (CDN)の導入パターンをどのくらい理解しているか
- RDS や ElastiCache をどのくらい理解しているか
- ログをどのように扱うか
- CI (Jenkinsやcapistranoなど)をどのように組み込むか
- SPOF が残らないか
- オートスケーリングをどのように扱うか
- セキュリティはどうか
- バックアップはどうか
- マイクロサービスやサーバーレスについて
- 注目すべき要件を考えておく
あとがき
- 実際、人材派遣会社から紹介されるインフラエンジニア(笑)の8割は図面がまともに引けない(個人的な主観です)
- もちろんこれらに完全に答えられる人材はそうそう市場に出回らない(と思う)
- 大事なことは完璧に答えられるかどうかよりも人となりだし、自社に合うか合わないか、が優先されないとお互い不幸になることに注意する
- このリストはあくまでクラウドインフラエンジニアとしての経験値や勉強量を測るためのものさしに過ぎない
- もっとこういうこと聞くといいとか、こんな聞き方があるとかを教えてもらえるとうれしいです