「プログラマーになりたいけど、きついという意見をよく聞いて不安がある。。」
「プログラマーの実情がわからない」
就活時にプログラマーを目指していた僕はこんな悩みを抱えていました。
この記事ではプログラマーになり5年以上経過した僕が、プログラマーの実情について解説します。
エンジニアにはSEとプログラマーがありますがこの2つは全く別物です。
ざっくりいえばSEはお客さんとプログラマーの仲介をする役割で、営業に近いです。
SEが案件をとってきて、実際のプログラムを書くのがプログラマーになります。
SEはプログラムを書くことはほとんどないので、コードを書きたいと思ってSEになってしまうと思い描いていたキャリアと異なってしまうため注意が必要です。
当記事ではプログラマーについて書いています。
結論:プログラマーはきつくない
まず結論ですが、プログラマーはきつくないです(もちろん大変な時もありますが。。)
僕の場合は基本的に残業もほぼなく19時前には退社でき、土日の出社ももちろんありません。
就活時に調べていた際には、3Kの職業と言われていましたが、実際に入ってみるとそんなことはなくみんな楽しそうに仕事をしていたので、ネット上の意見だけで判断してしまうのは危険だなと思いました。
ただし、プログラマーは会社選びがとても重要です。間違えてしまうとブラックな可能性もあるので要注意!
ホワイトな会社の見つけ方
残業が少なくやりがいのある職場を見つけるにはコツがあります。
システム開発を行なっている会社には、自社案件を扱う会社、受託案件を扱う会社、もしくは両方を扱う会社に分かれます。
僕は社内案件、受託案件の両方を経験しましたが、プログラマーとして働くなら圧倒的に自社案件を扱っている会社に務めることをおすすめします。
これには理由があります。
社内案件の場合にはシステム開発を進める上で、社内で話し合いが行われるため、スケジュールに関してある程度コントロールが可能です。
対して受託案件では、営業メンバーが取ってきた案件の納期に従う必要があるためです。
よくありがちな営業メンバーと専門職の対立がこのへんであったりするのですが、受託のWEB案件は単価が高くないことが多いため、納期も短くなりがちでこれはある程度しょうがないのかなと思っています。
また先方から急に無理な依頼がくることも多く、受託案件の場合は残業が増えがちです。
上記は残業に関してですが、スキルにおいても社内案件の方が軍配があります。
これにも理由があり、受託案件ではいかに早くこなすかが大切なため、新しい技術を取り入れるというよりも既存のやり方に従うためです。
薄利なため長期的なスパンで考えることはなく、同じ技術を使い続けてしまい新しいスキルの取得ができません。
これに対して、社内案件の場合には長期的な発展を考えて新しい技術を取り入れることも多いため、幅広いスキルの取得が可能です。
社内開発をしている会社に入る方法
上記で述べたように基本的に社内開発の会社に入るのがおすすめですが、どうすれば入ることできるのかについて記載します。
WEB制作ではPHPとRubyが多く用いられます(phpとrubyの違いについては下記参照)
https://kachilog.net/comparison_php_ruby
このphpとRubyではで比較的にRubyを扱っている会社は社内案件を扱っている確率が比較的高いです。
受託の案件ではレンタルサーバーを借りてシステム開発を行うことが多いのですが、レンタルサーバーにはRubyを入れられないことが多いためです。
逆に言えば、「Rubyを使っている = 自社案件を扱っている可能性が高い」と言えます。
またRubyを使っている会社は全体的にスキルが高いことが多いため、スキルアップしやすいというメリットもあります。
もし自社開発企業に興味があるけれど中々見つからないという方は、言語から探してみると見つかるかもしれません。
ちなみにプログラミングスクールの中はRubyに特化したスクールがあります。
こういったスクールでは就職のサポートまでしているので、社内案件の会社に入れる会社が高いんじゃないかなと思います。
自社開発企業に興味がある方はお話だけでも聞いてみることをおすすめします。
未経験で社内開発をしている会社に入る方法
自社開発企業と受託開発企業では、割合的に自社開発企業の方が少ないため入ることが難しいです。
ここまでを聞くと、「社内開発に未経験で入ることは難しそう・・・」という方もいるかもしれませんが、実は未経験でも入ることは可能だったりします。
実際に最近30歳付近の未経験の方が入社したりしました。
とはいえ、やる気だけで自社開発企業に入ることは難しいです。
実務経験でなくても良いのですが、何か制作した経験があると強いです。
1つはポートフォリオを作ってしまうことです。
僕は何度かエンジニアの採用に携わりましたが、やはり制作物がある方は強いです。
ただ「チュートリアルを見て掲示板システムを作りました」といったものではなく、自分用に「自分が痩せるためにダイエット管理システムを作りました」といったものはインパクトがあると感じました。
多くの人に使ってもらうシステムは難易度が高いので、自分の効率化をするツールをポートフォリオにするのもありなんじゃないかなと思います。
ポートフォリオを作ってしまえるのがベストですが、プログラムをやったことがない方の場合難易度が高かったりします。
そういった方にはやはりスクールで経験してしまうのが手っ取り早いです。
ちなみに未経験で入社された方はTECH::EXPERTというスクールで学び僕の会社(自社開発企業)に転職しています。
転職してきた方に来てみたところ、TECH::EXPERTでは言語はRubyがメインでGitのようなWEB開発をする上で必須のツールも学べるようです。
TECH::EXPERTでは転職の支援もしっかり行われていて、僕の会社に転職する際にもTECH::EXPERTからの紹介で入ったようです。
カウンセリングは無料なので、興味がある方は話だけでも聞いてみると良いかもしれません。
最後に
プログラミングは非常に需要も高く、日々スキルも上がるのでやりがいがあります。
ただ人手不足もあり会社によっては残業が多くなってしまうことも事実なんだと思います。
ただ入る会社を間違えなければすごく良い職業なので、ぜひ参考にしてください。