見出し画像

新しい技術は、有識者から直接学ぼう!

次回のオンライン勉強会は技術中心

6月25日(木)19時から「第9回フィンテックエンジニア養成勉強会」を開催します。今回は、技術中心の内容です。多くの技術の中から、できるだけ最新のもの選び、その中からGraphQLRust言語ゼロトラストネットワークにの3つについての概要な基本的な仕組みを解説します。フィンテック企業や金融関係のエンジニアには、あまり聞き慣れないものを揃えていますが、これから関わる可能性があるかもしれないので、是非、この機会に参加してもらえると嬉しいです。

なぜ?この3つの技術を解説するのか?

私は、現在8つのコミュニティを運営(発起人でないのもあります)してます。この他にも年一度行われるカンファレンスの運営スタッフで必ず参加するのものがあったり、他のITコミュニティ立ち上げにも協力しました。もちろん運営だけではなく、他の勉強会やカンファレンスにも参加しています。

金融エンジニア養成コミュニティ
Start Python Club
fin-py
found IT
X-Tech JAWS
Fin-JAWS
つくば&柏の葉ビットコインミートアップ
VUCA Labo

こういったコミュニティでの関わりで、運営スタッフや、ワークショップ、ハッカソンでご一緒したり、懇親会で出会ったエンジニア、協賛スポンサーと雑談する機会がたくさんありました。
雑談の時に、この半年でよく耳にしたのがGreaphQLRust言語ゼロトラストネットワークだったので、自分達(金融エンジニア養成コミュニティ事務局)の勉強も兼ねて企画しました。もちろん、この他にも様々な技術を教えてもらい、金融分野ではあまり浸透してないものもたくさんありました。この会が好評だったら別の機会にまた企画できたらと思います。
私自身はこの3つについては詳しくはありませんが、以降では、自分のわかる範囲で簡単な概要や、どのように発表者へオファーを出したかを書きます。

GraphQLとは何か?

まずはGraphQLです。読み方は”グラフキューエル”と言いいます。Web APIのための問い合わせ言語の一つです。世の中では一般的にRESTful APIが主流です。RESTful APIはURLをCRUDベースのmethodとしてインタフェースを表現しますが、GraphQLは単一エンドポイントで定義するもので、マイクロサービスとの相性がいいと言われています。Facebookによって規格、開発が行われ「クエリ言語」と「スキーマ言語」から構成されています。IT業界の中で知名度の高いGitHub、 Airbnb、 Netflixなどのサービスで導入されているので、注目度が上がったのではないでしょうか。
私は、普段はRESTful APIを使っているので、SwaggerHubの有料版でYAMLをGitHub上に管理して、API設計と各言語のフレームワークへの自動生成を行っています。
RESTfulなAPIやGraphQL以外に、gRPCとProtoBufを使う方法もあります。こちらはGoogleが開発しました。
実はRESTful APIとGraphQLとgRPC&ProtoBufの3つは、規格だったり、プロトコルだったりライブラリだったりするので位置づけが違います。横並びで比較がしずらいので、勉強をサボっていましたが、このあたりは理解しておかないと、開発プロジェクトを進めるときにエンジニア同士の会話に参加できなくなるのでしっかり勉強できたらと思っています。
今回は、X-Tech JAWSコミュニティを一緒に運営しているNew Relicの瀬戸島敏宏さんに相談し、野村総合研究所(NRI) の岡田 雄太さんを紹介してもらいました。岡田さんは、昨年度まで所属していた香港のスタートアップで証券オンライントレードに GraphQL を組み込んでいたので、そこで習得したことを話していただきます。GraphQLの件で相談したのですが、発表タイトルが「GraphQL の金融適用事例〜香港スタートアップでの使いかた〜」となっているように、フィンテックに関係する内容でもあるので本コミュニティとの相性もバッチリです。

セッション1『GraphQL の金融適用事例〜香港スタートアップでの使いかた〜』
【概要】
 昨年度まで所属していた香港のスタートアップでは、証券オンライントレードに GraphQL を組み込んでいました。
 フロントエンド・バックエンドを並行して開発する中で、GraphQL の存在が非常に効率化に役立ちました。
 今回は GraphQL を利用したシステムアーキテクチャや、活躍シーンなどを紹介します。

【発表者】:岡田 雄太(おかだ ゆうた)
 株式会社野村総合研究所(NRI) 主任アプリケーションエンジニア
 Facebook: yuta.okada.16
 GitHub: dhythm
 Qiita: dhythm
 note: dhythm
大手SIerで証券業界向けに、システム開発・プロジェクトマネジメントをしています。
 2018-20年まで香港の FinTech スタートアップでエンジニアとしていました。
 休みの日はハッカソンに参加したり、個人・少人数でサービス開発してみたりと、新しい技術に触れるようにしています。
 野球やランニングなど、外での活動も好きです。

Rust言語とは何か?

続いて、Rust言語についてです。こちらはハイパフォーマンスでなプログラミング言語です。豊かな型システムと所有権モデルによってメモリ安全性とスレッド安全性が保証されており、コンパイル時にも様々なバグを排除するので安全性が非常に高いです。他言語との連携が容易なためプログラミング言語としては後発ですが利用価値も高いというメリットがあります。

エンジニア情報サイトで有名なStackOverflowの年間アンケートの中で「最も愛されている言語」というランキングに、2016年から2019年まで4年連続で首位になっています。Facebook社が発行する仮想通貨リブラに使われている新しいプログラミング言語MoveもRust言語がベースとなっています。

画像1

国内でもRustが人気になってきたのですが、だれに相談しようか悩みました。パフォーマンスとかコンパイラというキーワードから真っ先にIdein株式会社の中村晃一社長に相談しました。中村さんは、本コミュニティを一緒に運営している藤井達人さんと私の両方の友達です。すると、中村さんが会社にいるκeen (きーん)さんを紹介してくれました。κeen (きーん)さんは「実践Rust入門 [言語仕様から開発手法まで]」の著者の1人です。これはラッキーです!

セッション2『「安全」な言語Rust』
【概要】
 Rustは安全なシステムプログラミング言語です。その高い信頼性とパフォーマンスから暗号通貨の実装にもよく使われています。
 Rustとはどういう言語なのか、どういう意味で安全なのか、Rustで書かれたアプリケーションの信頼性が高いのはなぜか、などを紹介したいと思います
【発表者】:κeen (きーん)
 Idein株式会社
 Twitter: @blackenedgold
 GitHub: KeenS
 サーバサイドエンジニア。RustでWebサーバの開発をしている。趣味は言語処理系で、休日はコンパイラやGCを書いて過ごす。

ゼロトラストネットワークとは何か?

ゼロトラストネットワークとは、社内への入り口のセキュリティを万全にして中は常に安全という前提に立ったセキュリティ対策ではなく、全部信用できないので全てのデバイスのトラフィックの検査やログの取得を都度行うセキュリティ対策だというのが私の認識です。COVID-19の影響で、リモートワーク主導の働き方になると、ネットワーク周りをどのようにリファクタリングすべきか今後も検討する必要があると思いますが、ゼロトラストネットワークはそういった際の選択肢になるかもしれません。ただし、まだ定義が曖昧です。特に金融機関には、こういった未成熟なタイミングに、それほど実力が伴っていないのにも関わらず怪しい提案をしてくる企業がいるので、こういった勉強会を通してこのあたりの基本方針についてしっかりみんなで共有すべきと思い、先駆者のGoogleに相談して発表していただくことになりました。いつもわからないことがあったときはGoogleの検索エンジンに頼ってしまいますが、同じようなノリで何でもGoogleさんに頼ってしまいます。いつも無茶ぶりばかりして本当にごめんなさい<(_ _)>

セッション3『ゼロトラストネットワークと Google の BeyondCorp について』
【概要】
 ユーザーのアイデンティティをもとに、どこからでもどのデバイスでもセキュアで柔軟なユーザーアクセスを提供するゼロトラストセキュリティモデルをどう実現するのか、基本的なコンポーネントと Google の実装であるBeyond Corp についてご紹介いたします。
【発表者】:桃井 啓行 (ももい ひろゆき)
 Google Cloud Japan
 Google Cloud の Customer Engineer。
 独立系 SIer にてインフラ系システム導入や、IT 戦略企画支援、新規サービス研究開発などを経験し、Google Cloud Platform チームに参画。
 エンタープライズのお客様に向け、GCP ソリューションの紹介やアーキテクチャ設計、PoC 支援を中心に Google Cloud の利用推進と、お客様のビジネス革新を技術面からサポートしています。

一緒に成長しませんか!

という感じで、今回は新しい技術を3つ紹介する企画を準備しました。運営するからには参加者のために貢献するのはもちろんですが、運営によって自分自信のスキルも成長したいというのが私たちのポリシーです。是非、次回もお楽しみにしてください!
「新しい技術を学ぶことはとても大切なこと」ですが、社会人になって学びをやめてる方は、実はそれなりにいるそうです。IT勉強会は毎日たくさん開催されていますが、IT企業の中でこういった勉強会に参加している人は1〜3割程度と言われています。独学でオンライン講義を受けたり、本を読んだり、コンペティションに参加する人もいるので、半分ぐらいのエンジニアは勉強熱心だと想定します。
さらに技術だけではななく、ビジネスや組織運営のことを学ぶとさらに仕事の幅が広がります。新しいビジネスと新しいテクノロジーの両方をしりその相性を知っているエンジニアはとても優秀です。
私がもう一つ運営しているVUCA Laboというコミュニティでは、VUCA時代の未来に必要となるビジネスを創るきっかけを学ぶ場を提供しています。6月18日(木)には、あのWIREDの日本語版 初代編集長で、インフォバーン CVOの小林弘人さんをゲストに迎えてオンライン勉強会を開催します。国内で19万部発行された「フリー」とう本をご存じの方もいらっしゃいますよね。こちらの勉強会にもご興味があれば是非ご参加ください。
今回のフィンテックエンジニア養成勉強会は第9回ですが、その次の回は区切りのいい10回目となるので、こちらでも新たな企画を進めています。是非、こちらもお楽しみにしていくださいね!




この記事が気に入ったらサポートをしてみませんか?