SIerでの勤務経験をもとに、SEに向いている人の特徴を考えてみます。主に、情報系以外の学部に在籍していて、SEとしての就職を検討している方に読んでいただきたいと思い、書きました。
私自身は情報系以外の理工系学部出身で、プログラミング経験がない状態でSIerに入社し、6年間勤務しました。
職種には向き、不向きがあると思いますが、私が就職活動した際、「SEは文系でも大丈夫」、「とにかくコミュケーションが大事」というような話をよく耳にしました。
間違ってはいませんが、もっと根本的に重要なことがあるのではないかと思います。
新卒では、情報系学部出身ではなくてもSIerに入社できますが、SEはハードな職種です。入社してから後悔しないよう、様々な角度から向き、不向きをご検討いただければと思います。SIerのSEをイメージして書きましたが、本記事に記載した内容は、WEB系企業のエンジニアにもあてはまるかと思います。
SEに向いている人の特徴
ロジカル
1点目はロジカルです。
設計書やコードはロジックそのものです。提案、要件定義などの上流工程でもロジカルシンキングは必須です。避けてはとおれません。
- 数学が得意
- パズルが好き
- 理工系専攻
上記にあてはまる方は、SEの仕事に慣れるのが早いのではないかと思います。SIer時代、私が最も優秀と思っていた先輩は教育学部出身でしたが、「ロジックが好きだったからSEになった」と言っていました。
ロジックに苦手意識がある方は、SEの仕事は向かないと思います。
複雑な事象を紐解ける
SEとしての仕事では、そこまで難しい概念に出くわすことはなかったように思います。大学で習ったシュレディンガー方程式とか相対性理論の方が苦しんだ記憶があります。
機械学習やセキュリティのアルゴリズムの設計などを考えるような仕事であれば、難しい概念を学ぶ必要も出てくるかもしれませんが、業務系SEとしてはどちらかというと複雑なものを紐解くことが必要な場面が多かったです。
例えば、基幹系システムの膨大な要件をまとめたり、止められないシステムの運用設計をしたり、限られた時間の中でシステム障害やプログラムのバグの原因究明をフルスピードで行ったりすることなどは、絡み合った様々な情報、業務、システム、コードを紐解きながら進める仕事でした。
数百ページの仕様書を読んだり、数万行のコードからバグを探したりすることに抵抗はないでしょうか。大量の情報から何かを導くような経験のある人は、複雑性の観点でSEの仕事に抵抗がないかもしれません。
仕組み化できる
システムを構築することは、仕組み化することです。
人が楽をするためにうまく仕組みを作れる人は、SEに向いています。「こう変えたらいいのではないか」と常に考えていることが大切だと思います。
また、仕組み化は抽象化することです。究極の抽象化は数学です。「ロジカル」のところでも記載しましたが、数学が得意な人は強いと思います。
仕組み化については、私は仕事をとおしてスキル向上したと思います。SEの仕事は仕組み化そのものであるため、普段から無駄や非効率に着目するようになりました。仕組み化の対象を見つけることは、普段から物事の改善点を考えたり、業務をとおした訓練で習得できるスキルだと思います。
SEへの適性を知る方法
前述のSEに向いている人の特徴に当てはまるかどうかを知るためには、プログラミングをやってみるのが一番よいかと思います。プログラミングが面白いと思えれば、SEへの適性の大部分はクリアしていると思います。
まとめ
SEに向いている人の特徴として、3点挙げました。
- ロジカル
- 複雑な情報を紐解ける
- 仕組み化できる
「ユーザ視点」や「コミュニケーション能力」なども大事ではありますが、それらばかりが強調されることに違和感があったため、別の視点で記事にしました。仕事のミスマッチが少しでも減ればと思います。