あるある過ぎますね。
私はもう諦めてるんですが、なぜ諦めたか、致し方無いと思う事情について書いてみます。
- 問題となる事象
- この件でエンジニアが困る理由
- 一緒に仕事するデザイナーがプロジェクトによって異なるから
- デザイナーに覚えることが多すぎる
- デザイナーにSEのポジションが居ない
- そもそもシステムのUIが難しい
- プロダクトを理解する暇がない
- プロジェクトメンバー全体の要件定義レベルが低い
- webやアプリに興味がない?
- 対策はあるか?(失敗例)
- 誰に責任があるのか??
- エンジニアができる対策(対処療法)
- 追記:外部設計者不在問題
問題となる事象
- 状態について考慮してくれない(Empty、最大文字、横幅可変など)
- 端末の差を考慮してくれない
- プラットフォームの差(文化)を理解してくれない
- 素材画像のサイズが違う
- バージョン差を考慮してくれない
- 類似サービスのUIを参考にしてくれない
- 実現不可能、あるいは非常に難しいUIを作ってしまう
- ワイヤーの意図を読み解けていない
- 公式ガイドラインを読んでくれない
こういうやつです。
もちろん全員ではありません。ちゃんとされてる方も居ます。
この件でエンジニアが困る理由
大抵の場合、実装するに至ってから不備に気づくためです。
デザインのリテイクをすると時間が減りますが、大体それはエンジニアが巻くことになります。あとデザインバグか、ワイヤーバグか、誰の意図か、要件定義に戻すものかなど考えることが増えます。
諦めた理由はここから。
一緒に仕事するデザイナーがプロジェクトによって異なるから
ちゃんとやってもらっても、次のプロジェクトでは大体別の人と組むことが多かったためです。これは受託会社であるあるだと思います。
フリーならもう一期一会レベルです。
自社サービス会社ならもう少し事情が変わるかもしれませんが、例えばデザイナーが10人居たら、10人に対して改善要求しなければなりません。
こうなると、リーダー同士、上司同士の話し合いになります(難易度が高い)
最近は誰かに期待するのではなく、いかに最短で後で困らないように要求を伝えるかについて考えています。アプリのデザインのパターンならデザイナーより知ってるくらいを目指しています。
デザイナーに覚えることが多すぎる
PCサイト、スマホサイト、アプリ(iOS、Android)、その他色々。
ひょっとしたら紙媒体の仕事もされてるデザイナーかもしれません。広告バナーやらポスターやらもあるかもしれません。
そんな人が自力で全媒体のデザインを覚えるのは中々厳しいです。
エンジニアなら例えば、PCサイトが得意な人・フロント専門・IOSアプリ専門の人、みたいに業務が分かれているのですが、デザイナーの業務が多岐に及びすぎています。
じゃあ何でそうなってるのかと言えば、1個の作業工数が小さいからだと思います。
エンジニアが1人5人月、全体で20人月みたいなプロジェクトで、デザイナーの工数が1.5人月くらいだったりしますよね。
それなのにディレクターやエンジニアにやんや言われるので、目の前のタスクで手一杯になってることが多いと思います。
デザイナーにSEのポジションが居ない
- 1画面の見た目
- ボタンなどの挙動
- 画面のフロー
- 状態による見た目の変化
- あるシーンのユーザーの状態
きちんとデザインしようとすると、どんどんプロダクトの深いところまで理解しなければならなくなります。しかしその深い部分を理解する専門の人が居ないことが多いです。
エンジニアで言うとコーダーばっかりみたいな状態です。
じゃあ何でそうなってるかと言えば、やっぱり同じ理由で覚えることが多すぎる+工数が足りない。だと思います。
SEのポジションが居ないので、要件定義の場にデザイナーが居ないということも多いと思います。アレおかしいですよね。
そもそもシステムのUIが難しい
そのUIが実現可能かどうかについてなんて、私も全て即答できるか怪しいです。
デザイナーなら尚更でしょう。
例えばAndroidとiOSのデザイン差とか、デザイン差はあるけど文化的に許容されてるとか、どこまでわかるでしょうか?
(フリーになってから出会う方は逆に超無難なUIにしがちです)
プロダクトを理解する暇がない
上記で述べた様々な複合要因で、理解する暇がないです。
暇があっても、デザイン的な観点での理解+システム的な観点での理解、両方するのはかなり骨が折れるはずです。
多くのエンジニアが要件定義できないのと同じです。
プロジェクトメンバー全体の要件定義レベルが低い
PO(顧客、社長など)や、ディレクター、エンジニアの経験値が浅いと、考慮漏れが多く出ますし、システム上は正しいことを言ってもPOがNGを出すかもしれません。
エンジニアの唱える呪文の一つに「それ工数増えますよ」がありますが、デザイナーがそれを言えるかという問題もあります。せっかく優秀なデザイナーが「それ工数掛かるのでは?」と言ってもエンジニアが「できます!!!」と言って背中から刺すかもしれません。
webやアプリに興味がない?
これは邪推かもしれませんが。
例えばアプリだったとして、世の中のアプリを何個知ってるかランキングを作ったとすると。
ディレクター・PO > エンジニア > デザイナー
だと思います。
エンジニアも大概ですが、デザイナーもあまり興味がない人が多いのではないでしょうか?(やっぱりUIって楽しくないんですかね??)
対策はあるか?(失敗例)
対策はあります。特に同じ会社にいるならば、きちんと情報共有する仕組みを作り、1年くらい頑張れば改善できるかもしれません。
ですが、ドライな言い方をすれば「あなたが対策をするべきか?」とも言えてしまいます。そういうのは本来上司の仕事です。ただし上司はそれが問題だと感じていません。(ああ面倒くさい)
過去に対策を打ったケースを見たことがあるのですが、どうなるかと言えばまず、エンジニアチーム側からデザイナーチーム側へ「自分らで覚えて?♡」という要望が飛びます。しかしデザイナーは忙しいのでだいたい失敗します。
次に起こるのはエンジニアチーム側から「アプリのデザインとは」みたいな勉強会を立ち上げるみたいなアイディアです。ですがエンジニア自身も、そのプラットフォームのデザインをフワッとしか理解できていなかったりするのでコレも破綻します。あと基本的に興味がないです。エンジニアも結局デザインに対してテンションが低すぎます。
そして次に起こるのが「デザインする際のチェックリスト」ですが、チェックするのが結局エンジニアになっている+チェックリストの定期メンテナンスが必要。で、これまた忙しいエンジニア達も投げてしまいます。形骸化しがちです。ディレクターはもっと忙しいので無理です。
じゃあ上流側を抑えて、指示が出るときに担保すればいい!となると思います。
そして始まるのが「ディレクターをどう教育するか」です。問題の難易度が悪化しています。
誰に責任があるのか??
私は特にどの役割にも責任がないと思います。
つまりタスクお見合い状態で、仕事フロー策定のミスです。気づいた人がやるか、最終的に実装できないエンジニアが担保してます。
強いて言えばUXデザイナーにそれをやってほしかったんですが、何か別の何かになってますね。
参考
どうしてこういう穴が発生するかと言えば、Webやアプリなどの技術進歩・常識の刷新が早すぎるからではないでしょうか。デザイナーのSEみたいな人が成長する暇が無いのですし、そもそも役割の定義が業界全体で不足しています(あと、皆成長したら良い会社に行ってしまうので)
そのため、エンジニアでもディレクターでも、デザイナー、役割に関わらず興味のある人だけがポツポツと詳しくなって、その人がボランティア的に残業でなんとかしていて、全体としては成長度が足りないみたいな状況にあるんだと思います。これはデザイナーだけの問題ではないです。
エンジニアができる対策(対処療法)
- 自分が要件定義に入っていく
- 良いデザイナーと会ったら仲良くする
- どんなデザインが来ても対処できるようにする
- ミニマムで要求を伝える
- デザインのリテイク工数を抑える
- レベルの高い良い会社に行く
- 怒る(仕様とデザインを固めろと全部突っぱねる)
後ろ向きです。
私も尊敬できる方と懇意にしたいですが、そのためには自分自身がレベルアップするしか無いかもしれませんね。
成功するプロダクトには大体すごいデザイナーの方が絡んでますし。
追記:外部設計者不在問題
この件を「フロントエンジニアとデザイナーのインターフェイス問題」とか「ディレクターの領域」と考えている方が居るようです。
もちろん、特にディレクターの仕事領域が不明確なので組織に依るんでしょうけど。
クラス設計のように組織設計を考えると、これは設計者不在問題の一つになるのではないかと思います(人手不足)
大昔に似たこと書いてました。
ITサービスを作るときに漏れる人材・役割は? - IT業界で気づいたことをこっそり書くブログ
個人的に、ディレクターはMVCでいうところのCにあたり、実際の知識を詰めるような役割ではなく、それぞれの役割のインターフェイスにするのが良いと思っています。
そうしないと、ディレクター(ちゃんと言えばプロジェクトマネージャー?)のやることが膨大になってしまいます。もちろん、PMを用意した上でディレクターが外部設計要員として存在するチームは別です。
ですがそうでない場合は上図のようになるでしょう。今回漏れていたのは外部設計〜デザイン設計の領域です。
ここはタスクのお見合いが発生しがちな箇所で、なぜそうなるかと言えばスキルを持った人が稀だからです。システム側も外部設計ができる人は少ないんですが、デザイン側はもっと少ないという状況です。
この穴によって発生する問題としては
- そこのボールを拾いに行った人が死ぬ
- そのタスクを認識してないから工数見積が甘い→皆で死ぬ
この領域をカバーする人として、UXデザイナーや、プロダクトマネージャーという役割が海外で登場していると思いますが、イマイチ上手く定着していないような気もします(観測範囲の問題?)