タイトルに対しての結論から言ってしまうと、コミュニケーション能力やリーダーシップ、そして信頼感といった『人間力』だと考えています。この人と共に取り組もう。そう思わせる力が必要だと思うのです。
フルスタックエンジニアについて語られるとき、どうしても技術に着目することが多いです。でも、あくまで技術は手段でしかありません。目的はカスタマー(エンドユーザーも含め)が望むシステムを構築すること。
そのためには技術力以外の能力も必要になります。何が求められているのか。どうしたら実現できるのか。トレードオフをどうジャッジするのか。開発チームもカスタマーも一緒になって考え、目指すシステムのイメージを描く。このみんなの思いをまとめる際に人間力が活きてきます。そして、そのイメージを技術力で形にする。この人間力と技術力を兼ね備えたエンジニアが真のフルスタックエンジニアではないかと思うのです。
ここで一つ大切なこと。一人で全てを背負い込むことがフルスタックエンジニアの役目ではありません。開発チームの一人一人が自分の役割を意識し、全力を尽くす。全員がフルスタックエンジニアであっても矛盾しないし、それを目指す。それがあるべき姿だと思っています。