プログラマーに向いている人の特徴。数学が得意である必要はない
向いているかどうかを分けるのは、数学の得意さでも頭の回転の速さでもありません。実際に続いている人に共通する特徴と、向いていないと感じたときに疑うべきことをまとめました。
- こんな人に
- プログラマーへの転向を考えている人
- 結論
- 分けるのは数学の得意さではない。続いている人に共通する特徴がある
- 読む時間
- 約3分
プログラマーの適性としてよく挙がるのは、数学が得意、論理的、理系出身といった条件です。ところが実際の現場で長く続いている人を見ると、これらはあまり関係がありません。分かれ目になっているのは、もっと地味な性質のほうです。
続く人に共通する5つの特徴
- 分からない状態に耐えられる。原因が見えないまま数時間過ごすことが日常的にあります。この宙ぶらりんの時間が苦痛すぎない人は続きます。
- 調べることを面倒がらない。この仕事は覚える量より調べ直す量のほうが多い。暗記力ではなく、調べる腰の軽さが効きます。
- 細かい違いに気づく。1文字違うだけで動かない世界なので、几帳面さがそのまま実力になります。
- 人が書いたものを読める。実務では書く時間より読む時間のほうが長い。他人のコードと文書を読む力が速度を決めます。
- 自分の詰まりを説明できる。「動きません」ではなく「これをやって、こう期待して、こうなった」と書ける人は、助けを得るのが速い。
数学が必要な領域は、思ったより狭い
業務で書くコードの大半は、条件分岐、繰り返し、データの並べ替えと集計です。使う数学は四則演算と論理が中心で、高校数学が必須というわけではありません。
高度な数学が要るのは、機械学習の研究、3Dグラフィックス、暗号、信号処理といった特定の領域です。重要な分野ですが、仕事全体の一部にすぎません。「数学が苦手だから無理」で入り口を閉じるのは、判断としてもったいない。
むしろ有利になる、意外な性質
文章を書くのが好き、人に説明するのが得意、細かいことが気になる。これらは他の職種では「面倒な人」と言われがちですが、この分野では明確に有利に働きます。
仕様を読んで矛盾に気づく、あいまいな要望を言葉で詰める、書いたものを人に説明する。どれも日常的に必要な作業で、そして人手が足りていない部分でもあります。
「向いていない」と感じたときに疑うこと
適性がないと感じるとき、原因が本人ではなく環境にあることがよくあります。次の4つを先に確認してください。
- 聞ける相手がいない。初学者が一人で詰まると、時間だけが溶けます。これは能力の問題ではありません。
- 課題が大きすぎる。最初から大きなものを作ろうとすると、完成しないまま終わります。
- 比較対象を間違えている。学生時代から書いている人と比べれば、差があって当然です。比べるなら3か月前の自分です。
- 学習が目的化している。教材を終わらせることが目的になると、面白さが消えます。
とくに1つ目は深刻です。詰まったときに30分で聞ける環境かどうかで、伸び方はまったく違ってきます。独学がつらいと感じるなら、能力ではなく環境を変えるほうが早い。
開発職だけが道ではない
技術に近い仕事は、コードを書く仕事だけではありません。テストや品質保証、業務の自動化、データ分析、テクニカルサポート、技術営業、ディレクション。どれも技術の理解が必要で、そしてどれも人手が足りていません。
とくに技術と、それを使う人のあいだに立てる人は非常に希少です。開発の基礎を持ったうえでこの位置に立てると、代えのきかない存在になります。入り口を開発職だけに絞らないほうが、選択肢は現実的に広がります。
まとめ
- 分かれ目は、数学の得意さではなく「分からなさに耐えられるか」
- 調べる腰の軽さと、細部への注意がそのまま実力になる
- 文章を書く力、説明する力はこの分野で有利に働く
- 向いていないと感じたら、まず環境(聞ける相手・課題の大きさ)を疑う
- 開発職以外にも、技術に近い仕事は多くある