Slide 1

Slide 1 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. 虎の穴ラボの利用技術紹介 虎の穴ラボ株式会社 藤原佳顕 1

Slide 2

Slide 2 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. 目次 1. 自己紹介 2. 概要 3. 利用技術の紹介と用途の紹介 4. まとめ 2

Slide 3

Slide 3 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. 自己紹介ページ (藤原) 藤原 佳顕(ふじわら よしあき) : yoshiaki fujiwara ‣ Webエンジニア ‣ 新規事業担当(Fantia、Creatia)、アーキテクトチーム (CSIRTも) ‣ 前職:独立系ソフトウェア会社、主に GISとWeb、ライブラリ開発 ‣ TypeScript、Ruby on Rails、C#、C++ ‣ React、Vue、Angular ‣ 入社理由 ‣ 自分がスキルアップできそうな場所に行きたい ‣ オタク系の話ができるところに行きたい 好きなモノ ‣ シューティングゲーム、格闘ゲーム ‣ SF小説 ‣ プログラミング 3

Slide 4

Slide 4 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. 概要 ● 本LT会のサブタイトル「社内技術LT」ということで、社内で利用している 技術について発表します ● 虎の穴ラボ社内でどのような技術が、どのような用途で使われているかに フォーカスして話します ● 説明会等でも同じような内容が紹介されていますが、もう少し踏み込んだ 内容になります 4

Slide 5

Slide 5 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. フロントエンド とらのあな通販等 開発環境(説明会資料) バックエンド 開発言語 Java / Kotlin フレームワーク Spring / Ktor データベース Oracle / PostgreSQL / MySQL Thymeleaf Next.js (サービスにより 利用技術が異なる) インフラ AWS / オンプレミス (全体的にAWSへの 移管予定あり)

Slide 6

Slide 6 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. フロントエンド Fantia・とらコイン等 開発環境(説明会資料) バックエンド 開発言語 Ruby / Go フレームワーク Ruby on Rails データベース MySQL フロントフレームワーク React (一部画面でのみ使用) サーバーインフラ Google Cloud AWS コンテンツインフラ AWS S3 / CloudFront

Slide 7

Slide 7 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. 開発手法:アジャイル/スクラム(説明会資料) ※チームによっては2週間スプリントにてスクラム開発を実践 案件の発生 チケット化して担当を決定 チケットをタスク単位に 分割 + 見積もり 1日のはじまりに 「昨日やったタスク」 「今日やるタスク」 を宣言して開発

Slide 8

Slide 8 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. 利用技術の紹介と用途の紹介 8

Slide 9

Slide 9 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. 利用技術の紹介と用途の紹介 ● JVM系 ○ Java ■ 虎の穴通販サイトのサーバーサイド言語 ○ Kotlin ■ 虎の穴通販サイトの周辺マイクロサービスのサーバーサイド ■ サークルポータルのサーバーサイド ○ 次のページにあるWebフレームワーク/ライブラリと合わせて利用 9

Slide 10

Slide 10 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. 利用技術の紹介と用途の紹介 ● JVM系Webフレームワーク ○ Spring関連 ■ 主にJavaと一緒に利用 ○ Ktor ■ Kotlin純正の軽量Webフレームワーク ● JVM系その他 ○ Hibernate ■ JavaのORM ○ Exposed ■ KotlinのORM ○ Thymeleaf ■ Javaのテンプレートエンジン ● フロントエンド ○ Next.js:サークルポータルのフロントエンド 10

Slide 11

Slide 11 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. 利用技術の紹介と用途の紹介 ● Java+Spring 11

Slide 12

Slide 12 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. 利用技術の紹介と用途の紹介 ● Kotlin+ktor+Exposed(+Next.js) 12

Slide 13

Slide 13 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. 利用技術の紹介と用途の紹介 ● その他ライブラリなど ○ (後で聞く。紹介したいものとかあれば) 13

Slide 14

Slide 14 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. 利用技術の紹介と用途の紹介 14

Slide 15

Slide 15 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. 利用技術の紹介と用途の紹介 ● Ruby ○ Ruby on Railsと合わせて利用 ○ 社内外のアプリ合わせて13~14くらいがこちらでできている ● Go ○ 一部マイクロサービスで利用 ○ 処理速度が必要かつサーバー間通信なAPIでgRPCと合わせて利用 ○ 過去発表資料 https://www.slideshare.net/slideshow/tech-day-3gogrpc/251070776 ● React ○ 一部フロントエンドのパーツとして利用 15

Slide 16

Slide 16 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. 利用技術の紹介と用途の紹介 ● Ruby on Rails + React (+ Go) 16

Slide 17

Slide 17 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. 利用技術の紹介と用途の紹介 ● その他ライブラリなど ○ imagemagick(Fantia、Creatia) ■ 画像のリサイズ、変換など。Rubyから利用 ○ GORM ■ Go言語用のORM ○ Hotwire ■ 新規に作るサービスをRailsで構築する場合には利用 ■ ただし、フロントエンド重視ではない場合のみ 17

Slide 18

Slide 18 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. 利用技術の紹介と用途の紹介 18

Slide 19

Slide 19 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. 利用技術の紹介と用途の紹介 ● クラウド関連 ○ AWS、Google Cloud(Fantia、EC、etc…) ■ 全般的にベースのインフラ構築に利用 ■ AWS:EC2、Fargate、S3、CloudFront、Aurora、etc… ■ Google Cloud:VPC、Cloud Run、Bigquery、Cloud SQL、etc… ○ Terraform ■ 上記インフラ構築用に利用 ■ 現状バックアップ等の利用が多いが今後は初期構築に使いたい ○ Ansible ■ インフラ構築後のサーバー内設定に利用 ● 各種自動化でも利用 ○ GitHub Actionsなどと組み合わせたりしつつ ○ 他CodePipelineやCloud Buildでのデプロイ自動化も活用 19

Slide 20

Slide 20 text

Copyright (C) 2024 Toranoana Lab Inc. All Rights Reserved. まとめ ● 虎の穴ラボが使っている技術について紹介しました ● このあとの発表でいくつかの内容について掘り下げがあると思いま す ● 今回は概要のみだったので、今後のLT会でも個々の利活用について 掘り下げていければと思います ● 使ってる技術に興味があればぜひカジュアル面談や採用説明会へ Go! 20