Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Goを会社に導入して半年
Search
Go Sagawa
September 18, 2018
Programming
0
110
Goを会社に導入して半年
Go Sagawa
September 18, 2018
Tweet
Share
More Decks by Go Sagawa
See All by Go Sagawa
gRPCとgrpc-gatewayを フル活用したweb開発
gosagawa
0
73
GoのWebアプリ開発での DB関連トラブル
gosagawa
0
66
Errors Handling Talks at GopherCon2019
gosagawa
1
540
バッチとゴルーチンあるある
gosagawa
0
250
レガシーシステムあるある.pdf
gosagawa
0
370
20180228自社勉強会_プッシュ送信周りをマスターする
gosagawa
0
810
Other Decks in Programming
See All in Programming
テストコードはもう書かない:JetBrains AI Assistantに委ねる非同期処理のテスト自動設計・生成
makun
0
260
2025 年のコーディングエージェントの現在地とエンジニアの仕事の変化について
azukiazusa1
24
12k
go test -json そして testing.T.Attr / Kyoto.go #63
utgwkk
3
300
ファインディ株式会社におけるMCP活用とサービス開発
starfish719
0
320
@Environment(\.keyPath)那么好我不允许你们不知道! / atEnvironment keyPath is so good and you should know it!
lovee
0
120
Testing Trophyは叫ばない
toms74209200
0
860
🔨 小さなビルドシステムを作る
momeemt
4
680
Design Foundational Data Engineering Observability
sucitw
3
190
ソフトウェアテスト徹底指南書の紹介
goyoki
1
150
詳解!defer panic recover のしくみ / Understanding defer, panic, and recover
convto
0
240
複雑なドメインに挑む.pdf
yukisakai1225
5
1.1k
テストカバレッジ100%を10年続けて得られた学びと品質
mottyzzz
2
590
Featured
See All Featured
Gamification - CAS2011
davidbonilla
81
5.4k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Rails Girls Zürich Keynote
gr2m
95
14k
Documentation Writing (for coders)
carmenintech
74
5k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Making Projects Easy
brettharned
117
6.4k
Designing for Performance
lara
610
69k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
A Tale of Four Properties
chriscoyier
160
23k
Optimizing for Happiness
mojombo
379
70k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Transcript
Goを会社に 導入して半年 Gopher dojo #3 LT, Sep 18 2018 Go
Sagawa and factory,inc. @go_sagawa
自己紹介 • • • 会社の規模は 名ほど • アプリのバックエンド担当 • 年以上、
半年
Today’s blather. Goを導入して半年 01 Goで良かった事 02
Goを導入して 半年 SECTION TWO
バックグラウンド 1.Goを導入して半年 • iOS+androidエンジニア10数人 • バックエンド2人+一部外部パートナー • フロントメインの方がバックエンド構築 • PHP(Codeigniter)+さくらクラウド
Goを採用するまでの経緯 1.Goを導入して半年 • レガシーなPHPコードがたくさん • 会社としてPHPしか出来ないのはどうよ? • rubyやpythonは今からやって勝てなそう • Go面白いんじゃない?
初期(〜二ヶ月) 1.Goを導入して半年 • まずはバッチから試験的に導入 • 特に詰まる所なし • 慣れればPHPより早く堅牢に作れる
中期(三ヶ月〜四ヶ月) 1.Goを導入して半年 • 次はCRUDのある管理画面を作ろうとした • 社外に影響が無い所という理由で選択 • つまづく ◦ アーキテクチャどうする?
◦ テンプレート込みのサンプルあまり無い ◦ あまりフレームワーク使ってなさそう
後期(五ヶ月〜六ヶ月) 1.Goを導入して半年 • 画面があるものは諦め、APIを中心に • 開発が数週規模の小さめのアプリで無事導入 • 諦めたものも多々 ◦ アーキテクチャ→オレオレ
◦ protoを使った仕様共有→swagger ◦ デーモン化→circusというpythonのツール を導入してみたが、もう古く多々トラブル
半年を通してやっていたこと 1.Goを導入して半年 • 継続的なエンジニア層へのアピール ◦ 作ってどうだったかを伝える ◦ アプリエンジニアにも教えてみる • 継続的な非エンジニア層へのアピール
◦ そもそもなんでGoなんだっけと何回も以上聞 かれた
現在 1.Goを導入して半年 • 数ヶ月規模の少し大きめのアプリのバックエンド として開発中 • アーキテクチャに沿ったディレクトリ構成(Clean Architecher + DDD)を考慮中
• Vue.jsと組み合わせて管理画面に再トライ • swaggerやめてproto使いたい
スムーズに導入するための近道 1.Goを導入して半年 • まずはバッチから • フロントエンド頑張らない • うまく知見を取り入れる ◦ インフラ、アーキテクチャ、ライブラリ
◦ Gopher道場が先にあればもっと早かった • Goを会社に浸透させる
Goで良かった事 SECTION THREE
{ Goで良かった事 教えやすさ 2.Goで良かったこと ・環境作りやすい ・覚えること少なめ ・小さく作れる ・Go Playgroundが秀逸 ・公式ライブラリその他の
豊富なサンプル
01 2.Goで良かったこと Goの問題を解くコンペしました
02 問題はgolang.tokyoのdev quizを参考にさせていただいてます 2.Goで良かったこと
03 習った内容を人に教えてみるのもオススメです 2.Goで良かったこと
ありがとうございました!!! ここで得た物を次につなげて行きます。