今回は、エンジニアにおけるビジネス観点についてお話ししようと思います。

エンジニアはビジネスのことを考えている人が少ない、顧客とのコミュニケーションを嫌がる傾向がある、などと言われています。

今まで一緒に働いてきたエンジニアの中にも、開発チーム以外の人とは、コミュニケーションを取らない人や、営業チームに確認を取る作業が苦手で、なかなか確認を取らない人もいました。

そもそもエンジニアにおけるビジネス観点とは、具体的にどのようなことを言うのでしょうか。

Subroqの考えるエンジニアにおけるビジネス観点は、「顧客のメリットを一番に考える」ことです。

顧客というのは、そのサービスを利用している人のことであり、自社サービスの管理画面開発を行っているエンジニアであれば、それを利用する社内ユーザー、B2Bのサービスを開発しているエンジニアであれば、それを利用している他社のユーザーのことです。

このような顧客のメリットを一番に考えることが、ビジネス観点だと考えています。

それでは、具体的にどのような行動や考え方が、ビジネス観点を持っていると言えるのでしょうか。

あなたは開発しているシステムの売上を理解していますか

開発しているサービスの毎月の売上はどのくらいか把握していますでしょうか。

これはプロダクトオーナーやプロジェクトマネージャーが把握すべきことで、開発者が把握することではない、という意見もあると思います。

しかし、これを理解する気持ちがあるかが、ビジネス観点を持っているか、そうでないかを分ける一つの指標だと考えています。

なぜ売上を把握することが大事なのでしょうか。

売上を把握するということは、開発しているシステムやサービスが、どのような仕組みでお金を稼いでいるかを理解しているということです。

これを理解すると、自分が開発している機能は、売上にどのように関わるのかを理解することができます。

そうすると、絶対にバグを起こしてはいけない部分や、重点的にテストをすべき部分が見えてきます。エラー処理の入れ方や設計も変わってくるかと思います。

もちろん、すべての機能において完璧にバグなく開発すべきですが、現実はそう容易くないです。スケジュールが存在し、そこに割ける工数も決まっています。

自分が関わっている開発にどのようなインパクトがあって、どのくらい重要なものなのかを理解するためにも、売上を理解することが非常に重要だと考えています。

リリースすることがゴールになっていませんか

システム開発をしていると、観点が狭まってしまい、その機能をリリースすることがゴールになっていることが多いです。

機能の拡張性が疎かになっていたり、バッチ処理においてリカバリすることが前提になっていないため、開発した本人しか操作できない、リカバリ工数が膨大であるということが起きがちです。

システムや機能は、利用されて初めて価値があります。リリースは、ゴールではなく、スタートであると考えた方がいいです。

このような考え方ができるエンジニアは、ビジネス観点があると言えます。

運用を見越したシステム開発ができる人は、開発している機能の意味や背景、サービスにおける機能の役割を理解しています。

そのため、どのような要望が発生するかを漠然と想像できたり、リカバリが発生するシチュエーションを考慮できる可能性が高いです。

利用された時にどのような要望が発生しそうか、想像できるようになるためにも、開発しているシステムやサービスの本質を理解することが重要です。

いかがでしたでしょうか。ビジネス観点を持っているエンジニアというのは、あまり多くはないと感じています。もちろん、全てのエンジニアがそうあるべきだとは思っていません。例えば、R&Dのような業務を行なっている人にビジネス観点は、必要なのかと言われると、あるに越したことはありませんが、絶対に必要ではないと思います。

いわゆる「気が利く」というエンジニアを目指している人や、将来自分のサービスを開発し起業を目指している人は、普段からこのような観点で物事考える習慣をつけてみてはいかがでしょうか。

もし、どのように優秀なフリーランスエンジニアを採用するか知りたい方、過去に採用で失敗した方、フリーランスエンジニアの採用/活用にお困りの方は、是非ご一報ください。