プログラマーに憧れてるけど、自分が向いているのかどうかわからない。
プログラマーに向いている人の特徴ってどんなものなのか、知っておきたい!!
プログラマーと聞くと、どんな印象を抱くでしょうか。
- 黙々と作業をしている
- 長時間パソコンに向き合っている
- 難しい専門知識を駆使している
- 向き不向きが激しそう
- 離職率が高そう
これらは一部は正解ですが、間違っている項目、誤解されている項目も多いです。
僕は現在、SIerでプログラマーとして働いています。
この記事では、僕自身の実体験や、僕の周囲にいるプログラマーたち、そしてプログラマーを目指すも残念ながらドロップアウトしていった人たちなど、僕が実際に見てきた方々から、プログラマーに向いている人の特徴を解説します。
以下の経験に基づき、記事を書いています。
- 趣味のプログラミングが高じて、30代未経験でシステムエンジニアに転職。
- SIerで、主に開発実装に携わっています。
プログラマーに向いている人の特徴
早速ですが、プログラマーに向いているのは、以下のような人だと考えています。
- モノづくりが楽しいと感じる
- 粘り強く考えることができる
- コミュニケーションをとれる
- 教えることに抵抗がない
- 向上心がある
モノづくりが楽しいと感じる
自分の手で新しいモノを作り出したいという意欲は、プログラマーに最も必要な素質です。
プログラマーは、プログラミング言語を駆使し、ソフトウェアやシステムなどを作り上げていく職業だからです。
開発対象はパソコンやスマートフォンのアプリ、ゲーム、インターネットサービス、基幹システムやインフラなど多岐に渡りますが、どのような開発に取り組むとしても、前例のない新しいサービスを実装し、世の中に送り出す役割、と言えます。
プログラミングの学習過程において以下のような方は、プログラマーになった後も活躍していける可能性が高いと思います。
- 作りたいもの(どんなに小さくてもOK)があり、そのためにプログラミングの勉強を始めた。
- プログラミングの技法を学んでいるとき、「これを使えばあんなことが実現できるのでは!?」、とアイデアを考えている。
粘り強く考えることができる
不測のエラーやトラブルが生じた際、粘り強く考え抜いて解決に至れることもプログラマーには重要です。
なぜなら、前述の通りプログラマーは前例のないシステムを開発することも多く、困りごとが生じても自分の力で試行錯誤して解決していかなければならないからです。
プログラミングの学習過程では、技術書や教材に沿って進めるため必ず解答が用意されており、また周囲に相談したりインターネットを検索すると、参考となる情報を得られることがほとんどです。
しかし、業務レベルになるとそうはいきません。
僕も担当の開発案件でトラブルが生じたら、試行錯誤や調査のために丸一日費やす、といったこともよくあります。
難しい課題にぶち当たって解決の糸口が一切見えない状況でも、イライラしたり腐ったりすることなく、むしろ楽しむくらいで取り組めることが理想ですね。
コミュケーションをとれる
プログラマーは、開発チーム内のメンバーや、システム開発の上流工程(要件や設計方針の検討など)を担うシステムエンジニア、そして時にはクライアントと、打合せや情報共有を行いながら開発を進めます。
プログラマーというと、黙々とパソコンに向かい合って作業をしているというイメージがあるかもですが、実際の開発現場では以下のようなコミュニケーションの機会ばかりです。
- 自分のタスクの進捗状況や困りごとを報告
- 他メンバーへの質問やサポート
- 開発内容や方針に関する認識すり合わせ
- 設計書の不明点や、改善を要する点のフィードバック
- コードレビュー
- クライアントからの要望に対して、実装仕様に基づく意見交換
事前に資料をまとめ、会議の場で論理的に自分の考えを説明しなければならない機会も多いです。
こういった場で的外れな意見を述べたり、まとまりのない発言をしたり、何も発言しないことが続けば、作業に支障が出るだけでなく、他メンバーからの不信感に繋がってしまいます。
トークやプレゼンが上手である必要はありませんが、少なくとも人と話すことに苦手意識は無いことが望ましいです。
教えることに抵抗がない
プログラマーは複数のメンバーで構成されるプロジェクトに参画して業務を行います。
定期的に業務振り替えや新規メンバーの着任があるためその都度、業務状況を引き継ぎする機会があります。
開発システムの背景からプロジェクトで使用している技術スタック、担当してもらうタスクの内容を、わかりやすく伝えなければなりません。
また、同僚や後輩から質問を受ける機会も多々あります。
そういった場合も、親身に相談に乗り、解決方法がわかれば丁寧に教えることが必要です。
Koki
このような相互協力で、エンジニアリング業務は成り立っています。
他の人から相談を受けること、そして自身の経験やノウハウを的確にアウトプットできることが必要です。
もちろんこれらも最初は上手くいかないものですが、苦手意識さえなければ、徐々に場慣れして上達していきます。
向上心がある
そして、常に向上心を持ち続けることも重要な素質です。
プログラマーのコーディングは、正しく動くことは当たり前。
そのうえで、以下のようなポイントを追求していく必要があります。
- よりコンピューターへの負荷が少なく処理の速い記述方法は無いか?
- より合理的なロジックにできないか?
- より簡潔で読みやすいコードにできないか?
またITの世界では、日々新しい技術や言語が登場しています。
それらを扱うプロジェクトに参画する機会に備えて、日々勉強してキャッチアップしていかなければ、将来的には業務についていけなくなってしまいます。
そのため、IT技術に関心を持ち、勉強を続ける姿勢が大切となります。
向いていない人の特徴
一方で、IT業界から離れていったり、プログラマーを目指していたもののドロップアウトしていった方々を見てきたのも事実です。
そういった方々にも、共通点があったように感じています。
以下にまとめてみました。
年収や流行だけを見て、なろうとしている
時々、ITにそこまで興味はないけど、プログラマーやエンジニアを目指している人を見かけます。
その志望理由に至った理由は多々あると思いますが、以下のパターンが多いように感じます。
しかし、前述の通り、プログラマーは勉強やスキルアップをし続ける姿勢をはじめ、IT技術への興味関心が無ければ、絶対に続けられない職業です。
一面だけを切り取って目指している方は、たとえ実現しても長期にわたって活躍していくことは難しいかと思います。
年収
IT業界は実力主義の世界のため、実力に応じた収入を得ることが可能です。
参考までに、経済産業省のIT関連産業の給与等に関する実態調査結果という資料では、プログラマーおよびシステムエンジニアの年収として、以下のデータが確認できます。
- プロジェクトマネージャー:891.5万円
- システムエンジニア、プログラマー:589.6万円
サラリーマンの平均年収はおよそ460万円と言われていますから、比較的高収入と言えるのではないでしょうか。
流行
2024年現在、IT業界では、以下のようにポジティブな話題が多いです。
- 学校教育でプログラミングが導入
- 2025年の崖
- 2030年には、約40万人以上ものIT人材が不足(つまり売り手市場)
- DXの加速
世間一般で見ても、プログラミングやシステム開発の人気が上昇しており、2023年の男子高校生のなりたい職業ランキングでは、ITエンジニア・プログラマーは2位とのことです。
このような背景から、進路選択に迷った際に、それほど興味はなくともIT業界が候補に入ってくる場合が多いのではないかと感じます。
業務とプライベートを切り分けたい
「仕事の時間は定時内の8時間だけ!それ以外は自分の好きなことをして過ごすぜ!!」というスタンスの場合も、プログラマーは向いていない可能性があります。
なぜなら、プログラマーやエンジニアは性質上、一生勉強だからです。
進歩の速いIT業界で業務についていくためには継続したスキルアップが必須ですし、未経験業界のプロジェクトに参画する場合はその業界の知識、初めての技術を扱う場合には資格取得を勧められる場合もあります。
そういった時間は当然ながら勤務時間外で捻出しなければなりませんし、リリース済みの製品でのトラブルが生じた際などは、突発的な残業対応が発生することもしばしばです。
よって、定時外は仕事に関することは一切したくないという考え方では、プログラマーとして長く活躍していくことは難しいかもしれません。
Koki
周りを見ると、「プログラミングや勉強は趣味であり楽しい!」という方が多いです。
プログラマーを目指すなら
ここまでの内容を考慮した上で、「プログラマーを目指したい!」という方は、きっと適性がありIT業界に入ってもやっていけるはずです。
プログラミングを学んでおく
まず何より、プログラミング技術を磨いておくべきです。
いくらプログラマーになりたい、適正があるといっても、未経験からの実務は不可能です。
新入社員であれば研修期間もあると思いますが、その期間だけでゼロから実務レベルに達するのは難しいでしょう。
中途採用であれば、企業が期待しているのは即戦力のため、入社直後にプロジェクトに配属されることも珍しくありません。
事前にプログラミングの基礎知識はしっかりと身に着けておくべきです。
プロダクトを作ってみる
また、簡単なものでもOKですので、学んだプログラミング知識を活かして、実際に動くプロダクトを作ってみるという経験も重要です。
学習過程のプログラミングには必ず正解があります。
一方、実現したい機能を、手持ちの知識を活用して、どうすれば実現できるかを考える。
さらにそれを形に仕上げる、という過程では、幅広い論理的思考力が求められます。
そして、プログラマーとして実務をこなすにあたり求められるのはこの思考能力だと感じています。
ぜひ、一度自分オリジナルのプログラムを完成させて、その過程を楽しめたか、もっと開発作業をこなしてみたいか、自問自答してみてください。
まとめ:なりたい熱意が一番重要
この記事では、以下の内容を紹介してきました。
- プログラマーに向いている人、向いていない人の特徴
- プログラマーの働き方
- プログラマーを目指すために準備しておくべきこと
実際にIT業界で働いていて、周りの方々を見て思うのは、プログラマーやシステムエンジニアはほぼ全員、本記事で紹介してきた、以下の特徴をすべて満たしています。
- モノづくりが楽しいと感じる
- 粘り強く考えることができる
- コミュニケーションをとれる
- 教えることに抵抗がない
- 向上心がある
逆に、IT業界から離れていったり、プログラミングを学んだものの挫折してしまう人は、いずれかが不足していることが多いです。
しかし、プログラマーを目指しているけど現時点でいずれかの項目に自信が無かったとしても、まったく問題はありません。
IT業界に飛び込み、そしてそこでやっていくために最も必要なのは、「IT技術が好き」や「どうしても作りたいものがある」といった熱意だからです。
現時点で不足があっても、これから弱点を克服していけばOK。
Koki
僕も趣味の延長でプログラミングを仕事にしたいとの思いからエンジニアに転職しましたが、日々の開発業務がとても楽しく、満足しています。
IT業界はこれから盛り上がっていく、楽しい世界だと感じていますので、目指したいという熱意があるのなら、諦めることなく実現を目指していきましょう!!