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
[2019/07/27]はじめよう、ニコカレ!
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
tosite
July 27, 2019
Programming
83
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
[2019/07/27]はじめよう、ニコカレ!
Agile Japan 2019 長崎サテライト with NaITE
https://nagasaki-it-engineers.connpass.com/event/125262/
tosite
July 27, 2019
More Decks by tosite
See All by tosite
[2026-03-07]あの日諦めたスクラムの答えを僕達はまだ探している。〜守ることと、諦めることと、それでも前に進むチームの話〜
tosite
0
790
[2026-02-26]Road to NEXT CRE 〜SRE活動を通して見つけた、次世代CRE組織の在り方SP〜
tosite
0
240
[2026-12-12]あの日僕が見た胡蝶の夢 〜人の夢は終わらねェ AIによるパフォーマンスチューニングのすゝめ〜
tosite
0
1k
[2025-02-07]生成AIで変える問い合わせの未来 〜チームグローバル化の香りを添えて〜
tosite
1
1.4k
[2024/10/25]CREの守護者たち 〜DevOps×シフトレフト - 俺またプロダクト救っちゃいました!?〜
tosite
0
2k
[2024/07/11]Guardianとして生まれ変わった俺は攻めと守りの運用で無双する 〜守りの天才が考える、攻めの運用術〜
tosite
0
1.4k
[2024/04/23]tbls活用事例 〜 ビューポイントから データベースを整理してみた話 〜
tosite
0
720
[2023/09/15]ER図クエスト 過ぎ去りしドキュメントを求めて 〜複雑性に眠る秘宝〜
tosite
0
930
[2022/12/07]この素晴らしいアプリケーションにテストコードを
tosite
0
85
Other Decks in Programming
See All in Programming
JavaDoc 再入門
nagise
0
330
Technical Debt: Understanding it Rightly, Engaging it Rightly #LaravelLiveJP
shogogg
0
220
ローカルLLMを使ってB2Bサービスを作っていての学び
yaotti
0
170
Dataformのリポジトリを立ち上げるときにまずやること / dataform-day0-2026
snhryt
0
160
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
190
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
240
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
3
2k
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
0
230
ローカルLLMでどこまでコードが書けるか -拡張版 / How much code can be written on a local LLM Extended
kishida
10
3.9k
Oxcを導入して開発体験が向上した話
yug1224
4
310
New "Type" system on PicoRuby
pocke
1
860
Spring Security 実践 ─ GraphQL APIで実務に役立つ 認証・認可 を学ぶ
wagyu
0
230
Featured
See All Featured
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
54k
Raft: Consensus for Rubyists
vanstee
141
7.5k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.9k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.4k
Tell your own story through comics
letsgokoyo
1
950
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
140
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
The Curse of the Amulet
leimatthew05
1
13k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
210
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
240
Exploring anti-patterns in Rails
aemeredith
3
410
Mobile First: as difficult as doing things right
swwweet
225
10k
Transcript
はじめよう、 ニコカレ! Agile Japan 2019 長崎サテライト with NaITE 2019-07-27 Sat
Naoto Teshima
こんにちは
わたし 3
4 わたし GMOペパボ ホスティング事業部 ムームードメイングループ 手島 尚人 インターネット上では
まおちゃという名前でJKやってます 4
5 わたし 5
わたし 6 最近は… Ruby on Railsとか Laravelとか 書いてます 6
わたし 7 ref: https://kimromi.hatenablog.jp/entry/2019/02/23/225740 7
わたし 8 ref: https://kimromi.hatenablog.jp/entry/2019/02/23/225740 8
マネジメント 仕事の進捗は チケット ガントチャート バックログ などでマネジメントしているかと思います 9
皆さんマネジメント してますか?
マネジメント 仕事の進捗は チケット ガントチャート バックログ などでマネジメントしているかと思います 11
マネジメント 特にアジャイルプラクティスには マネジメント用 フレームワークが 揃っており取り組むことは難しくないです 12
マネジメント どうすればもっと 仕事の効率が上がる と思いますか? 13
マネジメント 手当たり次第にいろいろな アジャイルプラクティスを 取り入れてみる? 14
マネジメント 強力なリーダーがいて トップダウンで タスクを管理する? 15
マネジメント スタープレイヤーがいて ボトムアップで 提案していく? 16
マネジメント チームで協力して 連携しつつプロジェクトを 進めていく? 17
マネジメント 18 https://www.agilejapan.org/2019/session/keynote-03_GROOVE.pdf
マネジメント 基調講演でもこのような お話しがありましたね 19
マネジメント そのどれもが間違いではないと 僕は思います 20
マネジメント そして同時にこう思います 21
マネジメント 人はキモチで生きている 生き物だと。 22
マネジメント 気分が乗っているときは どこまででも仕事ができる気がするし 気分が乗らないときは遅々として 作業が進まないことだってあります 23
マネジメント キモチを仕事に持ち込む ことは悪いことでしょうか? 24
マネジメント 僕はそうは思いません 25
マネジメント 今、自分がどんなキモチなのか? 最近どんな調子なのか? 26
マネジメント それが可視化できれば 色々と対策が取れますよね 27
マネジメント 大事なのは怒らないことではなく 今、自分が 怒っているという事実を自覚する ことだと思います 28
マネジメント そしてそのソリューションとして 僕はニコカレを作ることにしました 29
マネジメント ニコカレとは元々、日本発祥の アジャイルプラクティスだと言われています 30 ニコニコカレンダー
マネジメント 日々の気持ちをアナログでカレンダーに書き込み チームメンバーのキモチの動きを把握するものです 31
マネジメント そこで思いました これ、 Slack通知できるようにして キモチをグラフ化・可視化したら 売れるんじゃね?と 32
https://github.com/tosite0345/nicocale.php マネジメント そんなこんなでニコカレを開発する 運びとなったわけです 33
突然ですが
チームの4つの ステージについて ご存知ですか?
マネジメント Agile Japan 2018 長崎サテライト with NaITE の資料を見てみましょう 36
マネジメント 37 タックマンモデル
マネジメント 38
マネジメント 39
マネジメント 40
マネジメント 41
マネジメント 42
マネジメント 43
マネジメント 44
マネジメント 45
マネジメント 46
マネジメント いいこと書いてるわ過去の僕… 47
マネジメント 特に フォーミング期のチームに ニコカレを導入してもらいたい感があります 48
マネジメント どの期においても共通して重要なのは 自分のキモチを素直に表現 することかなと 49
マネジメント そのためにも一人ひとりの 心理的安全性が 確保された状態を 作り出していきたいですよね 50
マネジメント 心理的安全性を担保するためには コミュニケーションを 活性化させていく必要がある と考えています 51
マネジメント ニコカレはその課題を解決するための ソリューションとなり得る のではないでしょうか 52
画面
トップ画面 54
トップ画面 55 https://github.com/missive/emoji-mart
気をつけた点 Emoji+キモチに分けて かんたんに登録できるようにした 分けたのは グラフ化などの 実装をかんたんにするため 56
https://github.com/missive/emoji-mart 気をつけた点 標準のEmoji以外にもEmoji-martを使用して いろんなEmojiを使えるようにした 57
一覧画面 58
気をつけた点 キモチごとに色を付けるようにした 59
カレンダー画面 60
設定画面 61
構成
ユーザーSlack 全体像 63 バックエンド (PHP) フロントエンド (Vuetify) 問い合わせ フォーム CRON
OAuthログイン 各種通知 定期的にAPI エンドポイントに アクセス 開発用Slack 通知 エラー通 知 デプロイ Deployer
LOLIPOP!マネージドクラウド 64
LOLIPOP!マネージドクラウド 65
LOLIPOP!マネージドクラウド 便利なのでぜひ使ってください(宣伝) 66
ユーザー側 67
ユーザーSlack アプリケーション構成 68 バックエンド (PHP) フロントエンド (Vuetify) 問い合わせ フォーム 開発用Slack
ユーザーSlack アプリケーション構成(ログイン) 69 ※ 2019年7月現在、Slackアカウントのログインのみ実装。 バックエンド (PHP) フロントエンド (Vuetify) OAuthログイン※
気をつけた点 OAuth認証を利用することにより 個人情報をDBに持たないようにした 70
ユーザーSlack アプリケーション構成(通知) 71 バックエンド (PHP) フロントエンド (Vuetify) 問い合わせ フォーム CRON
各種通知 定期的にAPI エンドポイントに アクセス 開発用Slack 問い合わせ通知 エラー通知
通知一覧 72 登録後
アプリケーション構成(通知) 73 バックエンド (PHP) フロントエンド (Vuetify) 開発用Slack エラー通知
エラー通知 通知一覧 74
気をつけた点 Laravel5.6から ログ出力先をSlackに 指定できるようになったので試した 75
config/logging.php .env アプリケーション構成(通知) 76
ユーザーSlack アプリケーション構成(通知) 77 バックエンド (PHP) フロントエンド (Vuetify) CRON 各種通知 定期的にAPI
エンドポイントに アクセス
通知 78 リマインダー
スクリプト トリガー アプリケーション構成(通知) 79 API https://nicocale.app/api/v1/reminders 定期実行
アプリケーション構成(通知) 80 問い合わせ フォーム 開発用Slack 問い合わせ通知
お問い合わせフォーム アプリケーション構成(通知) 81
問い合わせ 通知 82
気をつけた点 Google フォームを使用した 問い合わせフォーム自前で持ちたくなかった ラクしたかった… 83
スクリプト トリガー アプリケーション構成(通知) 84 問い合わせ時に 発火
開発側 85
インフラ構成(デプロイ) 86 ※ デプロイにはDeployerを利用。 バックエンド (PHP) フロントエンド (Vuetify) 開発用Slack デプロイ通知 デプロイ※
Deployer Issue通知
気をつけた点 Deployerを使って デプロイ後の諸作業 (シンボリックリンク作成とか.envアップロードとかキャッシュのアレコレとか) をコード化した 87 Deployer
デプロイ完了 通知 88
Repository インフラ構成(CI) 89 開発用Slack 結果通知 Issue通知 Push CIチェック OK マージ
気をつけた点 デグレ起こさないよう、Pushするたびに CI側でユニットテストを実行 する環境を整えた 90
失敗時 成功時 CI実行結果 91
通知 92 CI通知
ハマったこと
ハマったこと 94
ハマったこと Slackのアプリ審査 通すの難しい・・・! 95 結局30回近くメールのやりとりしてなんとか公開までこぎつけました
今後の展望
今後の展望 97
今後の展望 などなど、今後も機能改修を 進めていきたいと思っています! 98
今後の展望 ぜひ一度使っていただければ 嬉しいです! 99
今後の展望 https://github.com/tosite0345/nicocale.php 100
今後の展望 皆さんのフィードバック お待ちしています😁 101
さいごに
Thank you, we’re hiring!
ご清聴ありがとう ございました