受験勉強?あれは一種の暗号だろ?
わたしがほしいのは生きる上で役立つ知識だ
出典:岩明均『寄生獣』 第1巻 講談社
中央システム 2019年度 新入社員研修 では「スペシャリスト研修」を導入しました。はてさて、どのようなものだったのでしょうか。
「ある分野に特化している人」 と定義しました。
プロフェッショナルに内包されます。
- 常識・良識をもつエンジニアを育成する
- 技術的には広く浅く、ICTの教養を身に付ける
- 「ICTは楽しい」を経験する
プロフェッショナル研修が、社会人としての基礎力中心であることに対し、スペシャリスト研修ではICT技術の強化を図ります。
ICT業務に従事する人を大きく2つのタイプに分けました。そして、いずれのタイプであっても必要な素養を身につけてもらうためのカリキュラムを用意しました。
「技術研修」と「グループワーク」です。
※水曜日は終日プロフェッショナル研修のため、月・火・木・金での実施
- 管理者寄りの人
- 「プロジェクトリーダー」「チームリーダー」等
- 要件定義、お客様との調整、進捗・人員管理、が中心の業務
- 開発者寄りの人
- 「システムエンジニア」「プログラマ」「テスター」等
- 設計、実装、テスト、運用、が中心の業務
ICTの各分野(プログラム開発~インフラ)に関する知識について、「広く浅く」をモットーに実施
- 前半はPowerPoint資料を用いての座学形式
- 後半は演習形式(プログラム演習・環境構築演習・Microsoft Formsを使用しての理解度チェックテスト等)
グループを組んで、自由に、作りたいものを企画・開発
技術研修
技術研修の各カリキュラムの概要を紹介します。
- Windows
- Linux
- プログラミング_言語編
- プログラミング_システム開発編
- データ
- データベース
- インフラ_システム構築編
- インフラ_ネットワーク編
- 座学
- Windowsとは
- Windowsの操作
- 主要なアプリケーション
- ファイルとフォルダ
- プロセス
- システムの設定
- CLI
- サーバ、クラウド
etc…
- 演習
- 理解度チェックテスト
- PowerShellスクリプト作成
- 座学
- Linuxとは
- Linuxディストリビューション
- ディレクトリ構成
- ネットワーク設定
- デーモン
- cron
- syslog
- コマンド紹介
- viエディタの使い方
etc…
- 演習
- Bashスクリプト作成
- 座学
- プログラミング言語の年代別トレンドツアー
(アセンブリ~C~Java~Ruby~Python~JavaScript~Rust) - Pythonについて
- Visual Studio Codeの使い方
etc…
- プログラミング言語の年代別トレンドツアー
- 演習
- プログラミング言語の年代別トレンドツアーで紹介した言語でHello World作成
- Pythonスクリプト作成
- 座学
- 開発工程(要件定義~実装~運用)
- 開発手法(ウォーターフォール、アジャイル)
- 3層アーキテクチャ
- バージョン管理(Subversion、Git)
- Servlet/JSP
- Eclipseの使い方
etc…
- 演習
- Eclipseの使い方調査演習
- Servlet/JSPで作られたシステムのデバッグ演習
- Git演習
- 座学
- データ型
- 文字コード
- 制御関連
- フォーマット
- エンコード
- ハッシュ
etc…
- 演習
- 理解度チェックテスト
- 基本情報技術者試験過去問チャレンジ
- 座学
- データベースとは
- メジャーなDBMS紹介
- RDB入門(テーブル、カラム、主キー/外部キー、インデックス、トランザクション、排他制御、etc…)
- SQL概要(DDL、DML、DCL)
- PL/SQL
etc…
- 演習
MariaDBでのSQL演習
- 座学
- 高可用性(HA)
- 冗長化(ホットスタンバイ、コールドスタンバイ)
- フェイルオーバー/スイッチオーバー
- 負荷分散(クラスタリング、ロードバランサー)
etc…
- 演習
- Hyper-Vを用いた仮想化Linux上に、Servlet/JSPで作られたシステム を構築してみよう(CentOS、Java、Apache + Tomcat etc…)
- 座学
- インフラ業務とは
- クラサバ構成
- ルータ/ハブ
- ファイアウォール/プロキシ
- プロトコル
- 暗号化
- サーバー攻撃
etc…
- 演習
- 理解度チェックテスト
- TCP/IP通信プログラム作成
- WireSharkでパケット観察演習
グループワーク
- 作ってみたいアプリを企画・開発すること
また、最終日に作成したアプリを実際に動かしながらプレゼンを行うこと - 期間は11日間
- プラットフォーム、プログラミング言語、開発ツール、ドキュメントのフォーマット、等は基本自由
- 納品物
- 企画書
- 基本設計書
- アプリ本体
- テスト仕様書
- エビデンス
- プレゼン資料
- チーム
4名チームと3名チームの2チーム - 評価内容
- 企画の面白さ
- 各納品物の出来栄え
- 最終日のプレゼン内容
範囲と言うかボリュームがヤバすぎない?
否 め な い ( 震 え 声 )
新入社員研修にしては「ボリュームが多すぎ」「範囲広すぎ」かもしれません(加えてプロフェッショナル研修やその他いろいろもありますからね)。しかし、プロのシステムエンジニアとして必要な知識・技術を考慮すると、当然足りません。
無論、「スペシャリスト研修を受けたんだから、全部知っているよネ?A-ha?」なんという、乱暴なスタンスではありません。技術研修ボリュームが多い・範囲が広いことは重々承知です。
高度化・上流工程化の一途を辿るICT業界で、第一線で活躍するためには、幅広い知識と技術が必要です。まず新入社員の時点で、広く浅くで触れさせて、「全体像をどことなく掴んでもらう」、あらかじめ「いろんな”種”を蒔いておく」、そんなイメージです。
あらかじめ多少の知識がある場合と、まったくない場合とで、何か新しいことに取り組む際は、前者の方が導入がスムーズです。
スペシャリスト研修では、基本情報技術者試験に出題されるような一般的な知識だけではなく、開発・維持保守の経験則を汎化させたノウハウも織り交ぜています。
決して、新入社員の皆さんに、「今」全てを理解してもらう必要はないのです。いつか、「ごん、お前だったのか…」「アハ体験」=「新入社員研修で触れた内容が、実地で”腑に落ちる”経験」をし、真の理解をする=講師が蒔いた種を発芽させてほしい、そんなスタンスです。
左手はそえるだけ…
出典:井上雄彦 『スラムダンク』 第31巻 集英社