inSmartBank

B/43を運営する株式会社スマートバンクのメンバーによるブログです

エンジニア自由研究活動の発表会レポート

こんにちは!CTO の @yutadayo です。先日この3ヶ月でエンジニアが研究し取り組んできた自由研究部の発表会を行いました!

今日はそちらのイベントレポートをお伝えし、スマートバンクのエンジニアリングや開発しているチームを知る機会になれたらと思っています。

自由研究部とは

自由研究部は、その名前の通りエンジニアがテーマを選んで、そのテーマにそった研究に取り組む部活動のことです。 スマートバンクのエンジニア陣は各プロジェクトチームにて、業務を行うことが多いので、必然的に業務時間のほとんどは自分が担当するプロジェクトに関する仕事がメインになります。

そういった開発を進める中で、B/43を改善するアイディアの実現や普段着手できていない技術的なTryをしてみたいという要望が度々あり、また他メンバーとオフラインでコラボレーションして開発する機会が減っていたことから、そういったものを研究テーマとして扱い、エンジニアがワイワイ集まりながら取り組む機会を作ろうと試験的に始まったのが自由研究活動です。

活動の進め方について

毎週水曜日の1時間を目安として、各メンバーが各々やりたい研究テーマを発表し、個人で取り組むのも良いし、他の人の面白そうな研究テーマがあれば、それに一緒に取り組むといった形で進めてきました。 Gather を使って、オンラインでテーマを共有しつつ、出社しているメンバーが多い日はオフラインで話しながら進める方式で活動しています。

研究テーマについて打ち合わせをしている様子

研究発表会の様子

ここからは、部活動の発表の様子をお伝えしていこうと思います。当日は9個のテーマの研究が発表され、中間的な発表や研究が完了したチームは成果の発表をそれぞれ行ってもらいました。CEOやCXO、エンジニア以外のメンバーも参加し発表はオープンな形で開催されています。このエントリーではその一部を紹介したいと思います。

本番データを安全高速に検証用で使う

一発目の発表は、本番DB相当のデータを検証時に素早く使える様にするという研究でした。 開発時はローカルマシンの開発環境を使って開発をすることが多いですが、開発者から本番と同じレコード量で負荷試験がしたいや、本番と同じ構造のデータで検証したい、また障害調査時に本番とは別に安全に調査できるDBが欲しいと言ったニーズが度々あり、それを叶えるための研究です。

発表とSlack実況の様子

実際にこの研究は既に開発者が任意のタイミングで個人情報などが入っていない安全なDBを30分程度で手元で使える様になっていて、開発生産性が上がったとエンジニア陣から好評でした。

次に紹介するのは、の研究です。弊社では Ruby を採用しているシステム基盤がありますが、そちらのシステムに Ruby の漸進的型付けを導入するための検証を行うといった内容でした。

冒頭で非エンジニア向けに型の分かりやすい説明から入り、RBI + Sorbettapioca)で実際に検証した結果の報告、そして、今後の導入のステップを発表していただきました。

発表とSlack実況の様子

開発時の生産性に直結する研究でもあるので、引き続き研究を続けていただき、型導入を進めていきたいですね。

Push通知基盤のSQS移行

次にご紹介するのは、Push通知を送っている基盤システムのキューイングの裏側の仕組みを AWS ElastiCacheから AWS SQS に置きかえると言った研究テーマです。 スケーラビリティやコスト、また他のコンポーネントでの稼働実績もあったことから、リプレイスを行い且つメッセージを送る処理部分のモジュールを自作したといった取り組みの発表でした。

発表とSlack実況の様子

移行した結果インフラコストも下げることができたため、CEOの目にとまり高く評価された研究になりました。

B/43 ウィジェット

最後にご紹介する研究は、クライアントチーム2名からの合同発表になっており、B/43 iOS / Android のウィジェットを作ってみたという発表でした。

ウィジェットのデモ

こちらは実際に動いているデモ付きの発表になっていたので、デモが映ると驚きの声が会場中に響いていました。 iOS / Android 両方のバージョンで実装されており、パッと見そのままでもリリースできそうなクオリティでした。実際のリリースまでにもう少し微修正が必要とのことでチラ見せと言った形ですが、来年にはリリースがあるかもしれませんね。

発表資料とSlack実況の様子

その他の研究の一部

発表スライドの一部抜粋

文字数の都合もあり、全てを載せることが難しいのですが、その他にもテストの高速化を試すチームや、RDBのメタデータ管理の提案、カスタマーサポートチームからの要望を管理画面に既に実装して成果を出している発表など、様々な研究の発表がなされました。

まとめ

エンジニアが3ヶ月トライした研究活動の一部をレポートとして紹介させてもらいました。 結果としては、想像以上の成果が出たなと思っております

発表という場を作ったことで、各メンバーがどういうことに課題や興味を持っているかが知れたり、他の職種の方にも発表を聞いてもらうことで研究内容がプロジェクトや施策に活かせそうなどのフィードバックをもらうこともできて、とても有意義な会になりました。 実際に既に開発の現場で役立っている研究もでてきているので、以降も部活動を継続し定期的に発表の機会を作っていければと思っています。

We create the new normal of easy budgeting, easy banking, and easy living.
In this blog, engineers, product managers, designers, business development, legal, CS, and other members will share their insights.