株式会社クイックのWebサービス開発blog

HAPPYなエンジニア&デザイナーのブログです

【GoogleDrive】チームドライブの運用で涙を流した「漢」の嘆き

こなさんみんばんは!!
Windowsが大嫌い!Linux大好き!!ヘルプデスク担当のてるりんです。

GoogleDrive皆さん使っていますか?
メチャクチャ便利ですよね!

弊社のとあるプロジェクトで作ったチームドライブの運用者の方から運用で困っているとお悩み相談を頂き、 解決策がないかなーと模索し涙を流したお話。

相談内容

①検索結果からファイルのパスが拾いづらい!何とかならない?
GoogleDriveの検索は指定した条件で検索すると
サクッと検索結果が出てくるので超便利!と思っていたのですが、
検索結果で表示されたファイルがどこのパスにあるかパッとわかりづらいんですよね。

②大量にフォルダがあると、どのフォルダにいつファイルがアップロードされたかがわからないから何とかならない?
フォルダが少数なら原始的にポチポチフォルダを漁ることできるけど、大量にフォルダがあると判別不能
GASでゴニョゴニョしてスプレッドシートに情報出力とかで解決できるのだが、数が大量にあると話は別。

フォルダが大量にある背景として、ファイルアップロード者が多数おり、フォルダ作成の手間を省く為、
予め空のフォルダを大量に作成している。

頂いたオーダー

  • 万単位であるフォルダの中から、ファイルがアップロードされているフォルダの情報抽出。
  • 抽出したフォルダにファイルがいつアップロードされたかの日付情報が欲しい。
  • 但し、空のフォルダも超大量にあるのでそれは除外して欲しい。

問題解決するにあたって念頭に置いていた事

  1. 長ったらしいコードはガリガリ書かない → 自分の手を離れた時に後任が悲鳴を上げる。メンテもだるい。
  2. 既成品のツールとちょっとしたコマンドだけで何とかしたい → 誰が見てもすぐわかる様な状態にしたい。
  3. 全自動化したい → やっぱ楽したいねん(´・ω・`)

対応策その1

やっぱりGoogleと言えばGASでしょ!

  1. GASで全フォルダのリスト取得
  2. リストを基に全フォルダのファイル格納状況を確認
  3. ファイルがヒットしたら最新のファイルの日付けを取得
  4. スプレッドシートに出力

ザックリ上記の流れでGAS書いてみましたが・・・
APIへのリクエスト上限、メモリ上限の壁にぶつかり処理件数を分割したりして
ゴニョゴニョしましたが状況変わらずで結果は惨敗orz
てるりん涙を流す(´;ω;`)

対応策その2

LinuxでGDrive使ってみた!

LinuxでのGoogleDriveクライアントのひとつ。

$ gdrive list

上記はWindowsでいうDIRコマンド、Linuxでいうlsコマンド。
欲しい情報はこれで拾える!そして速度がめっちゃ速い!!
コマンド軽くパイプで繋げてやりたい事を叶えてくれる気がする!

君に決めた!!

と思ったらチームドライブ非対応ヽ( ・∀・)ノ┌┛)`Д゚)・;';
お蔵入り。
てるりん涙を流す(´;ω;`)

参考:https://github.com/prasmussen/gdrive
細かいセットアップ方法、使い方は( ՞ਊ ՞)☝を見てね。

対応策その3

Linuxでrclone使ってみた!

LinuxでのGoogleDriveクライアントのひとつ。
GoogleDriveだけじゃなくAWSのS3、DropBox、OneDriveだったり
多数のクラウドストレージに対応しているのが売り。
そしてチームドライブにも対応している!

$ rclone lsl [DriveName]:[FloderName]

対応策その2同様、上記はWindowsでいうDIRコマンド、Linuxでいうlsコマンド。

欲しい情報はこれで拾える!そして速度がめっちゃ遅い!!\(^o^)/
8時間待ってAPIへのリクエスト上限になりお蔵入り。
てるりん涙を流す(´;ω;`)

参考:https://rclone.org/
細かいセットアップ方法、使い方は( ՞ਊ ՞)☝を見てね。

対応策その4

Linuxgoogle-drive-ocamlfuse使ってみた!

LinuxでのGoogleDriveクライアントのひとつ。
このツールはLinux上にGoogleDriveのマウントができて超便利なんですよね。
マウントしてからはCUIでいつも通りのコマンドでGoogleDriveを触れるのがとても好感持てました。
もちろんチームドライブにも対応( ・`ω・´)

$ find /mnt/google_drive -name *.jpg -o -name *.heic -type f -exec ls -l {}\; > hoge.txt
 ※-execよりxargs ls -l ←のが速い・・・。

遅い!遅すぎる!!というか固まる(;゚Д゚)
なのでお蔵入り。
てるりん涙を流す(´;ω;`)

対応策その5

初心に返ってWindowsでDriveFileStream使ってみた!
GoogleDrive使ってる方でしたらWindowsMac問わず、 もう説明不要のアプリですよね!!
Windowsから直接GoogleDriveを触れるので対応策その4同様、
Linuxのfindっぽく検索できないかと思い(Macでええやんという突っ込み禁止)

Get-ChildItem -Recurse G:\チームドライブ\ぷろじぇくと | ?{ $_.Length -ne $null } | Select-Object Fullname,LastWriteTime | Export-CSV C:\temp\directory_check.csv -Encoding Unicode

PowerShellで↑試してみたところ10万件前後のフォルダ一通り舐めるのに15分程度で速い!!
後は出力したCSVをエクセルのVBAで成形&取り込みし、欲しい情報の一覧ができました!!
結果はオーライですが、エクセルで取り込んだり一手間あるし、全自動化が厳しいのでお蔵入り。
てるりん涙を流す(´;ω;`)

最終的な着地

以上の対応策を色々試した結果、

根本的にフォルダ構成の見直し、アップロードの運用方法を見直して空のフォルダ全部消して、アップロード時にフォルダ作成する様にお願いすれば解決するんじゃない?

というシンプルな結論に至りました。

これらを踏まえて思ったこと

  • 試した手法全部不要になりましたが、GDrive、rclone、google-drive-ocamlfuseこれらのツールはLinux運用する上でケースによっては色々使えそう。 是非Linux使いの方には触って頂きたいです。(ネット上だとUbuntu/Debian系での情報が多いですが、CentOS6/7系でも普通に使えました!)
  • 今の運用方法が正しいか常に疑うべし。 サーバ、PC運用する上で常に考えなければいけない事ですが、現状の運用方法、今ある形にとらわれすぎると良くない。 時には今ある運用の形を全部捨てるのも必要。
  • フォルダ構成、整理ってやっぱり大事。
  • DriveFileStreamはやっぱり便利! まだ使ってない方、使うと幸せになれますよ!
  • 対応策その5のワンライナーWindows系のファイルサーバ運用には使えるので是非お試しあれ!

中身の無いブログでしたが以上です!
あでゅー(´・ω・`)


\\『明日のはたらくを創る』仲間を募集中!! // 919.jp

チームビルディング:「マネージャーに求めるもの」編

みなさん、こんにちは。

フルスタックサラリーマン」こと、WEB事業企画開発室シニアマネージャーのnakayanです。
今週末、3ヶ月ぶりに髪を切ります。今年の夏は暑かった・・・

さて、前回はエンジニア採用について概要編として書いたのですが、特に各論で書くことがなかったことに気がつきました。これはヒドイ。
チーム拡大期の今、改めてチームビルディングについて最近考えていることが多いので、その一部を書いてみようと思います。

チームビルディングというと色々な要素がありますが、急拡大していくチームの中で特に問題となってくるマネジメントについて、というかマネージャーに求めるものについてまとめます。
自身の重要課題の一つに掲げているのが、「マネージャーの育成」です。

※ここでいう「マネージャー」とは、プロジェクトマネージャーではなく、組織マネジメントを担うマネージャーです。

色々な記事を読んでいく中で勉強になることが多かったので、参考・引用させていただきながら書きたいと思います。

組織における「リーダー」と「マネージャー」の違い

「リーダーシップ」や「マネジメント力」という言葉をよく耳にしますが、そもそも「リーダー」と「マネージャー」の違いって何なのかと疑問に思うところからスタートしました。

海外企業のトップは、「リーダー」と呼ばれている印象がありますが、何となく日本だと「メンバー」→「リーダー(主任・係長)」→「マネージャー(課長)」みたいな役職のイメージがあります。

が、ここで述べるのは役職の上下の意味ではなく、持っている資質としての違いです。どちらが良い悪いではないです。

  • リーダー:自ら先頭に立って進むべき道を示す存在

  • マネージャー:メンバーの一人ひとりが最高のパフォーマンスを発揮できるように支援する存在

おぉ!何となくイメージ湧きますね! だから海外企業のトップは「リーダー」と呼ばれるんですね。

リーダーとは

  • 組織全体がどちらに進むべきなのかを示す。
  • 明確なビジョンを示し、あるべき未来に向かって突き進んでいく原動力を生み出すという圧倒的なリーダーシップがいる。
  • 個性や価値観に関係なく「明確な方向性を提示する」「変革・改革を生み出す」「組織を一体化させる」という要素が必要。
  • 何よりも、リーダーには人を引きつける力が必須。
  • 上司として部下に偉そうな態度をとったり、命令口調で指示を与えたりするのがリーダーではない。
  • リーダーにふさわしい仕事ぶりを積み重ね、「この人についていきたい」と周囲に思わせたときに、初めてリーダーとなる。
  • リーダーシップを養い、リーダーを育成するには、重要な意思決定(責任)の場数が必要。

マネージャーとは

組織に属する一人ひとりの能力を見極め、パフォーマンスを最大限発揮できるよう、役割分担や成長を支援する。

ドラッカーが定義した「マネージャー」に求められる5つの役割

  1. 目標を設定する
  2. 組織化する
  3. モチベーションを高め、維持する
  4. パフォーマンスを評価する
  5. 自分も含めて部下を育成する

※ただ業務を振り分けるだけの人材はマネージャーとは呼べない。

組織全体を見渡し、それぞれの役割に適した人材を的確に配置する。そして、自分も含めて組織全体で成長を促していける存在となって、初めてマネージャーといえる。

下記の参考・引用元にもっと詳細に色々書いてあるので面白いですよ!

参考・引用元: u-note.me

冒頭で記載した「マネージャーの育成」という点に戻ると、会社における「マネージャー」というポジションは、おそらく「リーダー」「マネージャー」どちらの要素も求められていることがほとんどではないしょうか。
どちらに強みを持ったマネージャーになるかというのは、各自が意識してみると良いと思います。

ちなみにnakayanは、この違いを正確に認識する以前からこんなことを口にしていました。

「メンバーや仕事を管理したいわけじゃない。ビジョナリーであり、リーダーとしてチームをつくりたい。」と。

偉そうですねー。カーッ(゚Д゚)≡゚д゚)、ペッ

なので、まだまだ力不足ではありながら、どちらかを選べと言われたら「リーダー」でありたい!という想いです。
ちなみに、あまり管理能力が高くないので「せめて・・・」という気持ちでもあります(TдT)

「マネージャー」の役割とは

先ほど、"ドラッカーが定義した「マネージャー」に求められる5つの役割"がありましたが、ここでは「マネージャー」のポジションとして担う役割を記載します。(重複する内容もあります)

  1. チームの成果の最大化
  2. チームの成果の最大化を「生産性の高いやり方」で実行する
  3. 自身と部下の「価値ある人材への成長」
  4. 経営理念・ビジョン・目標・ルールの浸透

磨いていくべき仕事力

  1. 迅速な意思決定
  2. 成果につながる権限委譲
  3. ムダのない業務推進
  4. スピード感を生む時間活用
  5. 高生産性人材の育成
  6. 最強チームの構築

ひえぇ~!書いておきながら自分が全然できてないという・・・

参考・引用元:管理職1年目の教科書  櫻田 毅 (著)

「最強チーム」ってなんだよ!って思ったアナタ。
海軍の最強チームの本とか出ているので、そういったものを参考にしつつ、自分たちの会社・組織においての「"最強チーム"ってどんなチームだろうね」って議論を、マネージャー陣や場合によってはメンバーも含めて実施してみるのも面白いのではないでしょうか。

組織の成果を出すために

  1. 会社の業務の円滑な流れを維持するために、微調整やトラブル対応を行う。
  2. そのためには、公式の情報・人間関係だけでなく、非公式の情報(口コミ、噂話、人々の表情など)にも支えられた暗黙知と社内外の豊富な人脈を駆使する能力が求められる。
  3. そのような能力を武器にして、組織内の上と下、社内他部署と社外の人々からありとあらゆる情報と要望を受け取り、それを分析し理解したうえで、再び関係者に情報を伝達する。

組織の中のハブ(要)として機能するのがマネージャー。ハブが機能しなければ、組織全体が機能不全に陥る。
ハブとして効果的に機能するためには、社内、社外の関係者との間に生産的な関係性を構築する必要がある。

部下に対して

  1. 部下のエネルギーを引き出す
  2. 部下の成長を後押しする
  3. チームを構築・維持・成長させる

上司・トップに対して

  1. 結果で示す
  2. 説得力を持つ(相手を尊重しながら、自信を持って自分の言いたいことを相手に伝える)

社外に対して

  1. 最高のサービスを提供すること
  2. 企業の社会的責任を果たすこと

いやー、こういうのを目の当たりにすると超人ですね。でもやるしかない!!
できるようになったら相当楽しいと思います!!

参考・引用元: lightworks-blog.com

おまけ

少し前に、「新しい時代の「リーダー」に求められる10の要件とは?」という記事がありました。
これは「マネージャー」とはまた違って、これからの時代の経営者に求められるものという内容です。

新時代リーダーの10要件

  1. 課題設定力、先見性、仮説構築力、大局観
  2. 変化抽出力、変化適応力、カオス耐性、胆力
  3. 素直さ、伸びしろ、学習能力
  4. 自己効力感
  5. 比較優位となる強み(タグ)の認識と、機会開発力
  6. 多様性受容力
  7. 越境力、領域をつなぐ力、違う領域の人脈
  8. 共感力、熱量、物語力、チャーミングさ
  9. 機会提供力、コーチング力、環境整備力
  10. 意思決定力、実行力、仮説検証スピード

見るからに難しそうですね。

ちなみに自分はどうかなーと思って、各項目に対して自己評価してみました。
◎:優 ◯:良 △:可 ✕:不可

nakayanの自己評価

◯ 1. 課題設定力、先見性、仮説構築力、大局観
◎ 2. 変化抽出力、変化適応力、カオス耐性、胆力
◯ 3. 素直さ、伸びしろ、学習能力
△ 4. 自己効力感
✕ 5. 比較優位となる強み(タグ)の認識と、機会開発力
◯ 6. 多様性受容力
△ 7. 越境力、領域をつなぐ力、違う領域の人脈
◯ 8. 共感力、熱量、物語力、チャーミングさ
✕ 9. 機会提供力、コーチング力、環境整備力
◯ 10. 意思決定力、実行力、仮説検証スピード

ちょっと自己評価が甘い気がしますね・・・。

と、これを自分で考えているときに、食にうるさいマネージャーのZAWAが「ひとこと物申す!」と来たので、評価してもらいました。

aimstogeek.hatenablog.com

ZAWAから見たnakayanの評価

◯ 1. 課題設定力、先見性、仮説構築力、大局観
◎ 2. 変化抽出力、変化適応力、カオス耐性、胆力
◯ 3. 素直さ、伸びしろ、学習能力
◎ 4. 自己効力感
◯ 5. 比較優位となる強み(タグ)の認識と、機会開発力
◎ 6. 多様性受容力
◎ 7. 越境力、領域をつなぐ力、違う領域の人脈
◎ 8. 共感力、熱量、物語力、チャーミングさ
△ 9. 機会提供力、コーチング力、環境整備力
◎ 10. 意思決定力、実行力、仮説検証スピード

これは予想外!!食にはうるさいけど、上司への評価は寛大だった!!!!笑
うーん、自信は持ちつつ、自惚れずに精進していきます!

みなさんも、ご自身で評価してみるとどうですか?

参考・引用元: next.rikunabi.com

さいごに

「マネージャー」って難しいですよね。
現時点の自分がしっかりできているわけではないですし、、、

「マネージャーを育成する」となると、作業のように手取り足取り教えられるものでもないので、考え方や意識するポイントを共有しながら、自ら考え実践していく機会、重要な決断の機会などをどれだけ提供していけるかが重要ですね。
積極的に権限を委譲して、今以上に全員が自走し、加速成長していくチームをみんなと一緒につくっていきたいと思います。

それではまた(_´Д`)ノ~~


\\『明日のはたらくを創る』仲間を募集中!! // 919.jp

ページの表示速度を改善し、CVRを上げた話

こんにちは。夏バテ継続中のsatopiです。

Webサイト制作に関わる方は「表示速度が○秒遅いと離脱率が▲%上がる」という記事をよく目にすると思います。

今回は「それって本当?そんなに変わらないでしょう?」と疑いを持っている方に捧げます……ッ!

LPといえば、ABテスト

ある日、元となるスマホユーザー向けのLPからBパターンを作成し、時間をおいてから結果を確認したところ、BパターンのCVRが著しく低下していました。

A(元となるLP) B
CVR 0.59% 0.12%

なんと0.47ポイントも下がっています。

これは、一体……!?!? =͟͟͞͞( ´q` 三´q` =͟͟͞͞) エェェェ……

原因は表示速度

AとBの大きな違いは、元となるAでは画像メインでしたが、Bパターンで一部CSSコーディングし直し+αという点です。

思い当たる原因を調べてもそれらには問題なし。
様々な調査の最後にWebpageTestでページの表示速度を計測をしました。

A(元となるLP) B
Speed Index 1770 2085
Document Complete Time 3.528s 6.154s

LTE(12Mbps / 12Mbps 70ms RTT)を選択して計測しています。

  • Speed Index: ファーストビューがいかに早く表示されるかを表す新しい指標
  • Document Complete Time: HTMLコードにあるコンテンツをすべて読み込んだ時間

遅ッ…遅すぎる……。フロントエンドエンジニアとして、この計測結果は顔面蒼白ものです。Document Complete Timeが異常に遅い。

スマホユーザー向けのLPなので実機検証していましたが、Wi-Fi接続していて遅さを体感できておらず、気づくのが遅れてしまいました。

この遅さのせいでBパターンの離脱率が上がり、コンバージョンへ至らなかったに違いありません。

表示速度を改善

読み込みを遅くしていた要因を取り除き、改めて表示速度を計測。

A(元となるLP) B
Speed Index 1770 2023
Document Complete Time 3.528s 3.303s

元のLPよりも若干早くなり、いい感じですね。

では改めて、ABテストといきましょう!

       :
       :
       :

A(元となるLP) B
CVR 0.60% 0.85%

無事に、もともと比較したかった施策内容でのテスト結果を出すことができました!
(:3[___Ξ___]ε:)イェイイェイ!!ウォ!イェイイェイ!!!ウォウウォ!(:3[___Ξ___]ε:)イェ!!

表示速度が遅くなると離脱率が上がるのは事実」である。

二度と同じ失敗を繰り返さないぞ!!!!!と心に誓った2018年夏でした。


\\『明日のはたらくを創る』仲間を募集中です!! // 919.jp

9連休!!エンジニアの夏季休暇@2018

こんにちは!みっきーです!
夏季休暇明け1発目ということで、弊社のエンジニアがどのような休暇を過ごしたのか特集したいと思います!

弊社の夏季休暇期間@2018
8月11日(土)〜8月19日(日)

アウトドア派?インドア派?

アンケートを取った結果、アウトドア派は14%しかいないことがわかりました!!!
この時点でインドアな休暇特集になるかと予想していたのですが、意外にも80%の方は外で遊んでいたようです。

アウトドア/インドアな過ごし方に分けたランキングを作成したのでご覧ください!

アウトドアな過ごし方ランキング(1〜3位)

1位:帰省
2位:遊びスポット(遊園地、動物園、博物館など)
3位:イベント系(サマソニ、ピ○チュウ大量発生、祭りなど)

インドアな過ごし方ランキング(1〜2位)

同率1位:ゲーム|映画
同率2位:アニメ|漫画|子育て|プログラミング

休暇中でもパソコンは手放せない!?

エンジニアが休暇中もパソコンを使うのか気になり調査しました。
気になる結果がこちら!

f:id:aimstogeek:20180823173619p:plain

みんなパソコン大好きですね!!! 私も大好きですよー!
中にはラズパイで遊ぶ強者までいてびっくりです!

ついでにパソコンで何をしていたかも聞いてみました!

  • dockerの「volumeマウント時の所有権問題の対応」※777はあかん!
  • Pythonに入門
  • 読書(スクラム開発と、ビジネス本、自己啓発書など)と企画書作成
  • スキルマッピングの自己添削、時間の使い方を整理
  • LPICを取るための資格勉強
  • 情報収集
  • 議事録の作成
  • ドメイン取って、Bootstrap Studio + Laravel5.7で遊びサービス作り
    (休み最後までテンションが持たず終了のお知らせ)
  • AWS CodeDeployとAWS Elastic Beanstalk調査
  • amazon-linux-extrasで簡単にphp7.2が入れられた!うひょーべんりー!
  • インテリアについて勉強
  • 子供と一緒にScratch
  • ロジックパズルのアルゴリズム(夢の懸賞生活のため)
  • dockerの勉強(ドットインストール流し見)
  • サマータイムの実装と問題点について
  • アルミ玉
  • 読書
  • 経済・経営・組織に関する勉強、情報収集
  • 赤ちゃんが寝付く音楽を検証
  • セミナー参加
  • 撮った写真をひたすら加工してアップ
  • ユーザニーズと従業員ニーズの解決案
  • Lpic、情報セキュリティの勉強
  • 自分のWordPressサイトのメンテナンス、React×Reduxの入門
  • Ruby入門(hello worldまで)

などなど

赤ちゃんが寝付く音楽を検証された方にインタビュー!

夏休みの自由研究のようで素敵だったので、「赤ちゃんが寝付く音楽を検証」された方に検証理由と結果を聞いてみました。

Q:なぜ検証されようと思ったのですか?
A:夜、子どもがギャン泣きしていていたので。

Q:どのように検証されたのですか?
A:5日間別々の音楽をながし、抱っこした状態であやしていました。

Q:効果のある音楽はありましたか?
A:オルゴールから激しいリズム系まで試した結果、東京音頭が最高の子守唄でした!!!

東京音頭が子守唄になるなんて!
お祭り好きに育ちそうですね!毎夜東京音頭で楽しく踊っている姿が目に浮かびます!!

夏季休暇の感想

長くなってしまったので、私的にツボだった夏季休暇の感想を一つ紹介します。

長すぎて体がなまる。

ストイックすぎる!!!!
ちなみに私はRubyに挨拶した後は、ひたすらゲームにアニメにと大忙しでした(*>v<)
あ〜楽しかった!!

以上、夏季休暇特集でした!



\\『明日のはたらくを創る』仲間を募集中です!! // 919.jp

スクラム開発はじめます

生まれてはじめて日傘をさしたら後ろの女性から「え!まじで!」という声が聞こえてきました。

サーバサイドエンジニアのフルーツパーラーです。

先日社内でスクラム開発について発表を行いました。 その時のワークの結果も併せて、みなさんに共有したいと思います。

発表とワークを通して、いかに見積もりが曖昧な事なのか。曖昧な状態をどう解決していくか。という事を実感して頂ける思います。
もしご興味がありましたら是非ワーク(問題)もお手元で試して頂きたいです。

お伝えしたい方

  • 見積もり?そんなの正確にできるよ。と日頃思っている方
  • スクラム開発に興味がある

スクラムを進めようと思ったきっかけ

  • 不確実性がある中でも改善を繰り返しながら短いスパンで価値を出したい
  • チーム自ら答えを出せるチームを作りたい(職域を自ら超えるチーム)

自身のキャリアを通していろいろ試して来ましたが、 細かなサイクルで改善を繰り返しながら価値を届けるという点で スクラム開発が興味深く、開発に取り入れようと推進しています。

本記事の読み進め方

スクラムの話の前に、見積もりがいかに不確実性を含んでいるかについて話をします。
問題が4問あります。
試したい方は回答用にA4用紙1枚とストップウォッチを用意して下さい。

問題の答えを考えて次のスライドに進んで下さい。
スライドに出てくる問題は以下です。

  • やきそばの話
  • いちえーいち(1A一)ゲーム
    • 1回目(基本)の見積もりと実績
    • 2回目(応用)の見積もりと実績
  • ドッグポイントゲーム

スライドの紹介

社内で行った時の見積もりゲームの結果(問題のネタバレ含む)

1. やきそばの話

「8分以下で食べられる」と回答した人は全体の87%でした。
先にお湯を沸かしたり、強い火力で沸かすなど改善の余地はたくさんあります。 カップやきそば自体は3分で作れるからだいたいこれくらいだろう。という事から5分や8分という回答が多かったと考えられます。
電気ケトルで700mlのお湯を沸かすのに3分〜4分かかりました。
感覚と実測値の違いは身近なところにあります。

2. いちえーいちゲーム

1回目(基本)の見積もりと実績(単位:秒)

平均値、中央値ともに実績の3倍近い見積もりを行っています。
結果から、人は経験がない事に対して、バッファを多く含ませると言えると思います。

最小値 最大値 平均値 中央値
1回目(見積) 30 420 141 120
1回目(実績) 20 100 46 45

2回目(応用)の見積もりと実績(単位:秒)

1回目の見積もりとくらべ、おおよその実績が想像出来た事から、平均値、中央値の見積秒数は1回目より少なくなっています。 また、実績との誤差も10%-30%と、近い値になっている事が結果からわかります。

最小値 最大値 平均値 中央値
2回目(見積) 45 300 91 60
2回目(実績) 54 120 83 80

2回目の問題の意図としては、1回目に見積もった内容の仕様変更やマルチタスクによる切り替えコストの増加を想定しています。
結果の中央値は1回目と2回目で約2倍の違いがあります。
これが実際の作業だったら、見積もった時間と同じ時間の遅れが発生する事がわかると思います。

まとめ

いかがでしょうか?
見積もりは多くの不確実が含まれる事がわかりました。 プロジェクトを進める中で、見積もりの精度を上げるという事も重要ですが、いかに実績ベースのベロシティを見ながら、 早い段階で改善を回していく仕組みを考えるか?という事も併せて重要だと考えています。

弊社ではユーザに価値のあるプロダクトを考え実現し、『明日のはたらくを創る』仲間を募集中です!



\\『明日のはたらくを創る』仲間を募集中です!! // 919.jp

赤坂でランチ! この肉を食べてほしい!!

こんにちは。WebサービスプランナーのZAWAです。
業務においてはプロダクト開発工程の上流と言われる箇所(要件定義や設計の一部)を主に担当しています。

突然ですが、私は何にしても「環境」が一番大事だと考えています。
それは喜怒哀楽の感情も、個人やチームの成長も、全ては「環境」と切っても切れないものだという思いからです。
「会社」環境の中でも「食」、「ランチ」を切り口として、2つの実績(※1&2)をもつ私がオススメしたい3店舗を今回はご紹介させていただきます。

※1 「237営業日」での「ランチ店」新規開拓実績:100超え
※2 ランチ後に「食べ過ぎた」と発言する確率:70%超え

溜池山王、六本木一丁目、虎ノ門、赤坂、赤坂見附、国会議事堂前あたりに勤務されている方、ぜひ行ってみてください。

目次

1. 店の名は。

2. 得られるもの、手放すもの

3. 本日のしめ

店の名は。

「金舌」

f:id:aimstogeek:20180803195759j:plain:w250f:id:aimstogeek:20180803195751j:plain:w250
全て美味しいです。肉好きにはたまりません。
一度で良いから食べて頂きたいのが13時からのみ注文できる「上遅得定食」(※3)です。
ボリューム満点の上、ご飯と汁物とサラダがおかわり自由!
しかも一品一品が主役級! その安定感、満足感たるや筆舌に尽くし難いとはこのことです。

二つ名をつけるなら「肉の勇者」とでも呼ばせて頂きたい気分です。
※3 メンチカツ、カレー、牛皿、さがり肉、牛タン、サラダ、汁物、ご飯のセット

【金舌】
■総合Lv:347
 ・味Lv :99
 ・量Lv :99
 ・価格Lv:50
 ・恍惚Lv:99
■電話番号:03-3568-2129
■住所:東京都港区赤坂3-11-7 ソシアル赤坂ビル1F

「カスケイドカフェ」

f:id:aimstogeek:20180803193208j:plain:w250f:id:aimstogeek:20180803193216j:plain:w250
これがまた何を食べても美味い。肉以外も美味い。
【カスケイドカフェ】
■総合Lv:338
 ・味Lv :99
 ・量Lv :99
 ・価格Lv:30
 ・セレブ感Lv:110
■電話番号:03-3505-1185
■住所:東京都港区 赤坂1-12-33 ANAインター コンチネンタルホテル東京 2F

「竹屋」

f:id:aimstogeek:20180803194135j:plain:w250f:id:aimstogeek:20180803194140j:plain:w250
こちらのお店も肉以外もありますし、肉以外も美味しいのですが、ぜひ肉を食べてほしいです。どの肉を食べてもジューシーで満足間違いなしです。
【竹屋】
■総合Lv:333
 ・味Lv :94
 ・量Lv :90
 ・価格Lv:60
 ・迅速な対応Lv:89
■電話番号:03-5545-5800
■住所:東京都港区赤坂1-4-3 グランジュール赤坂 1F

得られるもの、手放すもの

得られるもの

■満腹感
■多幸感
■内臓脂肪(※自制できない場合、そして運動量との兼ね合いで個人差があり)
■午後の眠気(※おかわり3杯目で獲得率80%程度ですが、個人差があり)

手放すもの(可能性のあるもの)

■ほんの少しの待ち時間
■800円~5,000円程度(「上遅得定食」の場合1,500円)
■ダイエットする意思
■午後の作業の質や量(※摂取量と併せて個人差があり)

本日のしめ

本記事は株式会社クイックの総意ではなく、あくまでZAWA個人の意見です。
また「金舌」様、「カスケイドカフェ」様、「竹屋」様とは何の利害関係もありません。
このお店を紹介してくれたhamanokami(当社エンジニア)に感謝の意を述べるとともに本記事のシメとさせていただきます。
お店に行って食べて、つい以下のように叫んでしまった私のような人はご連絡ください。
f:id:aimstogeek:20180803200245p:plain:w250

株式会社クイックでは様々な切り口から「皆のはたらく環境」を意識しております。



\\『明日のはたらくを創る』仲間を募集中です!! // 919.jp

【AWS CloudFront + S3】「404 NotFound」を表示させる方法

こんにちは。クイックSREチームのみっちーです。
今日はCloudFront+S3を利用時に役立つ小ネタをご紹介します。

ファイルが無くても「403 Forbidden」を返すS3

普段CloudFrontのオリジンとして、S3を利用している方は多いと思います。
ただこのS3、存在しないファイルへアクセスしたときも、「403 Forbiddenを返す」という特徴があります。
(本当?と思ったそこのあなた、このあとテスト結果を公開してますよ!)

「ファイルが無いんだったら、403じゃなくて404 NotFoundを返してよ」って思いませんか?
(思いますよね?はい。自分は思います。どっちなのかわからない!)

「本当にファイルが無いのか、ファイルのアクセス権限が無いだけなのか」を毎回調べるのもちょっと面倒なのが本音じゃないでしょうか。
そんなあなたにぜひお届けしたい!今回の小ネタはこちら✧(・ㅂ・)و

目次

1. 概要

2. 設定方法

1. 概要

CloudFront + S3の構成の場合、前述の通り「存在しないファイルへアクセスした場合でも403 Forbidden」を返します。
それが嫌な場合に、正しいステータスコードである「404 NotFoundを返す」ようにする設定方法です。

前提として、CloudFront(cf.919.test でDNS設定済み)のオリジンとしてS3を設定済みであるとします。
※ S3のStaticWebSiteHosting設定はONでもOFFでもどちらでもOKです。

・ 構成イメージ

f:id:aimstogeek:20180727181305p:plain

この時、「アクセス権限がないファイル」と「存在しないファイル」にアクセスすると、それぞれ挙動はどうなるでしょうか。
bucket policyで、「そのbucket内のファイルはすべて閲覧可能」な状態としてあるとします。)

・ アクセス権限がないファイル

f:id:aimstogeek:20180727181318p:plain f:id:aimstogeek:20180727181341p:plain

・ 存在しないファイル

f:id:aimstogeek:20180727181352p:plain f:id:aimstogeek:20180727181404p:plain

このように、どちらも同じ結果(403 Forbbden)が返ります。

これを以下のように設定したいとします。

存在しないファイル にアクセスした時は、
「error.html を表示し、404 NotFoundを返す」ようにしたい。

f:id:aimstogeek:20180727181415p:plain

2. 設定方法

それでは設定方法です。

CloudFront 側の設定

CloudFrontの管理コンソールから、以下の手順で設定を行います。
[CloudFront Distributions] -> [該当のCloudFrontをクリック] -> [Error Pages タブ] -> [Create Custom Error Response] f:id:aimstogeek:20180727181552p:plain

  • HTTP Error Code : 403 Forbidden
    オリジン(今回はS3)が返却するステータスコード を入力します。
    S3の場合は前述の通り、存在しないファイルでも403を返します。

  • Error Caching Minum TTL(Seconds) : 300
    「Response Page Path」で指定するファイルのキャッシュ時間です。
    任意値で設定します。

  • Customize Error Response : Yes
    カスタムファイルであるerror.htmlを表示させたいので「Yes」を選択します。

  • Response Page Path : /error.html
    カスタムファイルのPathを指定します。
    /error.html とした場合、アクセスURLはhttps://cf.919.test/error.html となります。

  • HTTP Response Code : 404 NotFound
    条件に合致して「Response Page Path」のファイルを表示した際に、「CloudFrontがクライアントに返却するステータスコード」を指定します。

これらの設定が終わったら[Create]を押します。 後は、Statusが「In Progress」から「Deployed」に変わるのを待ちましょう。

S3 側の設定

その間に、S3にerror.html をアップロードします。 アップ先(ファイル名)は、先程CloudFrontで設定した「Response Page Path」と同じにしてください。

アクセス確認

これで存在しないファイルへアクセスした場合は、error.htmlが表示されるようになりました。 f:id:aimstogeek:20180727181415p:plain f:id:aimstogeek:20180727181432p:plain

※ ちなみにこの状態でアクセス権限がない場合は「403 Forbidden」が返ります。

以上で終了です。
少しでもお役に立てば幸いです~ではでは!



\\『明日のはたらくを創る』仲間を募集中です!! // 919.jp