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
「勉強になった」で終わらせない、ストロングスタイルの勉強会
Search
okuzawats
November 29, 2023
Programming
0
400
「勉強になった」で終わらせない、ストロングスタイルの勉強会
社内勉強会のノウハウ、公開しちゃいます!LT会
https://yumenosora.connpass.com/event/300021/
での発表資料です。
okuzawats
November 29, 2023
Tweet
Share
More Decks by okuzawats
See All by okuzawats
Androidアプリのモジュール分割における:x:commonを考える
okuzawats
1
400
「Chatwork」Android版アプリを 支える単体テストの現在
okuzawats
0
340
カンファレンス参加をいかに正当化するか
okuzawats
0
290
10年モノのAndroidアプリのコード品質を改善していく、3つの取り組み
okuzawats
0
1.3k
Androidアプリ開発におけるSonarCloudの活用
okuzawats
0
1.1k
何故、UseCaseは1メソッドなのか
okuzawats
3
2k
例外を投げるな、値を返せ
okuzawats
9
8k
GitHub ActionsでAndroidアプリのテストを回しまくってたら全プロジェクトのCI/CDが完全停止する寸前だった件
okuzawats
0
610
Kotlinのifを愛でる
okuzawats
0
670
Other Decks in Programming
See All in Programming
Compose Multiplatform × AI で作る、次世代アプリ開発支援ツールの設計と実装
thagikura
0
170
概念モデル→論理モデルで気をつけていること
sunnyone
3
300
より安全で効率的な Go コードへ: Protocol Buffers Opaque API の導入
shwatanap
2
750
ProxyによるWindow間RPC機構の構築
syumai
3
1.2k
OSS開発者という働き方
andpad
5
1.7k
個人軟體時代
ethanhuang13
0
330
為你自己學 Python - 冷知識篇
eddie
1
350
Swift Updates - Learn Languages 2025
koher
2
510
プロポーザル駆動学習 / Proposal-Driven Learning
mackey0225
2
1.3k
プロパティベーステストによるUIテスト: LLMによるプロパティ定義生成でエッジケースを捉える
tetta_pdnt
0
3.3k
Oracle Database Technology Night 92 Database Connection control FAN-AC
oracle4engineer
PRO
1
470
Cache Me If You Can
ryunen344
2
3.1k
Featured
See All Featured
Visualization
eitanlees
148
16k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Six Lessons from altMBA
skipperchong
28
4k
Optimizing for Happiness
mojombo
379
70k
4 Signs Your Business is Dying
shpigford
184
22k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
YesSQL, Process and Tooling at Scale
rocio
173
14k
A Tale of Four Properties
chriscoyier
160
23k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Become a Pro
speakerdeck
PRO
29
5.5k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Rails Girls Zürich Keynote
gr2m
95
14k
Transcript
「勉強になった」で終わらせない、ストロングスタイルの勉強会 社内勉強会のノウハウ、公開しちゃいます!LT会(2023/11/29) 奥澤 俊樹@Chatwork株式会社
自己紹介 • 奥澤 俊樹(@okuzawats) • Chatwork株式会社 ◦ 2022/09〜 • Androidアプリエンジニア
◦ モバイルアプリケーションアーキテクト ◦ Chatwork Android版アプリのアーキテクチャの改善と技術負債解消に取り組んでいます。
社内勉強会を開催した背景
何の勉強会を開催したか? 概要 「コードの読みやすさ」について学ぶ勉強会 目的 Chatwork Android版アプリは、10年を超える歴史のあるコードベースに、様々なバックグラウンドのメンバーがコミットしている中で、「コードの読みやすさ」について共通認識を育むことが今後の開発生産性の維持・向上につながると考えたため 対象 モバイルアプリ開発(特にAndroid)に関わるエンジニア(任意参加)
勉強会のきっかけ
勉強会のきっかけ
勉強会のきっかけ Chatwork Androidのリポジトリには生粋のAndroidアプリエンジニアもコミットするし、それ以外の多種多様なバックグラウンドを持ったエンジニアもコミットする。 各チーム・各人が好きなようにコードを書いてしまうと、特に他チームが書いたコードを読むための時間が増えていき、開発速度が低下していく懸念がある。 そのため、「コードの読みやすさ」についての認識を揃えた上で、コードベースの読みやすさを改善していきたい。
ここまでのまとめ コードの読みやすさに関する課題を解決し、開発速度を維持・向上していくため、「コードの読みやすさ」に関する勉強会を開催した。
社内勉強会で何をやったのか
勉強会の内容 「読みやすいコードのガイドライン」の著者・石川宗寿さんをお招きして、コードの読みやすさについての勉強会を開催しました - Chatwork Creator's Note https://creators-note.chatwork.com/entry/code-readability
勉強会の内容 石川宗寿, (2022), “読みやすいコードのガイドライン 持続的なソフトウェア開発のために”, 技術評論社
社内勉強会のスケジュール
勉強会のスケジュール - 1週間に1回 - 全4回 - 1回あたり2時間 - なるべく多くのメンバーが参加できるように配慮した結果、17:00〜19:00に開催した。 -
合計8時間
勉強会のスケジュール 前日まで 特に準備は必要なし。勉強会の中で考える時間を設けたいため。 当日 Miroを使ってリアルタイムで感想・質問を共有。 翌日 学んだこと、実践したいこと(アクション)を各自書き出して、共有。
None
None
None
勉強会開催後のふりかえり 終了後 参加者を集めて、ふりかえり。1回目〜4回目の勉強会開催後に書いた「学んだこと、実践したいこと」を思い出しながら、各自が実践していきたいことを共有する。
None
None
None
ふりかえり 1回1回の勉強会、勉強会全体でふりかえり、理解の促進と記憶の定着を図っている。 同様に、アクションの抽出も1回1回の勉強会と勉強会全体でそれぞれ行い、実践につながるようにしている。 「勉強になった」で終わらせず、組織の目標達成に繋がって、はじめてゴール。
今後の展望 実践から得られる知見を持ち寄ったり、新メンバー加入を経たりし ながら、同じテーマで勉強会自体もイテレーションしていけるとよ り実践的になると思ってます(まだ思ってるだけ)。
勉強会をやった結果
勉強会をやった結果 - コードレビューやペアプロの時に、「読みやすさ」の観点からのフィードバックが増えた(ような気がする)。自分がコードレビューする時も「読みやすさ」の観点 からレビューコメントを入れやすくなった。 - スタイルガイドの整備が重要という認識が得られ、「スタイルガイドの整備」というアクションを抽出した(WIP)。 - 大きなPull Requestがレビュー精度に与える影響を認識し、PRのサイズに気を配る用になった。Big PRには警告を出すようにした。
まとめ
まとめ - Chatwork Android版アプリに関わるチーム・メンバーが増えていく中で、開発生産性を維持・向上していくために「コードの読みやすさ」が課題になると感じ、勉 強会を開催した。 - 1回ごとに学んだことをふりかえり、記憶の定着と、アクションの抽出を図った。 - 全4回の勉強会終了後に勉強会全体をふりかえり、さらなる記憶の定着と、個人・チームのアクションの抽出を図った。 -
「勉強になった」で終わらせず、組織の目標達成につなげるような勉強会の設計を意識した。 - 勉強会もイテレーションしていきたい(今後の展望)。 - We Are Hiring! カジュアル面談で待ってます!
参考文献 - 「読みやすいコードのガイドライン」の著者・石川宗寿さんをお招きして、コードの読みやすさについての勉強会を開催しました - Chatwork Creator's Note, https://creators-note.chatwork.com/entry/code-readability (最終アクセス日:2023/11/07) -
石川宗寿, (2022), “読みやすいコードのガイドライン 持続的なソフトウェア開発のために”, 技術評論社