Money Forward XでのGo利用事例について
by
keitaro shishido
×
Copy
Open
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Slide 1
Slide 1 text
ビジネス課題をGoで解決する − Money Forward XでのGo利用事例について
Slide 2
Slide 2 text
自己紹介 ● 宍戸 啓太郎(Shishido Keitaro) ● 2020/12 マネーフォワード入社 ● 法人向けサービスを開発するグループのグループリーダー ● Go歴5年 ● 職歴 ○ SIer ○ 住宅設備機器メーカー ○ ソーシャルゲーム開発 ○ 人材系 ● 興味 ○ 競馬 ○ サッカー観戦(ベガルタ仙台) ○ ストロングゼロ(ダブルレモンが至高 )
Slide 3
Slide 3 text
Agenda 1. Money Forward Xの抱えていた課題 2. Goの利用事例 3. Goを利用するメリット 4. Goを利用したことで見えてきた課題 5. まとめ
Slide 4
Slide 4 text
Money Forward Xの抱えていた課題 ● 2020年頃の状況 ○ 一部バッチ処理でGoを採用していたが、Rubyプロダクト・エンジニアが中心 ○ 会社方針としてのGoの採用 ■ マネーフォワードCTOが考えていること(2020年9月) ○ Goのエンジニア0人 ■ Go経験者を採用し、開発力向上・普及を目指す ● 金融機関向けサービスに求められるもの ○ 安定性 ○ スケジュール ○ 品質
Slide 5
Slide 5 text
2020年のPush配信集計バッチでの利用に始まり、 Goを利用するプロダクトが続々と増えています。 Goの利用事例 2020 2021 2022 2023 ★ ★ ★ ★ ★ ★ ★ Push配信集計バッチ X Cloud Storage X Insight Marketing XIM-BI Mikatano ID BANK APP Mikatano 課金基盤
Slide 6
Slide 6 text
Goの利用事例 ● Mikatano ID ○ Serverless Framework (Lambda) × Go ○ GraphQL (gqlgen)
Slide 7
Slide 7 text
Goの利用事例 ● Mikatano 課金基盤 ○ EKS × Go ○ gin ○ sqlboiler ○ GraphQL (gqlgen)
Slide 8
Slide 8 text
Goを利用するメリット ● 静的型付けがある ○ 変更時にテストコードやビルドでミスに気付きやすい(影響範囲がわかりやすい) ○ 保守性の高さ ○ 型を使って堅牢に実装出来る(金融機関向けにより安心して使えるようになった) ○ interfaceを使ったテストしやすいコード ○ 静的解析を利用したコードチェック
Slide 9
Slide 9 text
Goを利用するメリット ● 習得の容易さ ○ 記法がシンプルで習得へのハードルが低い ○ ツールの充実 (gofmt, goimport, golang-cilint) ○ キャッチアップはどのように? ● 基本的には自習 ● マネーフォワード社内のGo採用プロダクトを参考に ● Go経験者によるレビュー ● reviewdogを使っての静的解析
Slide 10
Slide 10 text
Goを利用したことで見えてきた課題 ● フレームワーク・ライブラリのデファクトスタンダードが無い ○ Goエンジニアが少ない場合、どれを使うか迷ってしまう ○ 開発止まってしまうものも多い → どうしたか ● コード量が多くなる ○ エラー判定(if err != nil)多すぎる ○ Generics(まだ使ったことない)でどのくらい変わるか(コード量、パフォーマンス)
Slide 11
Slide 11 text
Goを利用したことで見えてきた課題 ● 採用難しい ○ Goエンジニアなかなか見つけられない ○ 市場感 ■ Goエンジニアは増えている ■ Goを採用する企業はもっと増えている ● goconのスポンサー増えている(MoneyForwardシルバースポンサー)
Slide 12
Slide 12 text
まとめ ● Money Forward X では2020年頃からGoを採用し、Go製のプロダクトも増えてきました ● 金融機関向けのサービスに求められる堅牢性という意味でもGoはより向いていると言えます ● Goは比較的習得も容易なので普及に向けたハードルは高くないです ● Goエンジニアの採用は苦戦するかもしれません ● Money Forward X ではGoエンジニアを募集しています
Slide 13
Slide 13 text
We are Hiring! https://hrmos.co/pages/moneyforward/jobs/0004293