ウェブサイトやアプリなどといったサービスはディレクターが作成した仕様書をエンジニアが実際にコーディングして作り上げます。
ある機能を実装したいと思った時にエンジニアに工数の見積もりを出してもらって、なんでそんなに時間かかるの?と思ったことはないでしょうか。
また、あの有名なスティーブ・ジョブズは、優れたプロデューサー、ディレクターである一方、優れたエンジニアであったということが知られています。
優れたサービスや製品を作るためには、チーム全員がプログラミングを理解していることが非常に重要です。
以下にそう考える理由を述べていきたいと思います。

サービスの質が向上する

これが一番大きなメリットだと感じることですが、ディレクターがプログラミングを理解していると、「エンジニアが作りやすいサービス」になるということ。
サービスを作るときには、まずプロデューサーやディレクターがサービスの内容を仕様書に落とし込み、デザイナーが見える形にして、最後にエンジニアが実際にサービスを組み立てていきます。
その仕様がエンジニアが作りやすい仕様になっていると、同じ機能を実装する場合でもより実装しやすいものになっていたり、エンジニアが仕様を見て理解しやすい仕様書を作ることができます。
そうすることで開発する時に無駄な作業が減ったり、開発自体の工数を減らすことができます。

私の体験でも、プロデューサーやディレクターが頑張って作り上げた仕様書をエンジニアに渡すと「これ本当に作る気ですか」といったような場面を何度も見てきました。
そういったチームはたいてい、リリース日を延ばすことになったり機能を削ったりして、サービスをリリースすることになります。そんなことをしていてはいいサービスは作ることができません。

エンジニアが作りやすい仕様にしておくことは、良いサービスを作る上で不可欠です。

効率が向上する

ディレクターという立場の人がプログラミングを理解していた場合、チーム全体の効率が向上します。
例えばあるデータをデータベースから取得したいような場合に、SQLが書ける人だったらすぐに欲しいデータを取得して分析することができます。
そうでなかった場合、エンジニアにお願いしてデータを出してもらって、少し違うデータが見たい場合はまたお願いして…。といった状況になります。
その度にエンジニアは作業を中断しなければならず、ディレクターもエンジニアに依頼する時間と、データの抽出を待っている時間が生まれ、無駄が発生してしまいます。

サービスを実際に作るのはエンジニアです。そのエンジニアのリソースを別のことに使ってしまうと、サービス自体を作る時間がどんどん減ってしまいます。
エンジニアはサービスを実装することに全リソースを費やし、そのほかの細々した作業をディレクターが行えるようになると、
チーム全体で作業の効率が向上し、スピード感を持って開発・運用を進めることができるようになります。

ディレクターとしての評価があがる

最後に蛇足ですが、ディレクターがプログラミングを理解している場合、他のディレクターと比べると高い評価を受けることが多いと感じています。
それは上記のようにサービスの質が向上したりチームの効率が向上したりすることもそうですが、
ディレクターはプログラミング能力が期待されていない分、プログラミングができると「そんなこともできるですか」ということがたまに発生します。

また、エンジニアとしても実装するときに評価されていないプロデューサーやディレクターからの依頼だと仕様に疑問や不満を持ったりします。
これはあまり表面化していないことも多いですが、エンジニアは誰から依頼されたものかということでモチベーションが変わるものです。
時間をかけて作ったサービスが失敗に終わることはどのエンジニアも望んでいないでしょう。エンジニアのモチベーションはサービスの質に直結します。
ディレクターとエンジニアの信頼関係を構築する上でも、「デキるディレクター」であることは非常に重要です。

おわりに

このように、ディレクターがプログラミングを理解しておくことは非常に重要です。
しかし、中途半端な知識で分かったような口でエンジニアに指示を出したりすることは気をつけなければなりません。
あくまでエンジニアよりプログラミング能力は劣っているので、細かい実装方法などはエンジニアに任せるようにしましょう。

これからプログラミングを始める方は、オンラインの無料サービスがおすすめです↓

オンラインで学べる無料プログラミング学習サイト比較