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
tosite
July 27, 2019
Programming
0
35
[2019/07/27]はじめよう、ニコカレ!
Agile Japan 2019 長崎サテライト with NaITE
https://nagasaki-it-engineers.connpass.com/event/125262/
tosite
July 27, 2019
Tweet
Share
More Decks by tosite
See All by tosite
[2024/10/25]CREの守護者たち 〜DevOps×シフトレフト - 俺またプロダクト救っちゃいました!?〜
tosite
0
600
[2024/07/11]Guardianとして生まれ変わった俺は攻めと守りの運用で無双する 〜守りの天才が考える、攻めの運用術〜
tosite
0
830
[2024/04/23]tbls活用事例 〜 ビューポイントから データベースを整理してみた話 〜
tosite
0
390
[2023/09/15]ER図クエスト 過ぎ去りしドキュメントを求めて 〜複雑性に眠る秘宝〜
tosite
0
600
[2022/12/07]この素晴らしいアプリケーションにテストコードを
tosite
0
40
[2022/03/25]コミュニティから学ぶエンジニアリング
tosite
0
340
[2021/12/16]テストコードのないレガシーアプリケーションとの向き合い方
tosite
0
53
[2019/03/23]プルリクとの上手な付き合い方
tosite
0
21
[2018-12-12]ティファニーで転職を〜夏の日の2018〜
tosite
0
38
Other Decks in Programming
See All in Programming
テスト自動化失敗から再挑戦しチームにオーナーシップを委譲した話/STAC2024 macho
ma_cho29
1
1.3k
Effective Signals in Angular 19+: Rules and Helpers @ngbe2024
manfredsteyer
PRO
0
130
SymfonyCon Vienna 2025: Twig, still relevant in 2025?
fabpot
3
1.2k
The rollercoaster of releasing an Android, iOS, and macOS app with Kotlin Multiplatform | droidcon Italy
prof18
0
150
快速入門可觀測性
blueswen
0
330
Keeping it Ruby: Why Your Product Needs a Ruby SDK - RubyWorld 2024
envek
0
180
これでLambdaが不要に?!Step FunctionsのJSONata対応について
iwatatomoya
2
3.6k
Stackless и stackful? Корутины и асинхронность в Go
lamodatech
0
650
バグを見つけた?それAppleに直してもらおう!
uetyo
0
170
Zoneless Testing
rainerhahnekamp
0
120
testcontainers のススメ
sgash708
1
120
モバイルアプリにおける自動テストの導入戦略
ostk0069
0
110
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
243
12k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
65k
4 Signs Your Business is Dying
shpigford
181
21k
The Invisible Side of Design
smashingmag
298
50k
Designing for humans not robots
tammielis
250
25k
Faster Mobile Websites
deanohume
305
30k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.6k
Testing 201, or: Great Expectations
jmmastey
40
7.1k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
VelocityConf: Rendering Performance Case Studies
addyosmani
326
24k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
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!
ご清聴ありがとう ございました