- 文系からでもプログラマーになれるかな?
- 仕事でプログラミング歴が長い人に追いつけるのかな?
今回はこういった疑問に答えていきます。
当記事の内容
-
スキルは3年あればほぼ横並び
-
スキルがあってもコミュニケーションを取れないプログラマーが事故を起こす
-
営業経験がある人は強い
筆者について
-
文系大学卒業後、専門商社へ入社
-
将来性のあるITエンジニアに興味を持ち、4ヶ月独学して開発エンジニアとして転職
-
現在はWEB系開発のプロジェクトリーダー
Contents
スキルは3年あればみんなほぼ横並び
未経験からプログラマーに挑戦したいと考えている人の多くは「プログラミングスキル」を心配しています。
これってあんまり心配しなくて良いです。
理由を説明していきます。
今できなくても仕事にすればできるようになる
よく「プログラミングが難しい」という意見を聞きますが、仕事場はプログラミングを習得するのに最も優れた場所です。
仕事でプログラミングをするとスキルが身に付く理由
-
その①:先輩のソースコードが見れる
-
その②:納期があるので自分を追い込むことができる
-
その③:どのアプリもほぼ同じなので反復練習になるから
その①:先輩のソースコードが見れる
仕事でプログラミングをすると「他人のソースコード」を見ることができます。
「自分ではどのように実装したら良いか?」が思いつかなくても、似た機能を探してロジックを参考にすることができます。
丸パクリは良くないですが。。。
しかも、理解できない箇所があれば聞くことができます。
困った時に参考になるソースコードを見ることができるのは、「仕事ならでは」のメリットです。
その②:納期があるので自分を追い込むことができる
独学の人が隙間時間でコツコツと積み重ねた1年と、新人プログラマーが自分を追い込みながら仕事でプログラムを書き続けた1週間ってほぼイコールだと思います。
筆者もエンジニアとして転職する前に4ヶ月ほどプログラミングを独学していたのですが、その4ヶ月でできたことって仕事としてやっていれば1日で学べた内容です。
「自分を追い込む」と聞くと少し怖いですが、短期間で習得するということにフォーカスすると自分が逃げられない状況にするというのは有効な策ですね。
その③:どのアプリもほぼ同じなので反復練習になるから
開発経験が長くなってくると「どのアプリもほとんど同じだな。」と感じます。
例えばツイッターやインスタ・Facebookは、つぶやくことができて、画像が投稿することができます。
アプリの見た目は違いますが、基本的なプログラム構造としてはかなり似ています。
アプリだけではなく業務システムでも同じです。
大体のシステムが発注・見積もりができて、発注が確定したら請求して、その請求に対して金額の消し込みを行うことができます。
人が手作業でやりたくないことをシステム化するのがプログラムの目的ですから、人がやっていることが皆んな同じである以上、作るシステムも大体同じってことになります。
ほとんど同じことしかやっていないので開発プロジェクトを2~3個経験すれば、プログラミングスキルに関しては先輩とほぼ横並びになります。
私の後輩達も最初は何もできませんでしたが、今では頼れる仲間になっていますし、プログラミングスキルにほとんど差がないと思ってます。
スキルがあってもコミュニケーションを取れないプログラマーが事故を起こす
プログラマーにとってコミュニケーションを円滑に取れるかどうかは死活問題です。
なぜコミュニケーションがそれほど重要かというと、プログラマーの仕事は「お客様の業務を理解して、これまで手作業で行ってきた業務を自動化すること」だからです。
大切なのは「お客様の業務を理解する」というところで、プログラミングができればOKというわけではありません。
プログラミングよりお客様の業務理解の方が難しい
プログラマーであれば、プログラミングについてはプロかもしれません。
私もコーダーの時はプロ意識を持って取り組んでいました。
ですが、お客様の仕事内容については素人です。
そのためプログラマーがいくら考えても答えは出ません。
ここで、分からないことを聞くことができないプログラマーが事故を起こします。
お客様はその道のプロ
例えば、大手物流企業の配送経路を自動探索するシステムを作るとします。
配送には車両を使います。
したがって長距離の運転になる場合は、運転時間によって法的に休憩を取る必要があったり、高速道路の料金を安く済ませるために深夜の運転になる場合は、法定の休憩時間より、こまめに休憩をとった方が良いというような実務要件が出てきます。
プログラミングだけを勉強してきたエンジニアが分かるわけないですよね笑。
こういったお客様の実務要件を理解しないままプログラムを作ると、「実は認識違いがあった」とかで大規模な修正が発生することがあります。
お客様はその道のプロですので、「プロの仕事を理解してプログラムに落とし込む」というところで経験年数というプログラミングスキル以外の差が出てきます。
分からない時に人に聞かずに自分で考えてしまう人
プログラムを書いていて、設計書の理解に戸惑った時などに、コミュニケーションが苦手な人は「自分で考えてしまう」という特徴があります。
断言しますが、「仕様」について自分で考えると事故ります。
設計書の内容をどのように実装するかは自分で考える必要がありますが、仕様の理解は100%お客様が答えになるので、その答えを知っているお客様に直接聞くか、仕様を把握しているプロジェクトリーダーなどに聞きましょう。
「コミュニケーションが苦手な人」は仕事の手戻りを発生させる人の特徴です。
営業経験がある人は強い
筆者も元々営業からプログラマーに転職をして、今はプロジェクリーダーをしています。
その経験から営業経験があると、プログラマーしかやってこなかった人より強いと感じます。
理由は以下です。
営業経験があるエンジニアが強い理由
-
お客様視点がある
-
コミュニケーション能力が高い人が多い
大きく分類するとこの2点かなと思います。
お客様視点がある
基本的に仕事をする時は何かしらのシステムを使います。例えば業績管理システムとか経理システムとかです。
営業をしてきた人はこのようなシステムを「使う側」の立場だったと思います。
使う立場だと不満が出る理由が分かる
システムを使っていると必然的に「ここが使いにくい。遅くてイライラする。」といった不満が出てきます。
これまでシステムを使う「客の立場だった人」が「自分がシステムを作る側」になると、「お客様が何を求めているのか?」という視点がエンジニアの人より優れているケースが多いです。
これがエンジニア視点だと「老いぼれは字が小っせーと見えねんだってよ、とか、大量のSQL実行してんだから当たり前だろ」みたいな、なんとも自分のことしか考えていない発言をします。
こういう人はエンジニア向いていないので辞めた方がいいです( ̄▽ ̄)笑
Googleが掲げる10の事実を読んで心を改めましょう。
結局は「お客様は何に困ってシステムを発注しているのか?」という視点が持てる営業経験者は、お客様との認識齟齬が発生しにくいし、要件調整をしている最中も高飛車にならないのでうまくいきます。
コミュニケーション能力が高い人が多い
プログラマーは「しゃべらずに仕事ができて、コミュ力がいらない」と勘違いしている人が多いですが、コミュ力が低いと何もできません。
コミュ力とは「話が面白いとか、会社の飲み会で盛り上げられる」とかではありません。
仕事をしている上で進捗を報告したり、困っていることをすぐに相談できる人のことです。
これができない人はアルバイトですらできないと思います。
営業経験者は報告する癖がついている
営業経験者は「売り上げ」がすべてなので「今いくら稼いでいるのか?やお客様への営業状況」などを逐一報告する癖がついている人が多いです。
筆者もそうでした。
システム開発も同じで、死守しなければならない納期があります。
この納期を守るためにプロジェクトリーダーやプロジェクトマネージャーは常にプログラマーを見ていないようで見ているので、報告されなくてもある程度進捗を把握しています。
ですが、自分から報告や相談をしてくれる人は監視する手間が省けるからすごく感謝されるし、「経験が浅い人でももっと勉強になることを任せよう」という気持ちになります。
大事なこと任せて、遅延しても相談してくれるからキャッチアップできるんですよね。
したがって、コミュニケーション能力が高い営業出身者は機会的にも恵まれて成長するんですね。
まとめ
ここまでお読みいただいた方は以下のことをご理解頂けたと多います。
当記事のまとめ
-
プログラミングスキルはすぐに追いつく
-
お客様視点が重要
-
営業経験者は成長しやすい
これからエンジニアへのキャリアチェンジをしようとされている方で「自分は文系だから。。。」と悩んでいる方は、自信を持ってください。
プログラミングスキルはすぐに追いつきますし、営業経験がある方であればさらに上流工程にも行ける可能性があります。
プログラミングで伸び悩んでいる方は、独学方法を別の記事で紹介しているのでご覧ください。
-
参考プログラミングの独学を本でやると挫折しやすい【結論Udemyが神】
悩んでいる人 プログラミングの独学を決意したけど、どうやって学習を始めたらいいのかわからない いざプログラミングの本を購入してみたけど、本に書いてあることが理解できない そもそも本を開い ...
続きを見る
また、短期集中型でプログラミングを学びたい方はプログラミングスクールもおすすめです。
別の記事でおすすめのスクールを紹介しているので、ご参考にしてください。
-
参考現役WEBエンジニアがおすすめするプログラミングスクール3選
こんな方におすすめ プログラミングスクールに通いたいけど、どのスクールがいいか分からない それぞれのプログラミングスクールの特徴を知りたい プログラミングという「手に職」をつけたい! 2020年から小 ...
続きを見る