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
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
650
スキーマ駆動で、Zod OpenAPI Honoによる、API開発するために、Hono Takibiというライブラリを作っている
nakita628
0
320
あなたとKaigi on Rails / Kaigi on Rails + You
shimoju
0
190
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
360
チームの境界をブチ抜いていけ
tokai235
0
230
O Que É e Como Funciona o PHP-FPM?
marcelgsantos
0
200
kiroとCodexで最高のSpec駆動開発を!!数時間で web3ネイティブなミニゲームを作ってみたよ!
mashharuki
0
920
Server Side Kotlin Meetup vol.16: 内部動作を理解して ハイパフォーマンスなサーバサイド Kotlin アプリケーションを書こう
ternbusty
3
250
TFLintカスタムプラグインで始める Terraformコード品質管理
bells17
2
450
contribution to astral-sh/uv
shunsock
0
540
AI Agent 時代的開發者生存指南
eddie
4
2.1k
Foundation Modelsを実装日本語学習アプリを作ってみた!
hypebeans
0
130
Featured
See All Featured
Visualization
eitanlees
149
16k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Designing for Performance
lara
610
69k
Fireside Chat
paigeccino
41
3.7k
Optimizing for Happiness
mojombo
379
70k
Leading Effective Engineering Teams in the AI Era
addyosmani
7
640
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Building Adaptive Systems
keathley
44
2.8k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
Become a Pro
speakerdeck
PRO
29
5.6k
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で良かったこと
ありがとうございました!!! ここで得た物を次につなげて行きます。