アプリ開発は、喜び1割!イライラ9割!

ゲーム開発会社でスマホのアプリを開発をしている。アプリ開発は、端から見ると楽しそうに見えるが、泥臭いことばかり。しかし、その中にも感動有り。アプリ開発を通して得たことをブログにしてみる。

疲れの殆どは、人とのやり取りが原因

最近、手帳にその日のタスク以外に、時間ごとにメンタル状態を書くようにした。

その結果、1日の9割がイライラ状態であることがわかった。

まさに、このブログのタイトルそのままである(笑)

 

一日の時間を8時間とすると、5時間は人とのやり取り、

3時間位はソースコードを書く。

時間が足りなくて、朝出勤したり土日作業なんてザラである。


ソースコード書いていて詰まったときも、イライラすることが有るが、

じつはあまりストレスでなかったりする。

 

イライラが溜まるのは、人とのやり取りが多かったときだ。

特に、上司とのやり取りが疲れるわ。

それがなければ、作業が進むと思うのだが、なかなかうまくいかない。

 

それにくわえて、ユーザからのクレーム処理、外注さんからの質問の嵐・・・。

ソースコード書くよりより難しい作業である。

 

この根本は、何かに集中しているときに、外部から刺激があるとイラッとする

性格が災いしているようだ。

 

自分の特技は、一つのことなら高い集中力を出せるということかな。

そのかわり、周りはあまり気にしないタイプだ。

 

解決策がわからないとき、仲間が助けてくれることもある。

このときはありがたいと思う。

それが全体の1割だったりする。

まさに、このブログのタイトルどおりである。

 

そんなことをアプリ開発をしながら思ったわけである。

40歳の誕生日を迎えるまでには、好きなことだけ(仕事含む)をしながら過ごして行く。そんなことを思った。

 

手段はいくつか有るので、あとはそれをうまく活用するだけである。

 

 

オフショア開発でコスト大!依頼できるものとできないもの

うちの会社でも、開発コストを抑える目的からオフショア開発を導入することになった。

 

そこで得た教訓は、

開発コストは安い。そのかわり、品質も安い。

だった。 

 

ベトナムの会社にシステムの一部を依頼することになった。

自分が仕様(設計込み)を書いて、ベトナムの会社に実装(PG)を依頼する。

 

返ってきた成果物は・・・・

・正常系すら動かないシステム

結合テストはおろか、単体テストすら実施していない

・依頼したものと全く違う動きをする

 

リテイクを何度か行うが、

求めているものが一向に出来上がってこない。

 

5回ほどリテイクしてやっとほぼ想定通りの動作するようになった。

残った部分は、自分たちで直す。

やりとり疲れたわ〜(´∀`)

 

オフショアに依頼して比較的まともに動いたものは、こんな依頼内容だった。

  1. とりあえず動けば良いレベルのサンプルアプリ(異常系の考慮なし)
  2. モックアップ作成。そこから、自分たちが製品版に仕上げていく
  3. アニメーションの作成。作って欲しいアニメーションは、動画などで共有。
  4. すでに実績があるモジュールの水平展開で対応可能なもの
  5. 仕様書が詳細設計のレベルまで落とし込まれているものがある。

 

依頼してはいけないもの:

  1. 既存システムの不具合の修正。既存のモジュールが壊されるため
  2. 仕様が細かいもの。正常に動いた例がない。
  3. 課金に関係する、ユーザにとって重要な機能

 

共通していることは、最終的に、自分たちで修正して製品版に仕上げる。

オフショア使ったほうがコスト的に安くなるが、品質も安くなる。

その結果、発注者側が不具合の調査したり、不具合依頼を出したりと返って時間が取られる。

オフショアだから仕方ない」と割り切るしかない。

 

 

というわけで、オフショア開発するときは 

  1. (品質を)求めるな! 
  2. 疑え!
  3. (時間を)費やせ!

 である。

 

オフショアは、開発費用は安いが、扱いが本当に難しい。

この先、使っていくどうか検討中である

 

 

 

ユーザ問合せに土日祝日なんて関係ない!当然、無賃残業ですが何か?

休日にユーザから問い合わせがあった。

おれは休みだったため、会社の仕事を全くやりたくなかった。

 

だから、問合せは休みが明けたときにやろうとしていた。

 

同僚とこんな話になった。

 

同僚:土日ユーザから問合せ来ているのに何故対応しない?

おれ:休日だからです。

同僚:ユーザ困っているだろう?

おれ:あぁそうですね。

同僚:(`ε´)(`ε´)(`ε´)

同僚:システムは24時間動いているんだよわかっているか。

   彼(会社関係者)は、いつでも能動的に動いているよ。例え、休日でも。

おれ:たしかにそうですね。

同僚:なんで能動的に動けないんだ?

おれ:休みの日に無賃の会社の仕事なんてしたくねーす。

同僚:ゲーム制作のエンジニアがこんなんで良いのか・・・情熱がないよね。

おれ:( ´ー`)フゥー...休日作業に情熱なんてあるか。もっとやりたいことがあるわ。

同僚:24時間以内にテンプレでもいいからメールを返してくれ・・・。

   せめてそれくらいはやってください・・・。

おれ:(ユーザは本当に困っているのはわかっている)

おれ:(仕方ない)わかりました、そこまではやります。

 

こんな会話が同僚と繰り広げられた。

そんなわけで、休日も会社の仕事があったりするのだ。

大きな不具合がなければ、ユーザからの問合せは、1日に3件ほど。

 

休日は、子供の面倒みたりして意外に時間がなかったりする。

空いた時間は、外部の技術勉強に参加して人脈を広げたり、

ブログ書いたりしたい。

 

 

休日にイヤイヤ会社の仕事をやっていても仕方ない。

会社の仕事のためだけに終わってしまい、時間の浪費である。

 

だからこそ、ユーザ問合せなどで何か得るものがあったら、

ブログにして情報発信することにした。

こうすることによって、「会社のためだけの仕事」終らないからである。

 

社内で技術ブログを書く話が出ているが、おれは反対している。 

ただでさえ、定時に仕事が終わらないのに、

技術ブログを書くようになったら、余計に会社のために時間を使うことになるからだ。

 

技術ブログは、個人で書くなら、会社のためだけの仕事にならないから大賛成である。

 

というわけで、何か少しでも得るものがあったら、ブログ化していこう。

モチベーションの継続のためにも。

 

 

 

一斉に呪いの音楽が鳴り響いた。システム障害発生したらユーザに対して補償が必要か?

突然、数万のユーザに対して呪いの音楽が鳴り響いた。


おきのどくですが
ぼうけんのしょ
きえてしまいました。

 

www.youtube.com

 

 

先日、大規模障害を引き起こしてしまった。

冷や汗もんだった。

その対応に一週間要してしまったが、やっと落ち着いてきた。 

 

f:id:hikage0521:20151017161702j:plain

 

こんな議題が上がってきた。

 

システム障害発生したら、影響を受けたユーザに対してどんな補償が必要か?

宝石(ここでは課金しないと、手に入れることができなアイテムとする)を無条件で付与すべきか?

 

結論を言うと、「必ずしも宝石を付与しなくても良い」のではと思ったのである。

 

日本のアプリのほとんどは、障害が出たらお詫びとして宝石を与えている。

しかし、海外のアプリでは、補償という概念はないようだ。

宝石を与えることは、お金をばら撒いているのと同義だ。

 

障害が発生したときの補償内容を比較してみる 

 

ラブライブ

緊急メンテナンスのお詫びの場合

ラブストーン8個

金額にすると960円(ラブストーン1個あたりの値段が120円)

 

ログレス

もらえる魔晶石は不具合の程度によって違うようだ

私が確認したところでは、1個の場合と10個の場合があった。

魔晶石の数が一番多い場合の金額にすると1200円

(魔晶石1個あたりの値段が120円)

 

ブレフロ

私が確認したところでは、もらえるダイアの数は1つ。

おそらく不具合の程度によって、もらえる量が変わってくるものと思われる。

金額に換算すると120円。

 

おおよそ、ユーザが遊べない不具合ができたとき1000円の宝石を補償してるようだ。

 

1ユーザあたり1000円で、10万人が遊んでいたら1億円か・・・。

ポケモンGOみたいに、1日10億円稼いでいるアプリだと、大した額ではないが・・・。

 

稼げていないアプリで、アイテム補償による出費は痛い。

 

個人的には、宝石をばら撒くのではなく、課金アイテムをある期間だけ格安で

買えたり、課金アイテム半額チケットを渡すなどして補填でも良いと思う。

売上は落ちるが、宝石というお金をそのまま渡すよりは良いと思う。

リピータを極力減らさないようにする。

 

例えるなら、ラーメン屋で言うところのお詫びクーポンを渡すという感覚か。

 

 

課金が減るとサービスの継続が難しくなる。

だから、必ずしも宝石を付与しなくても良いのでは?

と自分なりに結論を出したのである。

 

ユーザが納得するかしないか問わず・・・

 

 

システム障害をやらかしてしまった!ユーザから言いたい放題言われまくった

こんばんは。

先日、ソーシャルアプリのアップデートが終わり、ほっと一息をついていたときに

悲劇は起きた・・・。

 

f:id:hikage0521:20161116212846j:plain

あの〜初期化(ゲームデータ消えた)してしまったのですが何が起きたのですか?

アップデートしたアプリをダウンロードしたユーザから一通の問合せが来た。

 

最初は、何のことかわからなかったが、最初の一通のメールから5分後、

怒涛のように同じような内容の問い合わせが来た。

中には・・・

 

金返せ!

時間返せ!

ふざけるなこのやろう〜

 

ユーザから言いたい放題言われる始末・・・。

こぇ〜

 

中には「ふざけな(`ε´)

という、可愛い怒り方をしているユーザもいるという・・・。

ちょっと笑えたぞ(^-^ )

 

事態は、深刻でこれまでに経験したことがない障害だった。

緊急メンテナンスモード(一般ユーザは、ゲームができなくなる)を発動する。

 

調査の結果、障害の原因が特定できた。 

原因は、あまりにもアホなものなので非公開とします(笑)

 

心の中では、

 

しょうがねーだろ!

毎日、終電近くまで仕事していて疲れていたんだよ!

注意力が切れていてミスの1,2つ余裕で起きるよ!

 

と言い訳したくなりますが、ユーザにとっては関係ありません!

 

 

それから一週間、ひっきりなしにユーザから問い合わせがあり、

落ち着いて仕事できませんでした。

土日も当然のように、ユーザから問い合わせが来て全く休めませんでしたよ。

あたり前のことだが、残業代も支給されません(というか、自分のミスなので残業代請求したいとは思わない)。

 

ユーザに一人一人対応して、 問題が解決すると、

「ありがとうございます」

「これからも楽しませていただきます」

というお言葉を頂きました。

最初は、ものすごく怒っていたのに、しかも、私のミスなのに感謝されるて・・・

このときは、泣けてきました(>_<)

 

クレームメールは、(ユーザ)怒りが頂点のときに受取り萎える。

2,3回ほどメールのやり取りをしていると萎んだ風船みたいに、

怒りのエネルギーが消えていた。

 

対応次第でユーザの態度も、良い方向に一気に変わるもんだと実感した。

 

アプリ開発は、まさに9割イライラ、1割は喜びだった。

 

 

 

 

僕のスマホアプリ開発業務内容

もともとSE・プログラマとして今の会社に入った。

2年前は、設計、プログラミング業務が多かったのだが、ここ最近は、エンジニア以外の業務が多くなってきた。

 

f:id:hikage0521:20161109011745j:plain

 

■プロジェクトの計画を出す

かれこれ1年以上やっているが、工数以内に業務が終わったためしがない。

計画ほど嫌いな業務はない。いろんなプロジェクト管理ツールなど試してみたが、コレだ!と思えるものに出会えてない。

 

■エンジニアの採用業務

過去、数人のフリーランスの方と一緒に仕事したが、意外に連絡が取れない人が多いことに驚いた。僕から連絡しても24時間以内に返信がないことなんてザラだった。

ある日、突然、姿を消す人も多かった。

現在は、一人のフリーランスの方と一緒に仕事しているが、納期に間に合わなそうになったらアラート投げてくるし、進捗も1日1回は報告してくる。

当たり前のこと(連絡が取れること、仕事を進めるための知識を持っている)ができれば、フリーランスでも十分にやっていけるのでは?そんなことを思った。

 

■競合アプリ調査

以外に、骨が折れる作業だ。

僕の場合は、個性が強いのか、人を真似るのが苦手(というよりは、真似そのものを好まない)。特に、競合アプリの機能を真似るのは実は大変だったりする。

非エンジニアは、「答えがそこにあるから簡単じゃん!」なんて言うが、高度な技術を使っていたりして大変なんだよ!

 

■ユーザ問合せ

9割以上は、クレームメールだ。萎える。

おかげでイライラすることなんてショッチュウだ。

しかし、感謝されると嬉しくなる。

 

■仕事を外部にフル

非エンジニアに言われること「外部に仕事ふっているから、楽だよね〜」

楽なことなんてあるか。実装時間は減るが、仕様をまとめたり、説明したり、

成果物の検収したりと、かえってやることが増えることが多い。

 

 

こんな感じで、業務内容が増えたのである・・・。

 

僕もフリーのエンジニアになったときは、役に立ちそうなので、

今のうちに経験しておくかね。  

コミットが億劫、それを解決する手段は?

f:id:hikage0521:20151017165459j:plain

こんにちは。

本日は、コミットについて記事を書きたいと思います。

 

仕事において約束(コミット)をする場面があります。

ここで言う約束とは、納期のこと。

 

納期を守ろうとしても 、お客さんなどから

 「何日までに100%達成していますよね?

なんて言われると、本当に達成できるのかと考えるようになり

コミットできなくなってしまうことが多々あると思います。

 

私も「100%達成していますよね?」なんて言われると

つい考えこんでしまいます。

 

 

ビジネスオーナー向けのセミナーに参加したとき、お世話になっているYさんが、

こんなアドバイスをしてくれました。

 

「コミットできない理由の多くは、できなかったらどうしよう・・・と考えてしまう」

 

その思考が、前に進むことを止めてしまう。

 

では、どのように捉えればよいか。

 

Yさんは、教えてくれました。

 

「できちゃったらどうしよう!!」

 

出来てしまったことをイメージすれば良いのです。

それを明確にイメージできると、(少なくとも後ろ向きに比べれば)前向きに進むことができるとのことです。

イメージを強化するために、達成したイメージの画像を自分の席に置いておくと

良いとのことです。

 

 ちなみに、私の場合は、旅に出るのが好きなので

 

f:id:hikage0521:20151017174841j:plain

こんな感じに行きたい場所を画像化しています。

 

できちゃったらどうしよう!

常に考えていこう。