Webデザイナーもいいけれど、Webエンジニアにも興味がある…自分はどちらが向いているか迷っている方に、アドバイスします。
WebデザイナーとWebエンジニアの定義
まず、WebデザイナーとWebエンジニアがどのような仕事をする職業なのかを共通認識するために定義しましょう。
- Webデザイナー:Webサイトのデザイン、HTMLやCSSでのコーディングが中心
- Webエンジニア:PHPやデータベース等を利用したプログラミングが中心
Webエンジニアは言い換えるとWebプログラマーとも言えますね。
ただ、厳密にはWebエンジニアとWebプログラマーで違う仕事であるという場合もあり、その場合は、WebエンジニアはWebプログラマーよりも前段階の仕事(大枠の設計をしたり、問題解決や改善策を考えるなど)をするという感じです。
WebディレクターとWebデザイナーの関係に近いかもしれません。
どちらにしても、Webエンジニアでプログラミングができないという方はほぼいないので、ここでは分かりやすいようにWebエンジニアはプログラミングを中心とします。
WebデザイナーとWebエンジニアのイメージ

どのような職業かを定義しましたので、その上で私が思い描いている各々の職業のイメージは極端に言うと、Webデザイナーは「画家」、Webエンジニア=Webプログラマーは「数学者」です。
右脳と左脳の違いというようにも感じています。または、感性と論理の違いとでも言えましょうか。文系と理系の違い、というのも近いかもしれません。
ですので、タイプが全然違うというか、正反対、180度逆である、というのが私の印象です。
向き不向きの解説
WebデザイナーとWebエンジニアのイメージをお伝えしたところで、各々の向き不向きについて解説します。
Webデザイナーの場合
Webデザイナーのイメージは「画家」であると述べましたが、Webデザイナーに向いている方というのは、大して絵を描くことができないとしても、絵を描くことそのものに抵抗を感じない人だと思います。
というのも、Webデザイナーは視覚で分かるように表現するのが仕事なので、思い描いているものを絵で表現するという行為そのものに抵抗があるならWebデザイナーは難しいと思うんですよね。
一応補足ですが、別にイラストやキャラクターを自在に描けるような画力は無くても大丈夫です。もし描ければそれはそれで他のWebデザイナーよりも幅の広い仕事ができますが、私もそこまでの画力はありません。
ただ、子どもの時から絵を描くことは好きでしたし、ちょっとしたイラストを仕事でも描いたことがあります(印刷会社時代に公共団体の冊子の表紙イラストを描いたこともあります)。
お客様や仕事の関係者との打ち合わせの際にも、「このようなデザインにしたらどうか」など紙やホワイトボードに書きながら打ち合わせをしたりします。
上手い、下手の前に、手で絵を描く、図を書くという行為自体に抵抗感があるなら、Webデザイナーには向いてない可能性があるので、よく考えた方がいいです。
Webエンジニアの場合
Webエンジニア(=Webプログラマー)のイメージは「数学者」であると述べましたが、ゼロかイチかをはっきりさせ、明確な答えを理詰めで追求できる人が向いています。
HTMLやCSSでも言えることですが、プログラミングはたったの1文字でも間違ったらまともに動作しません。
私が若いころに出会ったプログラマーさんの、
「プログラムは思った通りに動かない、(コードを)書いた通りに動くんだ!」
という言葉が今も強く印象に残っています。
デザインについては感覚でなんとかなることもありますが、プログラミングは感覚ではできません。なんとなく出来る場合もあるかもしれませんが、いずれそのプログラムは破綻するでしょう。
プログラムを正確かつスピーディに動作させるために、文字だらけの世界で戦うことに抵抗が無いか、確認してみてください。
余談:Webデザイナーのプログラミング力について
WebデザイナーとWebエンジニアは全くタイプの異なる仕事なので、「どっちが向いているか」と、検討する余地はあまり無いのではないかと考えているほどです。
デザインとプログラムが高いレベルでできるという人は少なく、両方できる人はとても優秀な人です。大体のデザイナーはプログラミングができないですし、逆にプログラマーはあまりデザインができません。
私もデザイナー寄りなので、ゼロからの大掛かりなプログラミングは厳しく、サンプルコードなどの「ありもの」から改造するくらいのスキルしかありません。
しかし、デザインもプログラミングも相当のレベルを求められる状況というのはほとんどなく、ある程度のシステムになれば、デザイナーとプログラマーで分業するのが大半なので、デザイナーの方が向いているという人は、デザインスキルを高めつつ、プログラミングの基本を学ぶようにすれば、大体の仕事はこなせるでしょう。