デザイナーはコードを書くべきか。
このようなデザイナーとフロントエンドデベロッパーのコミュニティを真っ二つに分けるような議論を耳にしたことがあるのではないでしょうか。
フロントエンドの開発はHTMLやCSSなどの従来のフロントエンド言語と、JSライブラリやフレームワークへの移行に分かれています。デザインの議論は役割の定義を超えていて、もちろんデザイナーは自分たちがデザインしている媒体をしっかり理解する必要があります。ですがデザインを構築してフロントエンドデベロッパーと常に一緒に作業するべきなのでしょうか。
私の経験ではデザイナーもフロントエンドデベロッパーも、結局のところはそれぞれが負っているそれぞれの責任と、ひとつの仕事が終われば次の仕事が始まるというサイクルに落ち着くように思います。
過去12年間私はデザイナーとフロントエンドデベロッパーを行ったり来たりして、それぞれの利点と欠点を経験し、双方の議論に巻き込まれてきました。本当のことを言えば、どちらか片方の役割を単体で行なっているときに100%心地よく感じたことはありませんでした。いつも何かがかけているように感じて不思議な気持ちがしたものです。
ウェブサイトデザイナー
プロダクトデザインの修士課程を修了して大学を出た後、私は2007年に初めてのウェブページを作成しました。企業のウェブサイトを一人で運営している、辛抱強い指導者とともに午後いっぱい使って作成したウェブページで、私たちはNotepadを使ってHTMLやCSSを作成してそれをFTPクライアントを使ってデプロイしました。
当時の私の役職は「ウェブサイトデザイナー」(本当はウェブマスターと呼ばれたかったのですが。)でした。この役職はデザインに関するすべてのアスペクトからウェブサイトの構築とメンテナンスまで広範囲に及ぶものでした。このような役割から私のキャリアが始まったことが私がデザインと開発どちらか片方だけやることを好まない理由だと思います。
これだけ広範囲の仕事であったにも関わらず、私にとってはそのころが一番とてもシンプルな時間で、私はその頃にHTMLとCSSを書くことを学べてとても良かったと思っています。JavaScript主導の世界と思われがちな近年のフレームワークは初心者にとっては脅威に感じるものです。
もっと最近のことで言えば、非伝統的な教育を受けた人たちにとってのキャリアの入り口にはブートキャンプがあります。こういった場所では一般的にはフレームワークを多用した開発スタイルを教えており、学生は最も就職に役立ちそうな技術にできるだけ早く慣れることができます。しかしながらこういったトレーニングを受けたことのある人たちから受けた質問を見る限り、基本的なことが分かっていない印象を受けるのも事実です。
私がこれまで与えられた役職は以下の通りです。
・UIデベロッパー
・UXデベロッパー
・エクスペリエンスデザイナー
・ソフトウエアエンジニア
・フロントエンドデベロッパー
・UXエンジニア
・サービスデザイナー
・ユーザーセンターデザイナー
このように役職リストは永遠のように続いていきます。2007年から2010年あたりに私が一緒に仕事をしたウェブサイトデザイナーたちもまた、現在では様々な異なる領域で仕事をしています。デベロッパー、デザイナー、クリエイティブリード、検索エンジン最適化のプロ、プロジェクトマネージャーなどです。
このようにたくさんの役職に分化する状況からも「ウェブサイトデザイナー」という仕事がいかに他の領域と複雑に絡み合っているのかが見て取れます。
フロントエンドデベロッパー
ウェブサイトデザインのすべての領域において技術を習熟し続けることが難しくなるにつれて、私はHTMLとCSSにより照準を絞るようになり、結果的にフロントエンドデベロッパーという役職に流れ着きました。私はまずjQueryを学び、次にJavaScript、そしてGruntやGulpような構築ツール、SVN、Gitようなバージョンコントロールも学びました。
当時は新しいことを学ぶのが楽しくて、すぐに吸収しました。しかし新しいものは次から次に出てきます。私は基本的なJavaScriptを書くことができますが、ReactやAngularといったものに関しての知識は全くありません。当時の私はJavaScriptだけでなく、MySQL、Queries、PHP、Handlebars、Mustacheのような数多くのテンプレート言語の書き方も知っている必要がありました。
ある時点において、私の肩書きはソフトウエアエンジニアになりましたが、それについて心地よく思ったことはありませんでした。デザイナーとして始まった私のキャリアからどこか遠くに離れてしまったように感じていたのです。私が本当にやりたかったのはコードを使ってデザインすること、ウェブサイト上でのユーザーの操作に関係するデザインに責任を持つということでした。個人的な意見としては、これはソフトウエアだけでは難しいう事ですし、少なくとも効率的ではありません。
HTMLやCSSを使うことができればいかなる解像度やデバイスにおいてもアクセシビリティやパフォーマンス全体のエクスペリエンスを管理することができます。私がやりたくなかったのは考えもなしにデザインすることで、それはデザインをフェンスの外に投げ捨てるようなものだと思っています。
デザイナー
残念ながらその頃私はまだフロントエンドデザイナーに多くの可能性を感じることができなかったので、4年ほど前に開発の仕事からは距離を置き、そもそもやっていたデザインの仕事に戻りました。
これまでのところでデザイナーとしてやっていて一番フラストレーションを感じるのは、デザインは芸術の領域のものだという想定とうまく付き合っていかなければならない時です。その想定が成り立つ領域もあるでしょうが、デジタルプロダクトデザインにおいては物事がどのように機能するかということが第一の目的です。
UI/UX
UIデザイナー、UXデザイナー、またはその両方の「ラベル」が私についていた時期がありました。私がやっていたウェブデザインの仕事においてはこの2つの役割に要求されることは似ていていましたが、デザインと構築という2つの仕事の間にはまだ壁がありました。中でもUXに関して私がいいなと思うのは、どのように見えるかではなく、どのように動くかという点がかすかに感じられる点です。
しかしながらユーザーのすべてのエクスペリエンスに関する一切の責任は、たった一人で担うべきではなく、チーム全体で常に念頭においておくべきことです。
インタラクションデザイナー
「UXは皆んなでやる仕事」。インタラクションデザイナーとして政府官庁のために仕事をしていた時に耳にした言葉です。これは、それまで私が経験した中で最もフロントエンドデザイナーという役職に一番近いもので、私がデザインとフロントエンドに対して責任を感じ始めるようになった頃を思い出します。
この役職の役割はデジタルインターフェイスに止まらず、オフラインセクションやユーザーとの通信のフォローを含むサービス全体、エクスペリエンス全体にまで及びます。インタラクションデザインはインタラクションの詳細やコード化したコンポーネントだけでなく、ハイレベルなユーザージャーニーに取り組むことができるので間違いなく私が一番幸せを感じるポジションです。
私の意見では、ウェブのためにデザインをしているのなら、ウェブというものを理解すべきであり、したがった物事がどのように構築されているかをも理解すべきです。インタラクションデザイナーとして働くことでデザインとコード、両方のスキルを高めることができます。そして過程の最後に何かをちょっと付け加えるだけの役割ではなく、デザイン過程にいつでも気楽に出入りすることができます。
肩書きのラインは確かにぼやけている
役職間のラインはぼやけていることは確かです。サービス自体は大規模であるにもかかわらず、インタラクションデザインを、インタラクションを含むその他のデジタルなものから切り離すのは難しい場合があります。デザインが担う役割はユーザージャーニーの隅々までカバーするためにUI /UXから、インタラクション/サービスに変わりつつあるのかもしれません。そしてこの2つの異なる役割もまた、スキルセットだけでなく多くの点で重複しています。