- 人間の心の理解
- 相手の話の理解
- プログラムで表現する発想力
- 何か問題にならないか?という発想力
相手の話の理解
めちゃくちゃ大事。 よく分からない話でも真剣に聞いて、後で話していた内容を説明できるか、という能力がいる。 エンジニアは仕様を曖昧にはできないのでこの能力は必須。 予習できない分野を、ドメインエキスパートや運用部隊のヒアリングをもとに理解して、何を言っているのか、の理解がまず大事。
プログラムで表現する発想力
プログラマは、要望をプログラムに落とし込まないといけない。 それは、非エンジニアが言語化しているもの以外との整合性も担保しつつやらないといけない。
そこがプログラマの難しい所で、 相手の言っていることを理解して、彼らが思っていること + それが他の部分と折り合いを取れるか?を考えないといけない