見出し画像

仕事に必要なスキル・マインド(システムエンジニアの場合)②

前回の続き。

前回あげた「仕事の目的を理解する」や、「アウトプットやプロセスを明確にする」はシステムエンジニア以前にどのような仕事をする上でも重要かつ汎用的なマインド、スキルと思う。
専門的な知識やスキルを活かすためにはまずはこうしたマインドやスキルが身につける必要があると考えている。

今回も、特にシステムエンジニアには必要とされるが、他の業種職種でも活きるスキルについてあげていく。

論理的思考力を身につける

システムエンジニアをする上では、必須のスキルになるだろう。

設計では、どうしてそのような設計にしたのか、根拠を求められ、
バグを発見したら、因果関係から仮説を立ててアプローチする必要があり、
不具合を出したら、不具合が流出した要因は何で、再発防止するためにどうするのか論理的に語らないといけない。

ソフトは感情では動かないので、どのような場面でも論理的に進める必要があり、メンバーとの会話でも論理的に成り立っているかが求められる。

論理的思考は様々なフレームワークがあるが、中でも重要なのが、「So What? / Why So?」の考え方だと思う。

「So What? / Why So?」の片方を導き出しても、客観的に見ると論理的につながっていないケースがある。そこで、逆方向から考えて、論理的に成り立っているか検証することが大事である。

論理的思考力の鍛え方は、様々な方法があるだろうし、人によって最適な鍛え方が変わると思うので割愛するが、私の場合は、OJTで鍛えられた。

新人時代、自分自身の育成計画に対して、毎週のように成果報告する機会があったのだが、
計画に対してオンスケか?
目標と現状のギャップは何か?
ギャップに対する課題は何か?
課題に対して、どのような対策を打つか?
の報告が求められるので、周りに納得してもらえるように論理的に成り立っているか延々と考え続けたが、それが今のスキルのベースになっているかもしれない。

理解力を身につける

この仕事をしていると、新しい概念や単語がどんどん出てくるし、開発言語や使用されるツールも時代によって変化する。
それらを理解しないと、置いてけぼりをくらってしまう。

理解力を向上するために、特別なことはしていないし、人に対しても指導したことがないが、私は物事を抽象化して考えられるかどうかが結構重要なポイントではないかと考えている。

例えば、犬、サル、キジという概念が出てきた時、全く新しい概念として捉えると3つ追加で覚えないといけないが、犬とサルは「哺乳類」に分別され、キジは「鳥類」に分類されることが分かれば、新しい概念を脳内に追加する必要はない。

モノ同志の共通項や因果関係を考えて抽象化する癖を身につけておけば、「あーこれは、〇〇のカテゴリーに属するモノで、その中でも××という特徴があるんだな」と理解を深められるので、応用が効く。

地頭が良い人は元々そのような考え方をする人か、意識的にトレーニングを積んできた人だろう。



次回に続くが、今度は仕事に対する姿勢や、人との関わり方について書いていきたい。



この記事が参加している募集

この記事が気に入ったらサポートをしてみませんか?