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
スタートアップチームで学んだエンジニアの心構え / The attitude of t...
Search
mtskhs
January 31, 2020
Technology
1
1.6k
スタートアップチームで学んだエンジニアの心構え / The attitude of the engineer who learned from the start-up team
presentated at NTT Tech Conference #4
mtskhs
January 31, 2020
Tweet
Share
More Decks by mtskhs
See All by mtskhs
EMがマジ価値を届けきるために考え行動したこと / Engineering Manager's thoughts and actions to deliver outcome
matsu0228
0
3.8k
Cloud Firestore With Go
matsu0228
0
860
Goとの歩み / History with Go
matsu0228
0
110
ReactNativeにおけるパフォーマンスチューニング/ Performance tuning in ReactNative
matsu0228
2
1.4k
Goにおける API Client実装パターン / API Client implementation pattern in Go
matsu0228
7
7.8k
expo開発におけるCI/CD / CICD on development of expo
matsu0228
0
820
SpoLiveの爆速開発を支えるGAE/Goノウハウ / Practice of GAE&Go supporting SpoLive super fast development
matsu0228
1
230
Report of AgileTestingDays2018
matsu0228
0
500
OrganizationTheory of engineering
matsu0228
0
650
Other Decks in Technology
See All in Technology
DUSt3R, MASt3R, MASt3R-SfM にみる3D基盤モデル
spatial_ai_network
2
180
マルチプロダクト開発の現場でAWS Security Hubを1年以上運用して得た教訓
muziyoshiz
3
2.4k
マイクロサービスにおける容易なトランザクション管理に向けて
scalar
0
140
サイボウズフロントエンドエキスパートチームについて / FrontendExpert Team
cybozuinsideout
PRO
5
38k
Opcodeを読んでいたら何故かphp-srcを読んでいた話
murashotaro
0
270
C++26 エラー性動作
faithandbrave
2
760
ハイテク休憩
sat
PRO
2
160
How to be an AWS Community Builder | 君もAWS Community Builderになろう!〜2024 冬 CB募集直前対策編?!〜
coosuke
PRO
2
2.8k
Snykで始めるセキュリティ担当者とSREと開発者が楽になる脆弱性対応 / Getting started with Snyk Vulnerability Response
yamaguchitk333
2
190
新機能VPCリソースエンドポイント機能検証から得られた考察
duelist2020jp
0
220
KubeCon NA 2024 Recap: How to Move from Ingress to Gateway API with Minimal Hassle
ysakotch
0
210
コンテナセキュリティのためのLandlock入門
nullpo_head
2
320
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
460
33k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
2
170
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
28
900
The Cult of Friendly URLs
andyhume
78
6.1k
The Invisible Side of Design
smashingmag
298
50k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.6k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
66k
Done Done
chrislema
181
16k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
Transcript
スタートアップチームで学んだ エンジニアの心構え NTT Tech Conference #4 Hisayuki Matsuki Twitter: @mtskhs
about me • 松木久幸(@mtskhs) ◦ Backend Engineer / Gopher ◦
スポーツAI解説アプリ(SpoLive) ◦ GoにおけるAPI Client @Go Conference Autumn ▪ https://speakerdeck.com/matsu0228/api-client-implementation-pattern-in-go ◦ Agile (シリコンバレーで3ヶ月働いて体感した自立型組織のススメ) ▪ https://speakerdeck.com/matsu0228/organizationtheory-of-engineering 2
3
SpoLive ラグビー・サッカーの試合に対応中 4
Contents 自分が重要だと思う 心構え について • #1 共通認識 • #2 集中
• #3 楽しむこと 話さないこと • 技術的なトピック 5
#1 Common Ground 開発で一番難しいのは? 6
#1 Common Ground 開発で一番難しいのは? 何を作るか 決めること 7 詳細まで認識を合わせること • 背景・目的をメンバーが常に理解しておく
• どのような効果が見込めるか把握することで、実装コス トを踏まえた提案をできるようにしておく 正解は誰にも判断できない(常に変化が求められる) • 常にプロダクトのフィードバックを把握し、今後の改善を 回しやすくする手段を考える
#1 Common Ground 開発で一番難しいのは? 何を作るか 決めること 8 価値向上のために、時には「発散」が必要 • サービス価値のために良いものを作る
• 既存の仕様を捨ててでも価値を提供する • プロダクトチームに、これらの思考ができるメンバー(UXデ ザイナー 等)が必要だし、エンジニアが持っていると強い ◦ 会話をすることにより、その思考を学習する c.f. 書籍 正しいものを正しく作る
#2 Concentration • 限られたリソースでサービス改善・運用するためにはどうす ればよいか? ◦ 集中 ( = やらないことを決めること)
が重要 • 技術選定 ◦ できる限り、運用・監視が不要なように ◦ e.g. GAE / firebase + expo • 開発の進め方 ◦ セットアップなどは自動化して、ドキュメントよりも動く環 境を整える c.f. アジャイルマニュフェスト 9
#3 Enjoy • プレッシャーがキツイ・・ 前向きに変換するには? ◦ 仕事を 楽しむ こと! •
自分に限らずメンバーが主体的になるためにも ◦ c.f. エンジニアリング組織論への招待 承認欲求を満たす ことの大切さ • ドッグフーディングは当然に、フィードバックや周りの声を聞く ◦ フィードバックの仕組み化(アプリ内で評価を促す・分析基 盤の構築) c.f. スポーツ解説アプリ SpoLive における分析基盤の構築 https://qiita.com/mtskhs/items/ca10f926900303f09bf8 10
Summary • サービス価値向上のために、共通認識をもち自律的に動け る組織となることが大切 ◦ 決めるための、前提知識を共有しておく ◦ メンバーの成長のための会話。役割をオーバーラップで きると強い •
集中するために小さく保つ ◦ アーキテクチャ選定 • 楽しくやる ◦ ドッグフーディング・フィードバックを受ける・周りに発信し てみる ◦ 楽しさを見つける(スキル向上・対外発表) 11
参考書籍等 • 正しいものを正しく作る ◦ https://www.amazon.co.jp/dp/B07SGCH8R6 • エンジニアリング組織論への招待 ◦ https://www.amazon.co.jp/dp/B079TLW41L •
アジャイルマニュフェスト ◦ https://agilemanifesto.org/iso/ja/manifesto.html 12
参考書籍等 • 正しいものを正しく作る ◦ https://www.amazon.co.jp/dp/B07SGCH8R6 「6−2 視座、視野を越境する」 にて、 普段感じていたモヤモヤ(決めたどおりに作る ことは容易だが、それでよいのか)が言語化さ
れて腑に落ちました。 また、チーム内のUXデザイナーとの会話で今 までにない視点(現状仕様が〜だから、ではな くあるべき姿を考える)で考えることができまし た。 13
参考書籍等 • エンジニアリング組織論への招待 ◦ https://www.amazon.co.jp/dp/B079TLW41L 「2-3 心理的安全性の作り方」のアクノレッジメ ントとストーリーテリングの項目で、「承認」の大 切さが述べられている ある行動に対するフィードバック・承認により、
よいチームになっていくことができることを実感 している。 14
参考書籍等 • アジャイルマニュフェスト ◦ https://agilemanifesto.org/iso/ja/manifesto.html ドキュメントも大切だが、「動くソフトウェア」も大切とする考え 方。プロダクトは変化が大きいので変更されにくい「ドキュメント」 よりも「すぐ動かして確認できること」が大切だと感じる。 15