初めまして、KIYOラーニングの技術広報チームです。
Qiitaでの初投稿となります。
私たち技術広報チームは、情報発信を通して、エンジニアの皆さんと知見を共有することを目的としています。
社内での勉強会や開発への取り組みを中心にお届けしていきます。
今回はシステム本部が独自に活動している「勉強会」の第81回~第90回の内容を簡単に紹介させていただきます。
勉強会の目的や開催方法についてはこちらのページをご覧ください。
システム本部の勉強会を紹介します
【第81回】
開催日:2023年09月27日(水)
講師:AirCourseグループ所属エンジニアNさん
テーマ:投資
■投資基礎
投資とは利益を見込んで金融商品、不動産などで利益を得ること 。
・利益の種類:インカムゲイン(例:家賃収入)、キャピタルゲイン(例:価格上昇)
・投資の種類:株、投資信託、FX、債券、不動産など
・投資リスク:株価や金利、為替の変動リスク、そのほか借金などがあって価値が0になる信用リスクなど
■リスクを減らす分散投資とは
・複数の株に投資する
・債券、金に投資する
・複数の国に投資する
■投資のすすめ
・投資の始め方:銀行・証券口座開設、クレジットカード作成
・NISA・IDECOとは:金融商品で得た利益の税金がかからない制度のこと
・投資対象のおすすめ:eMAXIS Slimシリーズ
・投資の心構え:投資していることを忘れる。投資商品の根拠を明確にする。狼狽売りしない。自己責任!
■感想
普段の勉強会は技術的な内容などが多く、今回は投資がテーマでいつもとは違う視点で楽しく勉強になる内容だった。「絶対」儲かる話はないということを心に刻みました。
【第82回】
開催日:2023年10月12日(木)
講師:AirCourseグループ所属 エンジニアYさん
テーマ:MFA 多要素認証
■MFAとは
パスワードよりも多くの情報を入力する必要がある複数ステップのログインプロセスのこと
AWSやGithubにログインする時につかっている。最近のSassのサービスでは多い。
MFAを導入するとデータの搾取が難しくなる。
■多要素認証3つの要素
知識情報:例>パスワード、属性情報、秘密の質問
所持情報:物理デバイスを活用 例>スマホ、ICチップ、USB目盛り(物理トークン)、PC
生体情報:人の身体的特徴を利用 例>指紋、静脈、顔、声
■メリット
セキュリティの強化:不正アクセスやなりすまし防止
コンプラの遵守:法律で定められる。金融庁とかが金融機関に義務化させる
■デメリット
・利便性の低下
・ログインが面倒、業務に負担が
・物理デバイスとか無くした場合の対応が
・バックアップないとか、管理者にお願いしないととか
■MFAおすすめ
・導入コストよりセキュリティ事故の損失のが大きいよ(損害額は莫大に680億ドル〜)
・セキュリティ技術の中では信頼性が高い。
・アカウント侵害攻撃から99.9%以上ブロックできてるとこも
■注意点
・認証情報は使いまわししない。(使いまわしても良い説も)
・長時間ログイン状態にしない
・MFA以外のセキュリテイも検討しましょう
■感想
昨今MFAは必須の技術となっているようです。個人でも企業でも対策したほうがよき。
【第83回】
開催日:2023年10月26日(木)
講師:AirCourseグループ所属 エンジニアYさん
テーマ:エクストリームプログラミングについて
■エクストリームプログラミングとは
アジャイル開発手法の一つ(XP)でプロジェクトは変更されることを前提に、細かく開発を進めていく。柔軟でスピード感が、あり10人程度の規模の小チームに最適。
5つの価値と19のプラクティスを重視する。
■5つの価値・19のプラクティス
①コミュニケーション:失敗はコミュニケーション不足、チーム、顧客とも大切
②シンプル:必要最低限なものだけ作成しシンプルにする。
③フィードバック:必要な機能を明確にする。
④勇気:思い切った変更修正を恐れない。
⑤尊重:積極的な意見交換や提案し他のメンバーを尊重する。
19のプラクティスに対して以下の4つのカテゴリがある。
①共同プラクティス
②開発プラクティス
③管理者プラクティス
④顧客プラクティス
■メリット
・柔軟性がある
・問題の早期発見、解決ができる
・開発までの時間が短縮される
■デメリット
・作業全体が把握しづらい
・開発者の技術的水準が高い
■感想
プラクティスにあった経験をしたことがある人もおり、テスト駆動工数が多くかかるという話も上がった。しかしツールによってはペアプロ機能があったりと効果的に開発できるのであればぜひ部分的にでも取り入れてみたいなと思いました。
【第84回】
開催日:2023年11月15日(水)
講師:STUDYingグループ所属 エンジニアYさん
テーマ:パスキー
■パスキーとは
・パスワードの代わりになるもの。
・指紋認証、顔認証またはデバイスロックを使用して認証を行う技術。
・多要素認証である。(3つの要素のうち所持情報と生体情報の2つの要素を使用する。)
■パスキーのメリット
・アプリやウェブサイトにより早く、簡単に、そして安全。
・フィッシング耐性がある。
■認証の仕組み
・認証は公開鍵暗号方式に基づいている。
・事前に登録してあった署名に用いた秘密鍵と対になる公開鍵で署名を検証して認証する。
■対応しているデバイス
・Windows10,macOS Ventura,ChromeOS109移行を搭載したのPC
・iOS16,Android9以降を搭載したモバイルデバイス
・FIDO2プロトコル対応のハードウェア
■課題
・対応しているサイトが少ない。現状はGoogle,Yahoo!Japan等
■まとめ
・パスワード認証と比較して、安全性や利便性が優れているの今後普及していくだろう。
・スタディングやAirCourseもパスキー対応をどこかのタイミング実施したほうが良いかも。
・パスワードの代替えに使える。
■感想
パスキーの実演もあり、パスキーを体験することができた。現状ある認証より使い勝手がよいので普及してほしいです。
【第85回】
開催日:2023年11月30日(木)
講師:STUDYingグループ所属 エンジニアYさん
テーマ:ITとYさんの歴史を知ろう
■Yさんの歴史
1999年にキャリアスタート。
汎用機・web等の開発を色々な言語等で行なっていた。(日本語で記述できる言語もあった。)
ちょうどITでは2000年問題が話題になっていた時期。
2002年に退社し、以降はフリーランスとなった。
ITとしてはSNSが流行り始めた辺りの時期。PHP等で開発を行なっていた。
OpenPNEでSNSを開発も行った。
2010年頃からはインフラの対応も始めた。
web等では主にphp開発を行う。ネットワーク監視システム、オンラインクレーンゲームなどを開発。kubernetesも印象に残っている。
■オンラインクレーンゲームの開発(WebRTC SFU)
オンラインクレーンゲームは倉庫にクレーンゲーム機やカメラが設営されている。
制御系システムでプレイヤーがクレーン操作。
映像系システムで映像を配信し、プレイヤーがモバイルアプリやブラウザでリアルタイム閲覧。
オーディエンスが映像系システムから画像サーバーへ高速で出力されたコマ送りの画像をパラパラ漫画のように映像として見る仕組み。
- WebRTCとは
ブラウザ同士がプラグインなしで直接通信し、音声や映像、データをリアルタイムにやり取りすることを可能にする技術。
通信はP2Pで行う。端末側に負荷がかかることがデメリット。 - WebRTC SFUとは
P2Pとは異なり、音声や映像をサーバー経由で配信する技術。
■感想
Yさんの今までのエンジニアとしてのキャリアから、特に印象深いオンラインクレーンゲームの開発について仕組みなど詳しく知ることができた。景品の補給スタッフ楽しそう。
【第86回】
開催日:2023年12月13日(水)
講師:デザインチーム所属デザイナーHさん
テーマ:Photoshop生成AI機能の現状についての紹介
■Adobe fireflyについて
Adobeが開発した画像生成AIで、プロンプトで画像生成できるWebサービス。
商用利用可能・著作権フリーで、プロンプト多言語対応している。
■Adobe fireflyで画像を生成してみる
・特徴として参照画像ギャラリーから画像のテイストを参照させることができる
・画像をアップロードして、その画像のテイストを参照させることも可能
・写真設定のように絞り、視野なども変更可能
■PhotoshopのAI機能を使ってみる
・Adobe fireflyをベースにPhotoshopにAI機能が実装されている
・特定のものを消したり、画像を拡張することが可能(既存機能で似たことはできるがAIで高精度に)
■まとめ
・出来上がった画像はレイヤーで分けられているため、他の1枚の画像で生成されるものと比べて後から修正を加えやすい
・商用利用可能、著作権侵害の心配がなく安心
・画像は探すものから生成するものに変わっていく
■感想
写真からものを消したり拡張したり、AI機能の精度驚きました。AIやツールの進化に伴い、ツールの扱いだけでなくプロンプトの知識が重要になりそうだと思いました。
【第87回】
開催日:2024年01月10日(水)
講師:STUDYingグループ所属 エンジニアOさん
テーマ:Wisdom of the Crowd 〜群衆の知恵〜
■Wisdom of the Crowd 〜群衆の知恵〜
読んだ著書で面白そうだったので勉強会として紹介。
群衆の知恵とは、多数の人々が集まって意見や情報を共有することで、集団全体としての知識や判断が個々の専門家よりも正確で賢明になるという考え方。
書籍の中で興味深かった内容
・集団思考(グループシンク):集団の意見に流され個人の意見や判断を持たなくなること
・情報カスケード(カスケード理論):誰かが1人の意見や行動を受け周りの人が模倣していくこと
・集団極性化:集団内での意見や判断が、個人の意見より極端な方向に傾きやすくなること
■集合知の実験
集団の意見が実際の物に近くなりやすいこと。
→例:Oさんの体重をシステム部メンバー全員で予想し、全員の平均を出すと実際の体重と近くなる
■シェリングポイントの実験
コミュニケーションが取れないとき、大体の人が取るであろう解決策のこと。
→例:システム部メンバーと連絡手段なしでどこで待ち合わせるか、という質問に対し多くのメンバーが「会社」と回答
■最後通牒ゲーム
2人1組で、10万を分けるゲーム
→極端な提案は、どんな状況(拒否しない方が合計で上回るのに)でも拒否されやすい
■感想
たくさんの人の文字を集めて平均を取ると形の整った文字ができるそうで、今回の話と似たものを感じた。
【第89回】
開催日:2024年2月7日(水)
講師:QAグループ所属 QAエンジニアTさん
テーマ:QAエンジニアの仕事について
■QAエンジニアの仕事とは
・新規開発案件の品質保証
→求められる品質基準をクリアした状態で、コストかけすぎず、納期までにリリースできるようにする
・品質向上のための施策実施
→品質の指標を作成したり、自動テストツール導入
■2023年の成果
・手動/自動テストを実施し、バク流出を防ぎ品質向上
・自動テスト導入で開発者のテスト工数の削減
・自動テストを定期実行することによるバグの早期発見 など
■2024年の目標
・どこまでの品質を求めるのかの「品質基準」を決める
・品質基準を守るためにどれくらいまでコストをかけられるか試算する
・手動テスト以外の案件のリスク把握
■MagicPodの活用
現在導入している自動テストツールMagicPodを活用し、開発者が手動で行っていたテスト自動化を進めている。そのほか以下のような活用も可能。
①データパターンの活用
-1つのテストケースに対し、データ入力のパターンを自動で行う
②一括ブラウザテスト実行
-外部サービスと組み合わせることでOSやブラウザバージョンを指定して実行できる
③一括モバイルアプリテスト実行
-外部サービスと組み合わせることで複数実機を指定してテスト実行できる
■感想
今回の勉強会を通じて、普段の業務だけでは把握できていなかった情報を知ることができました。
MagicPodの活用方法の紹介やテスト作成の様子を見せてもらい、開発者が手動で行っているテストも状況に応じてQAに相談できると良いなと思いました。
【第90回】
開催日:2024年2月28日(水)
講師:システム本部 部長Sさん
テーマ:合意形成 - コンセンサスゲームについて
■合意形成とは
同じ仕事に携わるメンバーや関係者からの意見を一致させること
・お互いの意見を納得の行く形へと導く
・合意のもとで決定された意見や提案に対して、個々人に当事者意識を持ってもらう
■コンセンサスゲーム「NASAゲーム」
チームワークを促進するためのコンセンサスゲーム。意見の対立が生じる場合もある。
多数決や諦めではなく、しっかりと議論を行い合意を形成することが目的
宇宙飛行士で月面の母船から320km離れたところに不時着。15のアイテムがある。それらのアイテムとしての優先順位を決める。
個人で優先順位付け、その後5チームに分かれてチームの結論を出す。
■NASAゲームの目的と結果
成績を競うことが目的ではなく合意が得られるように自分の意見を伝えられたか、チームで納得して答えを導き出せたかが重要。
チームの結果は基本個人のものより得点が高くなっていた
■感想
一人で考えたときとは違い、他の方の意見を聞くとなるほど、と思うことがあり面白かったです。
開発の現場でも意見が分かれたり、悩むことが多々ありますがそういうときに活かしていきたいと思いました。
最後まで読んでいただきありがとうございました。
今後も定期的に勉強会の様子をお伝えしていきますのでお楽しみに!
KIYOラーニング株式会社について
当社のビジョンは『世界一「学びやすく、分かりやすく、続けやすい」学習手段を提供する』ことです。革新的な教育サービスを作り成長させていく事で、オンライン教育分野でナンバーワンの存在となり、世界に展開していくことを目指しています。
スタディング
スタディングキャリア
AirCourse
KIYOラーニング株式会社では一緒に働く仲間を募集しています