エンジニアリングをプログレッシブする
見出し画像

エンジニアリングをプログレッシブする

今日はエンジニアらしく、「プログレッシブなエンジニアリングはなんぞや」というのを考察してみます。

一般的に「エンジニアリング」といえば、主に技術分野において、
「課題を解決する、もしくは理想を実現する手段」と定義できるでしょう。
※ 今回の「プログレッシブ」は「課題」ではなく「手段」にかかります(「プログレッシブな課題」についても考えてみたいですね!)

さて、プログレッシブであることを「探求と昇華のサイクル」もしくは「プログレッシブであること=プログレッシブ」と位置づけたとき、「プログレッシブな課題解決」とは何を指すのでしょうか。

エンジニアリング、とりわけ Web サービス・アプリの設計・実装というのは、一般的には数々の定石や既存の技術を組み合わせ、積み上げることによって完成されていくものです。
一見すると実直・地道で、プログレッシブの入り込む隙間もなさそうですが、普段わたしが仕事で大切にしている3点

・ゴールを疑う
・別の世界から概念を借りる
・手段を目的にしない

これらを掘り下げることで、そこに潜むプログレッシブさを探ってみたいと思います。

1. ゴールを疑う

今日のエンジニアに求められる技術や視座は立場や役割によって驚くほど様々ですが、「ゴールを疑うことができるか」という視点は、どのレイヤーのエンジニアにも一定備わっているべきだと考えています。

例えば、Web サービスの開発中に「ログインフォームを作ってください。メールアドレス、パスワードを入力するテキストボックスと、送信ボタンを置いてください」という要件を提示されたとします。

これを額面通りに実装してしまうと、

・メールアドレス欄にメールアドレス以外も入力できる
・パスワードが伏せ字で表示されない(どころか平文で送信されている!)
・パスワードリマインダーへの導線がない

などなど、少し考えただけでも問題が山積みです。

では、この要件を見て設定するべきゴールの一例として、
「ユーザがセキュアに、かつストレスなくログインすることができる」
と設定するとします。するとここで初めて、
「ID に相当する概念は本当にメールアドレスでよいのだろうか?もっとユーザにとって敷居の低いログイン手段はないだろうか?」
などと、課題をブレイクダウンできるようになります。

更にもう数歩引いた視点で考えると、「ユーザがストレスなくサービスを使用することができる」「事業として利益を生み出すことができる」などのゴールが見えてきますね。
逆説的ではありますが、エンジニアリング的な視座はプロダクトやプロジェクトにとって欠かせないものだと思います。

また、ゴールとは反対に、「最初に置いたゴールをこの材料で達成することは可能なのか」と、スタートを疑うことも効果的です。
スタートを疑う=問いを立てることについては、7日目の記事をご参照ください。

2. 別の世界から概念を借りる

セオ商事のメンバーは、得意・興味のある分野はそれぞれに異なりますが、基本は全員オールラウンダーで、一般的なサービスの立ち上げから運用まで、一通り流れや要点を把握しています。

例えば Atomic Design はデザイン設計の方法論ですが、既に広く論じられているようにエンジニアリングとの親和性も高く、フロントエンドに限らず、広範な設計・実装において引用が可能そうです。

実体験でいうと、API Endpoint の設計と UI 設計の勘所がとても似ており驚きました。抽象的ではありますが、どちらも「情報の粒度が揃っている」「全体を通して眺めた際に違和感がない」状態をマイルストーンに置くことが可能です。

また、Web の世界から離れた視点を取り入れることも時には有効かもしれません。エンジニアリングに直接インポートできるものではないかもしれませんが、社長の最近のホットワードは「哲学」と「建築」です :-)

3. 手段を目的にしない

新人エンジニアが陥りがちな罠ですね。「やりたいからやる」をできるだけ排除し、その時々のゴールに必要な行程のみを注意深く選んで実行します。
ただ、やるからには「コストパフォーマンスがよくて楽しい」ほうを選びたいですね!

もちろん趣味の開発では、目的 == 手段は大いに励行されるべきだと思っています。車輪の再発明は楽しいですし、「理屈を知っている」と「実装したことがある」では理解の深さに雲泥の差がつきますし、それが新たな自身の材料にもなってくれます。

---

一見当たり前のことばかりですが、意識するのは意外と難しいものです。

これらを組み合わせ、突き詰め、実際にプロダクトをゴールへと導くことができたなら、胸を張ってプログレッシブであると言えるでしょう。

余談

記事を書き進める上で、「エンジニアリングと料理って意外と似てる?」とはたと気づいてしまいました。

食材ごとに加工や味付けの定石はあるけれど、いくらでも工夫の余地があること。
スタートからゴールまで、材料や行程を積み上げ、趣向を凝らし進めること。
各過程でフィードバックを分析して、次の一手を決めること。
手段を目的にした研究は楽しく、それが自身の血肉になっていくこと。

……似てる!

そしてそのサイクルが「チョコレート+ブラッドオレンジ+マジョラム」なんていうめちゃんこプログレッシブな物体を生むんですね。最高!

というわけで、「次回はプログレッシブな料理」について書いてみます。

---

セオ商事のプログレッシブ Advent Calendar 2017 9日目でした。

この記事が気に入ったら、サポートをしてみませんか?
気軽にクリエイターの支援と、記事のオススメができます!
株式会社Cake.jpの中の人。日本もちもち協会代表。ハッシュタグ #きょうのもちもち でもちもちの啓蒙中。 毎月10日は #もちもちの日 !