ブログ

Blog

デザインエンジニアって何?

2022.08.09

株式会社キングポケットというアプリの受託開発の会社でデザインエンジニアをしている出久根(いずくね)です。今日は自分が普段どのようなことをしているのか。デザインエンジニアってどういった仕事なのかについて、個人的な解釈を含めて書いていきたいと思います。

デザインエンジニアとは何か

最近デザインエンジニアという言葉を耳にすることが多くなってきました。デザインエンジニアという表現を使わなくても、UIUXエンジニアやUXエンジニア(UXE)といった呼び方があります。どれも。エンジニアリングだけではなく、デザインやビジネス面についても知識を有している必要がある仕事かと思います。ただ、世間一般的な解釈ですとデザインもできて開発もできる人を指すことが多い気がしております。

実は、今も正確な定義は決まっておらず、企業によってデザインエンジニアの位置付けが異なっているように見えます。ここでは私なりのデザインエンジニアという職業の解釈を述べさせていただけたらと思います。デザインエンジニアが本領を発揮するタイミングは幅広く、さまざまなフェーズにおいて意見が求められます。アプリ開発の流れは「企画」→「デザイン」→「開発・テスト」となるわけですが、ほぼ全てのフェーズにおいて参加することになります。

企画段階

企画段階では主に「ターゲットを誰にするか」「どのような機能にするか」「プロモーションをどうするか」を一つずつ決めていきます。ここでのデザインエンジニアの仕事は「お客様の予算や納期から実現可能な機能を見極めること」と「そしてそのアプリが世の中に受け入れられるかの判断」になります。

デザイン段階

デザイン段階ではアプリのUIUXデザインを作っていきます。お客様が求めている機能を人間中心のストレスの無い設計を心がける必要があります。ここでのデザインエンジニアの仕事は、デザインの設計も行いますが、一番は「エンジニアリングの視点を持った意見を述べること」に尽きると思います。デザインによっては開発に時間がかかるものや、そもそも実現不可能な設計になることもあります。実は、ここがデザインエンジニアの存在が最も重要な場面なのでは無いかと思います。

開発・テスト段階

開発・テスト段階では実際にアプリのプログラムを書いていく訳ですが、ここでもデザインエンジニアの仕事はあります。それは「デザイナーが作ったデザインでは伝わらない細かい設計の解釈」です。デザインは基本的には画像のような形で提出されるので、アニメーションやインタラクションデザインに関しては指定が無いことが多いです。このようなデザインデータだけではわからない部分を補って開発するのもデザインエンジニアの仕事であるといえます。

各フェーズのデザインエンジニアの役割について述べてきましたが、一番重要なのはお客様にとって最適な提案をすることなのです。実現不可能なデザインを設計しないために、バグの多いシステムを作らないために、デザインエンジニアというポジションがあるのでは無いかと考えます。

デザインエンジニアは必要なのか

やっぱり、お客様にとって最も重要なのが「予算」と「納期」です。デザイナーがあれやこれやといろいろな機能を追加してしまったおかげで、開発工数が膨大してしまったというケースをたくさん見てきました。デザイナーは基本的にUIUXという観点からしか提案を行わないので、開発にかかる工数(時間)に関しては知識がありません。ある意味これはどうしようもないのですが、エンジニアは良い迷惑なのです。予算にも限りがあるため多少工数が増えてもエンジニアには勉強(値下げ)してもらうしかないです。
このようにして作られたアプリは基本的に品質は低くなりがちで、デザインを完全に再現することができず、「クライアント」「デザイナー」「エンジニア」の3者ともに悲しい結末になります。

デザインエンジニアが間に入ることで、このような悲しい事態を少しでも減らす工夫ができます。
デザイン段階からある程度の開発工数を見積もれるため、建設的なデザインをお客様に提案することができます。また、OSSとして提供されているライブラリを用いることで工数を削減できる場合があり、予算を安く抑えることができるためお客様に喜んでいただけるような提案ができるようになります。OSSとはオープン・ソース・ソフトウェアの略で世界中の開発者が無償で公開しており、利用や改変することが可能なソフトウェアです。

デザインエンジニアとUX

特にアプリに関してはUXの部分もとても重要です。
ユーザーがアプリを使ってみて、使いやすいと感じてもらうには画面の表面的なデザインだけでは実現できません。これをユーザビリティと言います。このユーザビリティの軸を国際標準化機構では「有効さ」「効率」「ユーザの満足度の度合い」の3つがあります。

有効さ

「有効さ」は「ユーザが達成したい目標に正確に辿り着けるか」というものです。例えばメモアプリを例に出します。「新規メモを追加したい」という目的があった場合、それを行うことができるかが指標になります。

効率

「効率」は「ユーザが達成したい目標に対してどれだけ時間がかかったか」というものです。メモアプリで「メモの削除」をしたい場合、何回もボタンを押さないといけないのは非効率です。そこをユーザがなるべく正確に簡単に目標を達成できるようにする指標です。

満足度

「満足度」は「ユーザがアプリを使う上で不快感をなさ」を表していますボタンを押した時のレスポンスが遅いだけでも不快感を与えかねません。


この三つのうち「有効さ」「効率」はデザイナーに求められるスキルですが、「満足度」に関してはエンジニアの視点が必要不可欠です。みんなが求めるようなサクサク動くアプリを開発しようと思ったときに、デザイン段階からパフォーマンスを意識しないといけません。特に最近ではSPAなどのフロントエンド側の技術が台頭してきて、昔よりも特に重要になったと思います。それをデザイナーに求めるのは難しく、エンジニアがやってもらおうとすると業務範囲が煩雑になってしまいます。ここから、デザインもテクノロジーもわかるデザインエンジニアの必要性がわかると思います。

私はアプリ開発の初期段階から参加して、デザインとテクノロジーの両方の知見を提供するお仕事をしています。また、開発にも参加して実際のコードを書くこともあります。結局、デザインエンジニアって何でも屋さんなところがあると思いますが、それゆえに広い視野を持った職種でもあるかなと思います。













出久根 芳樹
株式会社キングポケット 取締役COO / AIエンジニア / デザイン・開発・データ分析の全般を広く担当 / 東京理科大学卒
プロフィール