新卒インフラエンジニアを育成した話


お久しぶりでございます。諸事情によって半年近くも息を潜めていましたが、また継続的なアウトプットをしていきたいと思います。あうとぷっとあうとぷっと。

昨年からAWSに触り始めて、少しずつ研究して、今年から本番運用を開始できています。なので、そっち方面が多くなりそうなのですが、その一発目として昨年にAWSを軸に新卒インフラエンジニアを育成してみた話を書いてみます。



経緯

ウチでは一般的な新卒採用を行っています。内定が出て、入社後はエンジニアも一定期間の研修を受けて、そして配属されることになっています。

私は稀に、キャリアプランによっては内定した段階の子との面談を組まされるのですが、その時点でインフラエンジニアになるという断固たる決意を持っていて、研修の段階に入っても意志は変わらなかった野郎がいたのでインフラ部隊に入れることにしました。しましたといっても普通は、配属は本人の希望以外に人事部判断や各部署の人材希望も関わるため、そう思うようにはいきません。また、新卒エンジニアの多くはアプリケーション開発の道を最初に歩むのが基本であるため、いきなりインフラ部というのは初の試みでした。

今回の場合は、他社で数年のアプリケーション開発のバイトを経験済みだったのでその点は問題なかったのですが、ごく普通に配属運に任せていたらどこにいくか本当にわからなく、そうなると当人のモチベーションに大きく関わるため、面談縁もあったので一肌脱ぐことにしました。

配属

私がやったことは、4月に入る前から人事部に対して少しずつ、本人の希望や適性、モチベーション、そしてインフラ部での業務や平均年齢の若返りといった必要性などを説きました。

そしてちょうど、(当初は)4ヶ月後くらいにリリース予定のサービスがあり、AWSを使う予定だったのでそれを題材に育成することにしました。一人で責任持ってひとつのシステムの面倒をみることが、もっとも成長できると考えているからです。

本人には入社直後にその旨を伝え、研修をこなしつつ4ヶ月間を死ぬ気でやりきれと言うと、快く承諾したので楽しい地獄特訓の始まりです。

そのわかりやすい成果として、研修の3ヶ月間が終わった時点の配属にて、本人意思表示と外道プッシュ、そして既にサービス構築に取り掛かっているという実績からか、わりとすんなりインフラ部に配属されました。新卒配属という仕組みからするとイレギュラーな面倒くさい存在だったかもしれませんが、頑張れば配属運という要素も9割方は削れるのかなという感触でした(当社比)。

講義

よくある話でリリース予定のサービスは余裕で延期されたので、実際のリリースまでにはもっと色々やっているのですが、ここでは最初の約4ヶ月間で行った取り組みを書いていきます。

まずはマンツーマン、時には勉強会形式で複数人に対して私が行った講義の内容です。

基礎知識

  • AWS基本構成
  • DNSの基礎
  • SSLや暗号化の基礎
  • iptablesの基礎
  • syslogの基礎

  • 実践形式

  • Bashスクリプトの深淵
  • ルーティングの設定
  • NATサーバーの構築
  • Keepalivedで学ぶVIP冗長化
  • Keepalivedで学ぶ負荷分散

  • 運用

  • インフラ費用試算の方法
  • アラート&グラフ監視ツールの監視項目説明とキャパシティ予測方法
  • MySQLの監視項目説明
  • my.cnfで学ぶMySQLサーバー
  • 各種リファクタリングツールの理解

  • 物理

  • サーバーの筺体内部説明
  • IDC見学と説明 (入室管理/空調/耐震構造/19インチラック構造/ネットワーク機器(L3,L2)/サーバー設置構成/配線技術/オンサイト保守業者とのやりとり/HDD交換作業手順)

  • 課題

    こちらは、URLや目的だけを提示して独学で勉強してもらった類のものです。

    資料漁り

    2014年からはじめるAWSリンク集 | 外道父の匠 を全部読んでもらいました。今、2015年版を書いたら3倍くらいになりそう。

    ドメイン管理

    個人用のDNSドメインを持っていなかったので取得してもらいました。実際に運用管理するという点と、将来的に独自ドメインでアウトプットする場を整備することを見据えて。

    AWS

    アカウント
  • AWSアカウントの理解と社内利用状況の把握
  • IAMの理解
  • ネットワーク
  • 社内既存のIPアドレスの把握とAWSのIPアドレス設計
  • VPCの理解と設計と構築
  • VPC VPN <=> Linux VPN を接続する
  • 複数のVPCと複数のオフィスにおける運用しやすいネットワーク構成を考える
  • CloudFormationによる構成テンプレの抜き出しと使い回し
  • アプリケーション管理
  • OpsWorksを使ったアプリケーション管理
  • OpsWorksのカスタムChefによるデプロイ
  • アプリケーション管理ツールを使わない、効率的なアプリケーション管理
  • DB/KVS
  • RDSを利用する
  • RDSの冗長化構成を検証する
  • RDSの各種ストレージ仕様と費用について考察する
  • ElastiCacheを利用する
  • ElastiCacheの冗長化構成を検証する(memcached/redis両方)
  • その他
  • Custom AMIの作成と運用について考える
  • S3を利用する
  • S3をWebサーバにしてみる
  • CloudFrontを通して、S3やWEBサーバーのコンテンツをキャッシュしてみる
  • キャッシュ関連のHTTPヘッダの仕組み、ついでにHTTPヘッダ全般とステータスコード
  • DNSにCNAMEレコードを登録して、独自ドメインでAWSにアクセス

  • 監視

  • CloudWatchなのか、その他のツールを使うのか、併用するのかを考える
  • NagiosとZabbixの両方を触ってみる
  • CactiとGangliaとGraphiteを触ってみる
  • 足りない監視項目がないか、何がキャパシティオーバーになりうるか考える

  • バックアップとリストア

  • RDSのバックアップ仕様を確認する
  • ElastiCache(Memcached/Redis)のバックアップ仕様を確認し、そもそものサービスとしての要不要を確認する
  • バックアップを置く場所、単体容量、日時経過による総量、間引き を考える
  • リストアに求められるパターンを考え、対応可能な精度を把握する
  • リストア手順をまとめ、リストア所要時間を計算して把握する

  • ログ

  • 各種ログの種類を把握し、それぞれの置き場所、重要度、蓄積容量を確認する
  • 一箇所に集めるログの、収集の仕組みと蓄積サーバーの構築管理
  • 1つ1つのシステムに対してログの存在を強く意識する

  • ベンチマーク

  • 各種ハードウェアリソースの計測(CPU/ストレージ/ネットワークBandwidthと往復時間)
  • アプリケーションのスループット計測

  • インフラ費用試算

  • 新サービスの想定ユーザー数や想定トラフィックを聞いて把握する
  • 各役割が1台あたりどの程度のトラフィックを捌けるか測定する
  • サービスの性質とコストパフォーマンスから適切なインスタンススペックを提案する
  • ピークタイムに5割のリソース消費となるよう台数を推測し、その台数から費用を試算する

  • インフラ構築実践

  • サービスに必要なネットワークとインスタンスを構築する
  • SPOFになっている箇所がないか、SPOFでいく場合はその復旧時間と影響度合いを整理して説明する
  • アプリケーションエンジニアと相談しつつ、デプロイを筆頭に人的運用の仕組みを確立する
  • 監視、ログ収集、バックアップといった機械的運用を確立する
  • サービス運営者に聞いて、サービスの長期的な予定、日単位の予定、時間単位の動きを把握する



  • 細かくはもっといっぱいあったと思いますが、ザッとこんなもんでした。

    わりと本気で若い芽を摘むつもりで次々にぶっこんでったはずだったのですが、若い芽は踏んだ方が強く伸びるのか、平成生まれはITに強靭なのか、見事にやりきってくれました。よかったよかった。その勢いのままに、AWSでのリリースの一本目をほぼ一人でインフラを担当して平和に運用できているので、お互いの成果としては上々だったのではないでしょうか。

    こういった取り組みをする上で、大雑把な目標として提示した概念として、『半年で勝負を決めてしまえ』というものがありました。最初の3年やら5年やらで取り組んだ質がその後も決めると言われることがありますが、学習の高速道路が整っている今、3年は長い、半年でやりきって後を楽にしろという考えを押し付けてみました。私が数年かけてダラダラと習得していった内容を圧縮注入した感じですね、凄い凄い。

    もっというと、『早くいつでもどこにでも転職できるようになってしまえ』と言っています。この業界、1年先が見通せないというのもありますが、いつでも転職できて生活不安がない、という自信のある状態は、日々の取り組みの品質や精度を上げてくれるのでは── 技術的・政治的な面における攻守バランスに好影響となるのでは── と感じているので、なんにせよ実力は早くつけて損はないという雰囲気で取り組んでいます。


    多分、これが複数人同時となると上手くいかない気がするし、ちょうど育成題材が転がり込むかは運ですし、インフラエンジニア育成の機会自体がほぼないと思うのですが…… 二人目が来た時にあまり考えないで済むように書き留めてみた次第であります。

    新卒インフラエンジニアを育成した話 への13件のコメント

    1. ピンバック: 新卒インフラエンジニアを育成した話 | 外道父の匠 | ブログハッカー™ 2chまとめブログアンテナ

    2. Tem maravilhoso que você está recebendo ideias deste post ,
      bem como de nosso argumento fez neste lugar .

    3. Wow! At last I got a web site from where I be capable of actually get helpful data concerning my study and knowledge.

    4. Why do girls get their bellybuttons pierced? My gf wants her bellybutton pierced, but I find it super trashy and told her I will not
      stand for it. Why on earth would she do that to herself?
      Makes girls look like hookers. I told her I will break up with her or
      make her take it out (I’d help her). Why do girls do this?
      it’s the arab hype

    5. a より:

      I do consider all of the concepts you have offered for your
      post. They are very convincing and will certainly work. Nonetheless,
      the posts are very quick for novices. May you please extend them
      a bit from subsequent time? Thanks for the post.

    6. Eat fruits and veg drink some water and watery foods and some other healthy
      stuff, it’s all about health

    7. Javier より:

      Thank you for another informative site. Where else may just I am getting that
      type of info written in such an ideal means? I’ve a undertaking that I’m
      just now running on, and I’ve been on the look out for such info.

    8. a より:

      I do not know if it’s just me or if everybody else experiencing issues with your
      blog. It appears like some of the written text on your content are running off the screen.
      Can somebody else please provide feedback and let me know if this is happening to them too?
      This could be a issue with my internet browser because I’ve had this happen previously.
      Appreciate it

    9. شرط داشتن ویزای شینگن برای اخذ ویزای
      انگلستان به هیچ وجه صحت ندارد!

    10. エンジニアは国内では良い立場にありません。 日本人にとっては、航空、機械など、さまざまな分野でエンジニアが気にかけていることをとても嬉しく思います。

    11. اجاره خودرو در دبی شاید خیلی مرسوم نباشد. این شهر در امارات متحده عربی قرار دارد و عموم مردم ثروتمند هستند و از عهده خرید هر ماشینی که دوست داشته باشند بر خواهند امد. اما برای مسافرانی که به این شهر سفر می کنند می تواند گزینه ی مناسبی باشد. با اجاره روزانه خودرو شما می توانید به راحتی سفر خود را مدیریت کنید و به هر جا که دوست دارید بروید.

    12. The company only managed to produce 26 vehicles in 1876, but in one year, in 1987, it was able to make significant progress, increasing its production to about 94,000 vehicles, and also, with its one-year development, its participation Among other hard-core rivals for other automotive companies. Kia Motors now has 8 major factories in cities like China, Vietnam, the United States and … But still the headquarters of this large company is located in South Korea and in Seoul.

    13. Click より:

      Center palipitations randomly? Two times ago I started having light palipitations that disappear completely soon after a couple seconds.
      It feels like my center is right at my epidermis. I’ve never had this before.
      My dad had a cardiovascular problem. I think it
      was where his heart skipped a beat. This literally just happened and generally occurs at night.
      What… display more PAC’s and PVC’s have become common center arrythmias and will not indicate a heart issue.
      However if this happens, you should at least go to your primary care doctor and also have some tests
      run, maybe a good referral to a cardiologist to ensure this is nothing serious.
      I’ve acquired these irregular cardiovascular beats since
      I was a teenager, and am 66 now. In later years I
      have created AFIB, but my cardiologist does not believe they
      are related.

    コメントを残す

    メールアドレスが公開されることはありません。

    次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <img localsrc="" alt=""> <pre class="" title="" data-url=""> <span class="" title="" data-url="">