エンジニアがデザインを学ぶ意義

大木尊紀氏:「エンジニアがデザインを学ぶことの意義とその応用」というタイトルで発表させていただきます。

自己紹介ですね。大木尊紀と言います。株式会社FOLIOでフロントエンドエンジニアとして働いています。株式会社FOLIOの紹介をザックリすると、オンラインの証券会社で今年の年始ぐらいに松本人志さんが広告に出ていたので見たことある人がいるかも知れないです。

最近はLINEさんと一緒にやっていて、みなさんLINEのアプリから利用できる「スマート投資」というサービスがあるんですが、その裏側の開発や「ワンコイン投資」という低額投資サービスの開発をしています。

フロントエンドエンジニアとデザイナーは絶賛募集中ですので、みなさんぜひ応募してくれるとうれしいなと思っています。

僕の技術スタックは、会社でReactを書いているのと、Web Componentsが好きでPolymer Japanというコミュニティの運営をしたり、自分で本を書いたりしています。あとはFigmaとウェブフォントが好きでいろいろと活動しています。

FOLIOで扱っている商品はコーポレートサイトで紹介されているので、よかったら見てみてください。

僕の略歴なんですが、大学は航空宇宙工学を専攻し、その次にディレクターになり、フロントエンドエンジニアになりました。今4社目です。

インターフェースデザインのポイント

今日はデザインの話をしたいと思います。それでデザインの話をする上でデザインという言葉がブレがちなので今日話すことについて揃えておきたいなと思います。

デザインの定義なんですけど、これは原研哉さんの『デザインのデザイン』という本に書いてある一節なんですが「ものづくりやコミュニケーションを通して自分たちの生きる世界をいきいきと認識することであり」とあります。ちょっとよくわからないですよね。

デザインって、こういうよくわからない言葉であるというイメージを持ってる人が、エンジニアの人とかは多いと思うんですが、語源はラテン語で設計を意味する言葉から来ています。デザインというものはグラフィックデザインのことを指すわけではないです。グラフィックデザインという領域もありますが、これはそのうちの1個です。

デザインという中にはいろんなジャンルがあって、WebデザインやDTPもそうだし、建築のデザインもそうだし、いろんな要素が含まれているので「デザインという言葉を安易に使うのは危険ですよね」という話がありまして、今回話をするのはその真ん中にあるインターフェースデザインの話を中心に今日はやっていこうかなと思います。

インターフェースデザインというのは何か? というと、インターフェースとは、今みなさんPCを使っていると思いますけど、その画面もインターフェースですし、キーボードもトラックパッドも全部インターフェースです。今日会場に入ってきた扉にあるドアノブも、大きく言えばインターフェースであって、物体と人間の接点になるところがインターフェースなんですね。

僕らはWebとかのプログラムを書いている人間なので、接する物体はコンピュータです。そして「コンピュータの性質をどのように人間の活動に結びつけていくのか」というところがインターフェースデザインです。

なので、UIデザインと言われているものはその中の1つであって、全部ではないです。あとユーザビリティの話もそうですね。その他いろいろありますが、インターフェースを作るということが僕らの考えているデザインであって、その一つひとつの小さいところにフォーカスをするのはあまり意味がないですよね。

あと、デザインという言葉を使うと「感性の話」という認識がエンジニアの人の中で多かったりするんですが、学術的な視点もけっこうあります。インターフェースデザインにおいては、認知科学・心理学・人間工学といった学術的な視点もかなりあって、論文とかまとめられていますし、専門書とかもたくさん出ています。こういうことを学ぶことも非常に重要です。

この章のまとめは「インターフェースデザインというのは至極論理的」です。「学術的分野になるぐらい論理的であり、感性の世界とは違いますよ」というところを頭に置いて話を聞いてもらえるといいかなと思います。

デザインを学ぶことが大切な理由

「なんでデザインを学ぶことが必要なのか?」というところで、これは僕なりの理由なので僕じゃない人は違う理由を考えてるかもしれないですが、僕の理由を3つ挙げていきたいと思います。

1つ目が、作っているもの、たぶんみなさん事業会社でプロダクトを作っていると思うんですが、そのプロダクトが「良いものなのかどうなのか」を判断する基準を持つためにデザインを学びましょう。ただ、言われたものを作るのはエンジニアの仕事としてあまり良いものではないと思います。

「自分が良いと思っているものを良いと思う実装で作る」というところがエンジニアとして目指すべきところだと思います。その基準を持つためにデザインを勉強して、これをもとにユーザにとって良いものなのかを考える。

僕の話をすると、制作会社でフロントエンドエンジニアをやっていました。そのときはそんなデザインの話を知らなかったので、デザイナーの人が「これ作ってよ」と言ったものを作っていたんですけど「本当に良いものなのかなぁ」と疑問に思っても、デザインがわからないので、それを飲み込むしかないと。ということがすごく悔しかったです。

なので、悪いと思ったときはちゃんと根拠を持って「こういう理由で悪いです」と。良いと思ったら「こういう理由で良い」という根拠を付けるところがほしいなと思ってデザインの勉強を始めたということですね。

デザインを学ぶ理由の2つ目は「何を作るべきか」を考えるためです。順調に進んでいればいいんですが、プロダクトを作る中で行き詰ってきて「このプロダクトで何を今後作っていけばいいのか」を考えるときにエンジニアリング的な視点からもいろいろパフォーマンス的な問題もあって「こういうものを作るべきだ」となります。

そこにデザインの要素も足して「インターフェースとしてこういう機能が足りてないからほしいよね」みたいな話ができるといいよねと。

僕は今FOLIOで投資初心者向けのサービスを作っているんですが、あまり前例がないです。なので「何を作るべきなんですか? 何が必要なんですか?」という議論を毎日繰り返しています。

僕はエンジニアとして意見もしますが、そこにエンジニア的な視点のほかにデザイン的な視点を加えると、より説得力が増すのがあって、僕はそこはすごく重要な点かなと思っています。しかし頭でっかちになってはいけないので、コミュニケーションを取ってチームの中での最適解というのを探していくのが大事かなと思います。

最後の理由は「デザイナーとビジネスサイドの人とのコミュニケーションを円滑にするため」ということです。

これはみんなわかっていると思うんですけど、スライドのような感じになって、ビジネスサイドとデザイナーが話をしているところにエンジニアが入っていって「ん? 何の話してるんですか?」みたいな感じになる。

よくあるシーンだと思うんですけど、これは共通言語がないからこうなる話で、デザインを勉強しておけばその共通言語があるのでコミュニケーションを取りやすく話です。

前職でやっていたとき、立ち上げ期だったので、いろんな仕様が流動的になって「わー!」ってなっていたんですが、そういうときにデザイナーがどういう話をしたいのかという意図がわかると、無駄なコミュニケーションが減って関係が良くなるよねという話があります。

デザインを考えることはチーム全員の仕事

それで「どんなキャリアがありますか?」。エンジニア、デザインエンジニア、PdMと。デザインエンジニアの話は、最近いろんなところでされているのでいいでしょう。

あとはPdMになる道もあるかなと思っていて、実装もして、デザイン的視点もあってプロダクトをより良い方向にマネジメントしていくところでPdMになるのはありだなぁと。

僕の会社のFOLIOではフロントエンドエンジニアからプロダクトマネージャーになっている人が多いので……みたいな感じですね。

でも、「デザイナーじゃないから仕事で使う機会ないよね」「デザインはデザイナーの仕事なんだから口を挟むなんて……」「どうやって勉強をするか」「機会がないよね」という人は、機会は自分で作りましょう!

プライベートで何か作ってもいいし、仕事で作ってるものがあるわけですから、いわゆる改善の提案をしてみるとか、ミーティングで一言発言するだけでもぜんぜん違うと思いますし、デザイナーと「このUIについて話したいんですけど」みたいな会話をしてみるというのもありだと思います。

なので「機会がないよ」と言っている人は自分で作れないだろうと思っていて、僕もあまりこういうことを言わないように自分でするようにしています。

デザインはデザイナーの仕事ではなく、チーム全員の仕事であると僕は思っていて、今FOLIOで仕事をしているときとかもかなり気を付けています。イニシアチブを取るのはデザイナーですが、デザインについて考えることはチーム全員の仕事であると。

なので仕事を押し付けないためにも、デザイナーがすべて正しいわけではないので、デザイナーがデザインしたものについてレビューする立場もエンジニアにとって、かなり重要なポジションかなと思います。

勉強する方法として僕がよくやっているのは3つです。本を読みます。あと個人で何か作ります。僕雑誌とか名刺とかを個人で作ったりしているんですけど、そういう個人で何か作ることは大事かなと思います。

あとデザイン批評するのはいいかなと思っています。既存のデザイン、何か他のサービスでもいいし自分の会社で作っているものでもいいんですけど、良いところとか悪いところとかを「じゃあなんで良いのか? 悪いのか?」というところを自分で批評してみる。文句を言うのとは違って、それにちゃんと論理的な根拠付けをするというところが必要かなと思っています。

まとめなんですが、「みんなデザインしよう!」ということで発表を終わりたいと思います。ありがとうございました。

(会場拍手)