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
390
「勉強になった」で終わらせない、ストロングスタイルの勉強会
社内勉強会のノウハウ、公開しちゃいます!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
380
「Chatwork」Android版アプリを 支える単体テストの現在
okuzawats
0
320
カンファレンス参加をいかに正当化するか
okuzawats
0
280
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
600
Kotlinのifを愛でる
okuzawats
0
640
Other Decks in Programming
See All in Programming
バイブコーディング超えてバイブデプロイ〜CloudflareMCPで実現する、未来のアプリケーションデリバリー〜
azukiazusa1
3
780
変化を楽しむエンジニアリング ~ いままでとこれから ~
murajun1978
0
660
11年かかって やっとVibe Codingに 時代が追いつきましたね
yimajo
1
230
Bedrock AgentCore ObservabilityによるAIエージェントの運用
licux
8
560
MCPで実現できる、Webサービス利用体験について
syumai
7
2.3k
GitHub Copilotの全体像と活用のヒント AI駆動開発の最初の一歩
74th
6
1.6k
階層化自動テストで開発に機動力を
ickx
1
470
No Install CMS戦略 〜 5年先を見据えたフロントエンド開発を考える / no_install_cms
rdlabo
0
430
中級グラフィックス入門~効率的なメッシュレット描画~
projectasura
4
2.4k
iOS開発スターターキットの作り方
akidon0000
0
230
React 使いじゃなくても知っておきたい教養としての React
oukayuka
18
5.2k
画像コンペでのベースラインモデルの育て方
tattaka
3
1k
Featured
See All Featured
It's Worth the Effort
3n
185
28k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Designing Experiences People Love
moore
142
24k
Gamification - CAS2011
davidbonilla
81
5.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Embracing the Ebb and Flow
colly
86
4.8k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.5k
Become a Pro
speakerdeck
PRO
29
5.5k
Producing Creativity
orderedlist
PRO
346
40k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.5k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
870
The World Runs on Bad Software
bkeepers
PRO
70
11k
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), “読みやすいコードのガイドライン 持続的なソフトウェア開発のために”, 技術評論社