バックエンド(Scala)コース
このコースでは、Scala、ScalikeJDBC、Akka HTTP、ScalaTestといった技術スタックをもちいて、戦術的ドメイン駆動設計の基礎的なアイデアをAPIサーバーの実装例から学ぶとともに、2週間の開発演習を通じてそのエッセンスの習得を目指します。ドメイン駆動設計において重要となる「境界付けられたコンテキスト」とは何か?に関しても、具体的なイメージを知ることができます。
プログラム例
共通講義
-
01.
アジャイル・スクラムの技法
スクラム、カンバン、プランニングポーカーなどの諸概念を解説し、簡単なワークショップを通じてチーム開発を知ります。
-
02.
ドメイン駆動設計の戦略と戦術
境界づけられたコンテキスト、ユビキタス言語、モデル駆動設計などの諸概念を解説します。
専門講義
-
01.
Scala基礎演習
オブジェクト指向と関数プログラミングの両特性をあわせもったプログラミング言語Scalaの基礎を習得します。
-
02.
データベース概論
論理設計、物理設計などの基礎概念に触れるとともに、実際にデータベーススキーマを構成するハンズオンを通じて理解を深めます。
-
03.
テストによるアプリケーションの品質保証
データ不整合などに対して高い安全性が求められるバックエンドにおける、テスト手法とScalaでのテスト例を解説します。
-
04.
Akka HTTPによるサーバー構築
Akka HTTPと呼ばれる分散Webフレームワークをもちいて、APIサーバーを構築する方法を習得します。
開発演習
-
01.
SPAのバックエンド構築
参加者でチームを組み、2週間をかけて所定の機能開発を0からおこなうことを目指します。
※ プログラム内容は、若干変更される場合があります
講師紹介
-
加藤 潤一
プロダクト本部
コアテクノロジー開発部 テックリードSIerとしてさまざまな現場での業務を経験した後、2011年より某D社、2013年より大手ソーシャルゲーム企業で、それぞれScalaやドメイン駆動設計を採用したシステム開発に従事。2014年にChatworkへジョインし、現在はChatwork次期アーキテクチャのプランニングや設計、開発に携わる。
-
林 大介
プロダクト本部
サーバーサイド開発部(Scala)マネージャー大学からIPネットワーク、およびプログラミングに携わり始め、就職をしてからはJavaをずっと使用。より簡潔に、より堅牢にソフトウェアをつくりやすい言語を探す中でScalaに出会い、その縁もあってかChatworkへジョイン。低レイヤーからピープルマネジメントまで、幅広い経験を持つ。
-
粕谷 大輔
SIer、ソーシャルゲーム開発を経て、某H社でアプリケーションエンジニアからディレクターまでを務める。アジャイル・スクラムやプロジェクトファシリテーションに強みを持ち、組織全体の開発プロセス改善にも貢献してきた。サマーインターンシップでは『アジャイル・スクラムの技法』にて講師を受け持つ。