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
54
[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
[2025-02-07]生成AIで変える問い合わせの未来 〜チームグローバル化の香りを添えて〜
tosite
1
1.1k
[2024/10/25]CREの守護者たち 〜DevOps×シフトレフト - 俺またプロダクト救っちゃいました!?〜
tosite
0
1.5k
[2024/07/11]Guardianとして生まれ変わった俺は攻めと守りの運用で無双する 〜守りの天才が考える、攻めの運用術〜
tosite
0
1.2k
[2024/04/23]tbls活用事例 〜 ビューポイントから データベースを整理してみた話 〜
tosite
0
590
[2023/09/15]ER図クエスト 過ぎ去りしドキュメントを求めて 〜複雑性に眠る秘宝〜
tosite
0
800
[2022/12/07]この素晴らしいアプリケーションにテストコードを
tosite
0
54
[2022/03/25]コミュニティから学ぶエンジニアリング
tosite
0
470
[2021/12/16]テストコードのないレガシーアプリケーションとの向き合い方
tosite
0
89
[2019/03/23]プルリクとの上手な付き合い方
tosite
0
39
Other Decks in Programming
See All in Programming
Swift Concurrency 年表クイズ
omochi
3
210
Vue 3.6 時代のリアクティビティ最前線 〜Vapor/alien-signals の実践とパフォーマンス最適化〜
hiranuma
2
320
Vueのバリデーション、結局どれを選べばいい? ― 自作バリデーションの限界と、脱却までの道のり ― / Which Vue Validation Library Should We Really Use? The Limits of Self-Made Validation and How I Finally Moved On
neginasu
3
1.7k
Developer Joy - The New Paradigm
hollycummins
1
380
Claude Agent SDK を使ってみよう
hyshu
0
1.4k
他言語経験者が Golangci-lint を最初のコーディングメンターにした話 / How Golangci-lint Became My First Coding Mentor: A Story from a Polyglot Programmer
uma31
0
480
CSC305 Lecture 10
javiergs
PRO
0
320
ALL CODE BASE ARE BELONG TO STUDY
uzulla
28
6.8k
業務でAIを使いたい話
hnw
0
210
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
420
퇴근 후 1억이 거래되는 서비스 만들기 | 내가 AI를 사용하는 방법
maryang
1
140
組込みだけじゃない!TinyGo で始める無料クラウド開発入門
otakakot
2
380
Featured
See All Featured
Visualization
eitanlees
150
16k
Code Reviewing Like a Champion
maltzj
526
40k
For a Future-Friendly Web
brad_frost
180
10k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
22k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Unsuck your backbone
ammeep
671
58k
How to Think Like a Performance Engineer
csswizardry
27
2.2k
Six Lessons from altMBA
skipperchong
29
4k
What's in a price? How to price your products and services
michaelherold
246
12k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Building an army of robots
kneath
306
46k
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!
ご清聴ありがとう ございました