アイクラフト新人研修2016の技術研修では、「xrdpによるLinux仮想環境 (VDI) システムの構築」を課題に設定しました。この研修の成果物であるブログ記事を計5つ、シリーズでご紹介します。なお、ソフトウェアのバージョンなどの情報は、研修を実施した2016年3月時点のものです。(大久保)

(本ブログ記事の著者: 高谷 莉奈)

1. はじめに

こんにちは! 今回は研修でどのようなことを取り組んだのか紹介します。 こんな感じで研修を進めていったんだなぁと雰囲気が伝われば幸いです。 研修方法の説明は【新人研修2016-3】 研修方法について (研修担当者向け) (松本さん) の記事を、 研修での学習方法などは【新人研修2016-2】 IT未経験者の基礎学習法 (岸田さん) の記事を読んでいただければと思います。

2. 研修目標

「アイクラフトのOSS系パートナーのエンジニアさん (Linuxでのxrdp以外の構築案件経験あり) と、今後xrdpの構築、運用を協力してやっていくためにxrdpに関する知識を習得してもらう」という想定で、xrdpサーバを構築するというテーマで研修を進めていきます。

全体の学びの目標

  • スクラムでの業務の回し方、チームでのコミュニケーション方法を使いこなせるようになる
  • 技術的調査の方法と情報の共有ができるようになる
  • 情報の収集・編集・発信ができるようになる
  • 仮説検証の枠組みと方法が理解できるようになる
  • 実際の仕事にどう役立つかイメージする
  • 自身のスキルレベルの把握、伸ばすべき部分を考えられるようになる

今回はスクラムという方法で研修を進めます。 また、研修生はシステム開発など技術的に詳しい経験者と、ほとんどパソコンを触ったことのない未経験者がいます。

経験者の目標

  • 未経験者のフォローやトレーニングをして教え方を経験すること
  • 仮説検証を通してアプローチする経験をすること

未経験者の目標

  • UNIX系のコマンドを習得すること
  • 調べた手順通りに構築する経験をすること

今回は未経験者の研修内容に沿ってお話しします。経験者の研修内容は触れる程度になりますが、 経験者の研究内容が非常に重要です。

研修の流れ

xrdpサーバの構築に向けて作業分担します。(分担したものをタスクといいます。) そのタスクを付箋に書き出し、スクラムボードに貼り付けます。 スクラムボードを「研修全体を通して必要なタスクを貼る部分」と「ToDo」、「Doing」、「Done」に区切り、各自担当タスクを移動させます。

  • ToDo: これから一週間で取り組むタスクを貼ります。
  • Doing: 今取り組んでいるタスクを貼ります。
  • Done: 作業が終了したタスクを貼ります。

スクラムボード

毎日メンバーが何に取り組んだか「デイリースクラム」で進捗状況の確認、質疑応答をして情報共有します。 一週間が終了したら、振り返りと次週の計画を練ります。 ここで出てくる反省を活かし、改善をしながら担当タスクに取り組みます。 経験者の担当タスクも基本的に自分がしたことのないものを割り振ります。また、このときフォローは研修担当の社員さんなどにしていただきます。

これなら一目で何をしているかわかるね。

3. 経験者と未経験者のタスク

経験者 2名

  • 学習のフォロー
  • Ubuntu MATE 14.04にxrdpサーバを構築
  • コマンド実行の記録が残せるようにスクリプトを書き動かす
  • xrdp導入 (apt-get使用、自分でビルド、X11RDP-o-Matic使用)
  • xrdpの描画されない不具合と日本語入力出来ない不具合の修正
  • /etc/sudoersをvisudoコマンドで編集し、sudoを行う権限を与える
  • VirtualBoxをインストールする
  • 社内ADとの連携
  • 構築手順書と技術メモの作成

未経験者 3名

  • UNIX,vimの基礎学習、コマンド打ち込みの勉強
  • ネットワークコマンドの基礎学習
  • su/sudo, apt, makeコマンドの基礎学習
  • xrdpサーバの構築
  • 発表資料の作成
  • 研修成果発表会

やることはわかったけど、どうやって取り組んだの?

それでは、取り組んだことについて経験談を踏まえてみていきましょう。

4. 取り組んだこと 〜経験者編〜

学習のフォロー

未経験者の質問にわかりやすく説明、問題が発生した場合の対処などフォローをします。このフォローに関しては研修全体を通して行うことになります。未経験者はわからないことだらけなので質問しまくります!

Ubuntu MATE 14.04にxrdpサーバを構築

まず未経験者が学習 (UNIX,vim,ネットワークコマンド,su/sudo,apt,makeコマンド) で実際に打ち込む環境をつくります。

コマンド実行の記録が残せるようにスクリプトを書き動かす

実際に打ち込む環境をコマンド実行した際に記録が残るよう設定します。これで 誰がどのようなことを行ったか履歴が残るようになりました。

xrdp導入 (apt-get使用、自分でビルド、X11RDP-o-Matic使用)

xrdpサーバの構築に使用するxrdpの導入をします。

/etc/sudoersをvisudoコマンドで編集し、sudoを行う権限を与える

su/sudoコマンドの学習で実際に実行できるように権限を与える作業をします。

VirtualBoxをインストールする

xrdpサーバを構築する土台を作成するためのアプリケーションのインストールをします。

社内ADとの連携

コマンドライン上ではうまくいきました。ですが実際のデスクトップ環境ではADの連携がうまく機能しませんでした。

構築手順書と技術メモの作成

想定しているエンジニアさんと未経験者3名がxrdpを構築する際に使用する手順書を作成します。 テストケースなどもメモとして残します。

5. 取り組んだこと 〜未経験者〜

UNIX,vimの基礎学習、コマンド打ち込みの勉強

ドットインストール http://dotinstall.com/ というサイトでUNIX入門とvim入門で動画を順番に見てノートテイキングをします。 動画1本5分程度ですが、話すスピードが速いので速度を落としてスロー再生、 わからない箇所を繰り返すといったように工夫して各自取り組みました。 一つの動画を終えたら、経験者が設定してくれたMATE端末 (打ち込める環境) でコマンドを入力して確認します。 経験者にフォローをしてもらい、わからない箇所やエラーなどが出た場合は 適宜、経験者に教えてもらい解決、理解していきました。 UNIX入門を終えたら、vim入門に移ります。取り組み方はUNIX入門と同じです。 一週間後のスプリントレビューでコマンド打ち込みの確認テストをしました。

ネットワークコマンドの基礎学習

UNIX入門、vim入門で少し勉強の仕方に慣れたところで 次にネットワークを運用・管理する上で必要となる「ネットワークコマンド」の学習に入りました。 こちらはサーバ構築の際に必要となる最低限のコマンドをあらかじめ課題としていくつかピックアップされたもの一つひとつを実際にMATE端末を使用して打ち込み、どのような表記がされるか確認して、意味と使用目的をインターネットや本で調べてvimに慣れることも含めてMATE端末でvimを使い、まとめました。

su/sudo、apt、makeコマンドの勉強とxrdpサーバの構築

ネットワークコマンドと同じく、サーバ構築の際に必要なコマンドの学習をします。こちらは参考書を読み、意味を理解し実際に打ち込みました。 これでコマンドの学習は一通り終えました。 その後、経験者メンバーが作成したxrdp構築手順書に準じてxrdpサーバを構築しました。 xrdpサーバの構築を体験するという目標が達成できました。

発表資料の作成

最後に発表会があります。それに向けて発表の内容と流れを考えてスライドを作成する人、 内容と流れの確認をし、式次第や配布資料の作成をする人に分かれて取り組みました。 また、発表は未経験者のみになりますので、役割分担をしておきます。(専門的な質疑応答は経験者発言OK) デモンストレーションを行う際に使用するAD連携が残念ながら直前になりトラブルが発生し、デモンストレーションの内容を急きょ変更することとなりました。

研修成果発表会

xrdpサーバとは何か、構築手順書で実際に構築したサーバの確認、デモンストレーション発表、個人の研修成果発表を行いました。

6. 社内の雰囲気

週に2回フィットネスの時間 (2,3人で10分程度) があるのでその時間に気分転換をして気分を新たに作業をすることができました。お昼休憩ではメンバーだけでなく、社員のみなさんにも気にかけていただいたり、話しかけていただいたりと和やかな雰囲気でお話をして楽しく過ごせました。

7. 感想

参加する日は人によってばらつきがあるのでなかなか全員がそろうことはありませんでしたが、 積極的に質問をしたり、同じ作業をしている人同士で助け合うなどメンバーとコミュニケーションをとりながらの研修となりました。一週間の振り返りと今後の計画を立てる際は、お菓子や飲み物を用意してリラックスしてメンバー内で意見が多く出せるようにするなど楽しんで研修を行いました。また、ネットや本で書いてあることが理解できないとき、かみ砕いて説明してくれたり、なにか問題が出たときに解決してくれたりと経験者から未経験者へのフォローはとても助かりました。経験者も未経験者のトラブル対応にあたることで、どういった部分で躓きがあるのか、どのように説明すれば伝わるのかという経験ができました。会話も増えて良い雰囲気で研修を行うことができました。 行き詰ることや、うまくいかないこともありましたがとても内容の濃い、意義のある研修でした。