論説:設計者 vs エンジニア vs 開発者

2019/03/28 09:00

設計者・エンジニア・開発者の違いは、言葉の意味合い的なものであるという人もいれば、ペダンチックだという人もいて、そんな事は考えるだけ時間の無駄だという人さえいます。ですが、私の考えは違って、そこには大きな違いがあると思います。これからその理由をご説明していきましょう。

単語の語源と意味Dictionary.comより)

設計者 (Architect)

建物を設計し、また多くの場合その建築を監督する人。
類義語:designer, planner, builder, building consultant, draughtsman
例:”the great Norman architect of Durham Cathedral”

動詞(コンピューター用語)

設計して作ること。
例:"few software packages were architected with Ethernet access in mind"

エンジニア (Engineer)

エンジン、機械、公共の建造物などを設計、建築、または保守する人。
類義語:designer, planner, builder, architect, producer, fabricator, developer, creator; inventor, originator, deviser, contriver, mastermind
例:"the structural engineer's drawings"

動詞

設計して構築すること。(機械や構造など)
例:“the men who engineered the tunnel”

開発者 (Developer)

何かを開発する人または物。
例:"a property developer"

  • 特定の時間・速度で成長、成熟する人。例:"I was a slow developer"
  • 写真フィルムの現像に使用される化学薬品。

このように、設計者(コンピューター用語)は「設計」「制作」する人、エンジニアは「設計」「構築」する人、そして開発者は特定の時間・速度で成長、成熟する人、ということになります。「開発者 (Developer)」が人の状態を表す一方、他の2つは人の動作を表しています。

各用語に「ソフトウェア」を追加して、ウィキペディア先生が何と言うか見てみましょう。

ソフトウェア設計者とは、ハイレベルな設計を行い、ソフトウェアコーディング標準、ツール、プラットフォームなどの技術標準を決定する、ソフトウェア開発の専門家である。
ソフトウェア設計者 - Wikipedia
https://en.wikipedia.org/wiki/Software_architect

ソフトウェアエンジニアとは、ソフトウェアエンジニアリングの原則を、コンピュータソフトの設計、開発、保守、テスト、および評価に適用する人を指す。1970年代半ばより以前は、実際の職業に関係なく、ソフトウェア実務家は自分自身をコンピュータプログラマーやソフトウェア開発者と呼んでいた。
ソフトウェアエンジニア -Wikipedia
https://en.wikipedia.org/wiki/Software_engineer

ソフトウェア開発者とは、コンピュータソフトの研究、設計、プログラミング、およびテストを含む、ソフトウェアの開発プロセス面に関心を持つ人を指す。似た意味の言葉で、プログラマー、ソフトウェアアナリスト、ソフトウェアエンジニアなどがよく使われる。
ソフトウェア開発者 - Wikipedia https://en.wikipedia.org/wiki/Software_developer

このとおりウィキペディアによると、設計者は高度なデザインを行い、標準を設定し、そしてツールを選びます。その一方、エンジニアと開発者というのは、かなり近いものとされます。設計者がエンジニアや開発者とどう異なるのかを示す2つの例がありますので、この違いをはっきりさせましょう。

もしこれが何であるか知っているなら、あなたにとって良いことだ。
もしこれがどこから来たものか知っているなら、是非とも教えて頂きたいものだ。

エンジニア vs 開発者

Software Engineer Insider」には、この違いについて説明した(短いですが)素晴らしい記事が載っています。言い換えると、狭義の開発者というのは、コーディングに焦点を当てた言葉です。エンジニアというのは、クライアントの要求から最終的なデプロイまで、つまり製品のSDLC(開発ライフサイクル)の「全体像」、および「クライアントの要件」について理解している人を指します。

Jason McCrearyもまた、これを端的に述べています:

開発者
開発者とは、実行する人。彼らの才能はしばしば一つの分野に集中しており、「全体像」は必要とされない。

エンジニア
エンジニアとは、設計し、計画する人。「全体像」を常に意識しており、多岐に渡る才能を持っている。エンジニアは、開発者の役割も担うことができるが、その主な役割は設計である。

結論

私の意見は、上記の他にも多くの対話と、それよりもっと多くの研究により裏付けされ、次のような知見と合意に基づいて形成されたものです:設計者はハイレベルな設計やツールの選択を行う。エンジニアは科学的思考と方法論的プロセスを適用して構築する。開発者は、それが動作するようコンピューターのコードを書く。

あなたはどう思いますか?私はペダンチックの度が過ぎると思うでしょうか?それとも、そんな事はどちらでも構いませんか?あなたは設計者で、他の誰かがあなたをコーダーと呼ぶと侮辱されたように感じたりしませんか?

この記事は、著者の許可を得て翻訳しています。なお、原文はこちらです。

新着ピック  






















新着ニュース

LINE「OpenChat」、トークルーム検索機能の再開を延期 「検索精度を上げるため」

バーチャルタレントがスナックのママに--“場所を選ばない接客”の働き方

リザーブドインスタンス(RI)を間違わずに購入したい! それなら AWS CLI を活用してみよう。 -オペ部だより- | DevelopersIO

ローソン、「深夜に店員ゼロ」を実験へ QRコードで入店、セルフレジで決済 遠隔監視で万引き防止

銘菓「ニコンようかん」、ネット販売終了 「裏の主力製品がなくなる」と惜しむ声

WindowsでAWS CDK(C#)の開発環境を整えてみた | DevelopersIO

TC Tokyo超早割チケットは8月末まで!トヨタの自動運転開発子会社TRI-ADのCEOが登壇決定 | TechCrunch Japan

たこ焼きロボからマイクロモビリティまで竹芝埠頭にロボ集結 | TechCrunch Japan

家事代行のベアーズ、マンションにスタッフ常駐の新サービス「MAUCHI」開始

対象店舗でビットコイン決済するとTポイントを付与--bitFlyerとTポイントが業務提携

野村不動産アーバンネット、不動産売買支援システム「Kimar」を導入

Application Load BalancerのリスナールールによるIP制限 | DevelopersIO

Application Load Balancerのリ...

DevelopersIO / 4時間前


最短2日で物件売却のすむたすが直販を開始--「すむたす直販」が担う中古流通比率の引き上げ

ローソン、深夜時間帯を“無人化”する実証実験--横浜で半年ほど実施

Amazon VPC設計時に気をつけたい基本の5のこと | DevelopersIO

ソニー、学校向けプログラミング学習キット「KOOVベーシックキット」を9月に発売

「Zaif」元運営のテックビューロ、仮想通貨交換業を廃業へ

なぜβ版でスタート? 独自プランは? IIJに聞く「eSIM」戦略

Github ActionsのワークフローへCircleCIのワークフロー流用を試してみた | DevelopersIO

ブランドリセール「RECLO」のアクティブソナー、中国企業などから約36億円を調達

もっと見る
ログイン
会員登録
Register
記事をPICKする

会員登録すると、もっと便利に利用できます。