redwarrior’s diary

C#, ASP.NET, WEB, G*などの雑多な情報

Spring in Summer に参加しました

日本Springユーザ会が主催する「Spring in Summer」というカンファレンスに参加しました。Springは、JavaのWeb開発などでよく使われるフレームワークです。

会場は東京駅の近くのグラントウキョウサウスタワーで、リクルートテクノロジーズのセミナールームを借りて行われました。朝10:00から懇親会も含めて夜20:30までの長丁場です。タイムテーブルなどは、公式サイト(http://www.springframework.jp/summer)に載っています。

以下、自分が参加したセッションの感想です。

マイクロサービスアーキテクチャの設計

東京商工リサーチなどの大企業のシステム開発をたくさん手がけている会社に勤めている方の話です。最近IT業界で一部話題になっているマイクロサービスアーキテクチャについて、どう考えていけば良いのかについて、実践から学んだことをベースに話していました。
全体を俯瞰した話で、沢山の用語が出てくるため、前提知識が色々と必要になってきますが、実際にサービスの開発をしていて悩んでいる人にとっては、MSA(マイクロサービスアーキテクチャ)は技術というより方法論。どうやって技術を管理するかや、「MSAにする」よりも「自然にMSAになった」のが健全など、方針や考え方が示されていて勉強になりそうな内容でした。

講演資料:

www.slideshare.net

大規模エンタープライズにおける、最新のフロントエンド・アーキテクチャへの挑戦

これまた野村総合研究所という大企業に勤めている方の話です。大企業のプロジェクトらしく大勢の開発者でどうやって開発を進めていくのか、フレームワークをどう使っていくのか、既存資産(ライブラリや仕組み)をどう活用するかについてSpringが便利だったという話でした。
大企業の場合はミドルウェアを作る部隊と、それを使用して開発する部隊がいて、ミドルウェアにはレイヤーを分割したり、設定ファイルでプログラム動作を変更出来るようにしたり、エラー処理などを一箇所でまとめて出来るようにしたりなどの、開発が便利になるような仕組みがありました。
また、新しい技術を取り入れる時も、開発部隊には今までと同じ考え方で開発できると説明するなど、変更を少なくする工夫をしていました。

キーノート The Macro of Microservices

Springの開発者を海外から招いて話を聞くということで、参加者には翻訳のレシーバーが用意されて、同時通訳で聞きました。ソフトウェアやサービスのデリバリー(公開)について、高層ビルの設計者が建築したビルの清掃作業を行うか、行いませんよね。ソフトウェアのデリバリーもそうならないと開発を進めることが出来ないので、細かくリリースし、リリースの数をこなすことが必要で、そのためにマイクロサービスを採用すると話していました。

講演資料:

speakerdeck.com

Report to Spring Developer from CyberAgent

CyberAgentという有名企業に勤めている方の話でした。前半後半に分かれていました。
前半は、昔に作ったサービスを使い続けるうちに、積み重なった場当たり対処や、重複の多いプログラムや、自社フレームワークの設定値に一貫性がないこと、特定の環境しか作れない仕組みになってしまったサービスを作り直したという話でした。
異動の結果、部署が自分ひとりしかおらず、仲間を探そうにも自社フレームワークで使われている技術が多すぎるため見つからない中で、システムを作りなおすことを決意したそうです。自社フレームワークをやめて、Spring BootとDockerを使って作り直したそうです。
こういった問題は、どこにでもあるのだなと思って聞いていました。
後半は、サービスの開発と運用をしている方の話で、ポイントプログラムサービスというお金に関わる仕事なので監視業務がとても重要とされるなかで、Spring Boot Actuatorという監視ツールを導入することで、ほとんどプログラムを書かずに簡単に監視機能が提供されて助かったという話でした。監視ツールが簡単に入るものなのかと思いました。

講演資料:

www.slideshare.net

まとめ

様々な会社の事例を開発者が自ら話すのを聞いたり、世の中の技術がどういった方向に進もうとしているのか掴んだりなど、今回も良い勉強になりました。次回は懇親会にも参加してみたいと思います。