強いSE・ITプロフェッショナル人材を育てる エディフィストラーニング株式会社
エディフィストの実務に活かせるIT研修これまでの連載で、現場に求められる真のフルスタックエンジニアは、「得意分野を持ちつつ、IT システムの全容を把握できる人」ということが見えてきました。
フルスタックな能力のある人は新しい IT 技術の吸収が早いだけではなく、その技術を使って世の中に新たなサービスを生み出すことができます。
自分や世の中が欲しているサービスを自分で作れたら、世の中に必要とされるのはもちろんのこと、ものづくりの楽しさを実感できますね。
今回は連載の最終回として、IT サービスが生まれるきっかけと、どのように IT サービスを作っていくかを考えます。
目 次
まず、「システム」という言葉の定義について確認しましょう。
「システムとは、個々の要素が相互に影響しあいながら、全体として機能するまとまりや仕組みのこと。」
出典 :IT用語辞典 e-Words 「システム【system】」
(https://e-words.jp/) 2022/1/17
IT を使って何かの仕組みを作ったモノが IT システムということですね。
IT 業界のエンジニアは、何を IT システムとして作り上げているのでしょうか。
それは、システムの利用者が求めているモノ=サービスです。
図1 チャットボットサービスと IT システム
新型コロナウイルスにより私たちは「ニューノーマルな様式」への適応を余儀なくされました。
非 IT のサービスと利用者をつなぐための仕組みとして、さまざまな IT 技術が大活躍しました。中にはフードデリバリーのように、コロナ禍で注目されすっかり普及した IT サービスもありますね。
これらは IT 企業がニーズに応えただけではなく、ひとりの小さな気持ちと技術で生まれたものも少なくありません。
「世の中で使われるサービス」と聞くと、ものすごく壮大なモノのイメージを持たれるかもしれませんが、その正体は意外と身近な課題であることに気づくことが、IT サービス誕生の第一歩です。
図2 コロナによって普及・誕生した IT サービスの例
身近な課題に気づいたら、次のステップは「あったらいいな」と思ったことを IT サービスの雛形に落とし込むことです。ここまでの連載を読んでいただいた方ならば、その実現方法がイメージできるでしょうか?
IT システムの要点を3つのステップに分けて見てみましょう。
IT システムは、プログラムとそれを動かすコンピュータによって成り立ちます。
また、サービス提供に必要なデータのやりとりは、ネットワーク通信によって行われます。
どのコンピュータでどのようなプログラムが動いていて、ネットワーク上にどのようなデータが流れているかを意識することが大切です。
サービス提供者や、提供するコンピュータのことをサーバ、利用者のことはクライアントと呼びます。
多くの IT サービスでは、クライアントが「サービスを利用したい」というリクエストをサーバに送り、サーバは決められたフォーマットでレスポンスを返します。
複雑なシステムでは1台のコンピュータがサーバとして処理しつつ、他のサービスのクライアントとして動作することも多いため、サービスに対してどのような役割かを把握することは大切です。
私たちが普段利用しているサービスの裏側では、複数の小さなサービスが組み合わさって動いています。
小さなサービスは自分で作っても良いですが、近年はクラウドサービスの発達によって完成したサービスを簡単に利用できるようになりました。
完成した IT サービスから逆算し、既存サービスや技術を連携して構築していく力はフルスタックエンジニアならではのスキルと言えるでしょう。
それでは、身近な課題や「あったらいいな」からどのように IT サービスが生まれたのか、当社「フルスタックエンジニア研修」を受講した方の事例を見てみましょう。
Aさんは読書が趣味でしたが、「目についた本を買ってきたら、既に買っており本棚に置いてあった」という失敗をすることが悩みだったそうです。
そこで既存の SNS サービスと自作の蔵書管理データベースを連携させることによって、「書店で見つけた本のタイトルをチャットすると、購入済みかどうかをチェックする」サービスを開発しました。
完成したシステムは機能としては十分でしたが、利用してみると「チャットの返信が味気ない」ことが気になりました。
Aさんはサービスに簡単な機械学習と条件分岐を使った機能を追加で実装し、蔵書管理ができ、会話もできるチャットボットとしてバージョンアップしました。
登録された本の冊数によりボットの反応が変わるなど、凝った仕掛けが用意されていたのも印象的でした。
図3 蔵書管理サービス
前職は営業で外回りを多くしていたBさんは、地方の客先訪問時にコンビニ探しで苦労していたそうです。
そこで、既存の Web マッピングのサービスと既存の SNS サービス、スマートフォンの GPS 機能を連携させ、「『コンビニ一覧』とチャットすると近くのコンビニ一覧を地図上に表示するサービス」をリリースしました。
他の受講者から「トイレの有無情報が欲しい」と言う意見が出ると、Bさんはさらに Web スクレイピングの機能を実装し、地図上でコンビニの場所と店舗情報が表示されるサービスに進化させました。
一見シンプルなサービスですが、その裏では複数の既存サービスを上手に連携させ、クライアントが使いやすいサービスを開発できた好事例です。
図4 コンビニ検索サービス
新入社員のCさんは入社と同時に一人暮らしを始め、初めての自炊にチャレンジしているそうです。
最近の悩みは、使いたい食材を冷蔵庫から取り出すと傷んでいた、という経験を何度かしているとのこと。そこで冷蔵庫の中身と賞味期限を管理し、食材の状態をスマートディスプレイに表示させるサービスを提案しました。
手動入力した食品情報を元に画面が更新されるこのシステムに最初は満足していましたが、使っていくうちに「冷蔵庫の中の野菜を自動で検知し、傷み具合を判定して欲しい」と思うようになりました。
Cさんが実装方法を調べた結果、センサーデバイスと AI を組み合わせて使うことにより判別可能ということに気づきます。
研修期間内に自動化システムまでは構築できませんでしたが、その後データ分析の業務経験を元にCさんのサービスは自動検知に成功し、現在は精度を上げる工夫を重ねているということです。
図5 スマート冷蔵庫システムを自作
いかがでしょうか?
個人が生み出した IT サービスをいくつか紹介してきましたが、大きなポイントは作りたいと思ったモノを実際に形にできていることです。
小さなサービスであれば、完成形をイメージできるかが、形にできるかどうかの大きな分かれ目になります。イメージができるからこそ「作りたい」という気持ちはより強くなり、知らない技術へのチャレンジに背中を押してくれます。
そしてそのような自分で調べながら得意分野を広げていき、実践に活かすことができる力こそが、現場が求めるフルスタックエンジニアの「真の姿」なのです。
本記事で紹介した事例は、IT 技術にこれまで触れたことのなかった新入社員・中途社員の方が実際に思いついたアイデアです。
当社のフルスタックエンジニア研修は、8日間で IT サービスを中心とした各技術要素を学べる公開研修(2コース)と、技術要素を学んだ上で自由に IT サービスを構築・提案までを行う、1ヶ月程度の1社向けパッケージ IT 研修を提供しています。
特に後者は新入社員向けの IT 研修としても実施しており、「従来の新入社員研修よりも遥かに実践的で面白いカリキュラム」として大変好評です。
図6 フルスタックエンジニア研修のコースフロー
本研修では、個々の現場経験を活かしつつ、3層 Web システムをすべて1人で構築していただきます。業務経験と新しい技術の繋がりを理解し、他分野への第一歩を踏み出すきっかけとして人気のコースです。
特定の分野に苦手意識を持っていたり、特定の分野しか知識・スキルを持っていない方は、本研修からのご受講で無理なく幅広いスキルに触れることができます。
公開型研修なので、1名様からお申込みいただけます。
ジョブチェンジを検討している非 IT 系の方向けなど、受講対象者や時期に合わせた研修実施も検討可能ですので、ご興味のある方は是非ご相談ください!
以下の記事も是非ご覧ください。
・第1回 真のフルスタックエンジニアとは。現場が求めるフルスタックエンジニアになろう
・第2回 IT サービスの構成を知ろう。フルスタックエンジニアの広いスキルの活かし方
・第3回 現役エンジニアが“フルスタック”を目指すべき理由
・第4回 世の中のニーズは IT で解決できる!フルスタックな知識を活かして新しいサービスを生み出そう(本記事)
クラウドインフラの構築から始まり、ビッグデータ分析、RPAによる業務効率化、情報セキュリティと、時代の流れに合わせて多様なITサービス開発の現場に携わってきました。研修では丁寧な解説はもちろん、「学んだ技術が社会でどう役に立っているか」を知ることで、現場で楽しくスキルを活用できるような説明を心がけています。初心者、経験者を問わず、皆様の新たなITへのチャレンジを全力でサポートいたします!