・プログラマーって仕事きついんでしょ?
・残業ばかりで鬱病になったりしないかな…
・プログラマーって何が辛いの?
こんな悩みや疑問を解決します。
将来、プログラマーになってみたい、未経験だけどプログラマーとして転職してみたい。
でも、実際にどんな仕事をして、ぶっちゃけきついのか、きつくないのか…
知りたい人向けに、かめリーマンの実体験も踏まえ、記事にしました。
プログラマーとして生きるための真理を書いたつもりです。ぜひ、最後までお付き合いください。
Contents
プログラミング自体が嫌い→きつい、辛い
プログラミング自体が嫌いって人には2パターンあります。
前者は、マインドの問題ですから、一度はプログラミングにトライすればいいです。
それでも、生理的に合わない感じがあれば、速攻で辞めてしまいましょう。
「合わないな」と思う仕事を本職にすることは、長い人生において「最もストレスを感じる」愚かな方法だと思うのです。
後者は、プログラマーなら誰でも経験する壁です。
自分の書いたプログラムが思い通りに動かない。
バグを直そうにも、どこをどうしていいかわからない。
気付いたら半日が終わっている。納期に間に合わない、どうしよう。
上司には怒られる。「お前のところが進まないから、みんなが迷惑している」
こんなことを言われたら、お腹が痛くなって、トイレに駆け込むしかありませんでした。
かめリーマンは、こんな感じで、もうプログラマー「きついな、辛いな、やりたくないな」とぶつぶつ言っていた思い出があります。
プログラム案件できついと思う時
開発案件にメンバとして参画して、きついなと思う時を実体験をもとに列挙してみました。
お客がめんどい。
お客がそもそも作りたいシステムイメージが曖昧なことが多いです。
プログラマーたちがヒアリングして、システム化するところが腕の見せ所です。
言っていることはわかるけど、現実はそんなに甘くないです。
要望をもとに設計すると、「いや〜そうじゃないんだよな」とか「やっぱ、こうしたいんだよね」と。
とにかく、客が決めないパターンは厄介です。
プログラマーがきついと言うより、「客がきつい」パターン。
勘弁してくれよって感じだし、こちらでコントロールがしづらいのが難点でした。
他の人が書いたプログラムを改修する
これもかなりきついですね。
誰が見ても理解できるように、「コメントがわかりやすく、コーディングも美しい。。」
そんな夢のようなプログラムを改修することは、まずないです。
部長「かめのこうら君、このプログラムに新機能を追加してくれる?」
かめ「承知しました。ソースコードをもらえますか」
部長「はい、どうぞ」
かめ「部長。。コメントが全く書いてなくて、さっぱりです。設計書も見せてください」
部長「あ〜、設計書はちゃんとしたのないんだよね。一から読み解いてくれる?」
もう、最悪です。プログラマーの仕事と言うより、先輩の尻拭い。
プログラマーの醍醐味は、いかに簡潔に美しく、コーディングして、要求を満たすかです。
それが、分けもわからない、スパゲッティソースコードと一日中睨めっこ。
こんなの辛いし、きついし、まじで辞めたくなります。
残業するのが当たり前の雰囲気
繁忙期や大型案件では、組まれるスケジュール自体が余裕のないものになります。
企業によっては、スケジュールはタイトにするものだと言う意味不明な風土があることも。
9時〜18時が勤務時間なのに、デフォルトで22時まで働く雰囲気がある。
かめリーマンの会社はそうでした。
そこがデフォルト。そして、当然のようにバグが出たり、仕様変更があったりで、そこから残業が始まる。(既に18時以降は残業ですが。。)
そのくせ、「残業時間は月に80時間以内に絶対抑えろ!」とほぼ脅迫。
残業申請をしないで働くのが暗黙の了解に。さらに、休日出勤でカバーする。
プログラムが辛いのでなく、職場がつらい典型的なパターンです。
「プログラミングがきつい」と「職場の環境が悪い」は切り分けて考える
プログラマーの仕事がきついと思ったら、以下のどちらなのかをしっかりと見極める必要があります。
職場・お客の環境が悪くて、プログラマーの仕事がきつい
前項で述べたように、「プログラマーのスキル不足が関係ない」パターン。
スケジュールがタイトで残業ばかり。
客がうざくて、仕様が決まらない終日エンドレスミーティング。
チームメンバの汚いソースコードのバグ潰しをさせられる。
こう言った場合は、「頑張る」必要はありません。
職場を変えるべきです。さっさと転職しちゃいましょう。
プログラマーとして大切なのは、根性ではなく、純粋にプログラムのスキルで戦える職場を見つけることです。
プログラマーの仕事は「きつい、汚い、危険」の3Kなんて言われていますが、それは一部のブラック企業の話。
探せば、いくらでもホワイトな企業はあります。まじでたくさんあるよ。
システム開発のプロセスがしっかりと整理されており、後戻りが全然なく、チームとして開発できる、心地よい環境のホワイト企業を探しましょう。
一つの方法として、ITエンジニアやプログラマに特化した転職エージェントを利用することです。
職場の環境が原因できつい、辛いと感じているならまずは相談してみましょう。
転職したいと思っても、明日すぐにできるものではなく、時間(3ヶ月〜6ヶ月)がかかるからです。
最近は、プログラマーとして、企業に属することなく、短期間だけ企業PJに参加するフリーランスも人気が出てきました。
拘束時間が少なく、自分の裁量で進められますし、慣れてきたら在宅勤務も可能です。
フリーランスエージェントサイトで調べてみると、思った以上に多くの案件があることに気づけます。
エージェント | 詳細 | 案件数 |
ギークスジョブ | レビューを見る | 1575件 |
エンジニアルート | レビューを見る | 164件 |
Midworks | レビューを見る | 1521件 |
フューチャリズム | レビューを見る | 2238件 |
クラウドテック | レビューを見る | 7533件 |
ポテパンフリーランス | レビューを見る | 438件 |
フォスターフリーランス | レビューを見る | 347件 |
レバテックフリーランス | レビューを見る | 15503件 |
リモートビズ | レビューを見る | 11299件 |
エミリーエンジニア | レビューを見る | 612件 |
※案件数は記事執筆時点のものになります。
自分のプログラミングスキルが足りなくてきつい
職場は関係なく、自分のプログラミングのスキルが足りない。。だからきつい
こちらは、一度立ち止まってじっくり考えて欲しいです。
要求通りに動かないのは、あなたの問題なんです。
これを逃げるのは辞めましょう。
逃げたくなりますが逃げたら癖になる。
どんな仕事も壁にぶち当たります。
相手・環境依存の問題でないなら、もう一度頑張りましょう。
悩んで、苦しんで、その壁を突破した時の、快感や達成感はめちゃくちゃ気持ちいいです。
気をつけるべきは、がむしゃらに頑張ることはNGです。
バグが出たから、とりあえず手当たり次第、えいやで修正してみる。
直ってない。。また見切り発車で修正
直ってない。。永遠のループです。
これは頑張っているのではなく、時間をただ浪費してる。
サッカーうまくなりたいから、ひたすらリフティグしている。これではダメですよね。
トラップも、パスも、空間把握能力も鍛えないと。
大切なのは、どんなスキルが不足しており、何を学ばなければいけないのか、しっかりと分析すること。
カメリーマンは、プログラムのスキルにぶち当たった時にすべきことは、以下の3つに集約されると考えています。
プログラミングにおいて、「何となく」は一番危険です。
とにかくロジカルに物事を考える癖をつけましょう。
プログラムはあなたが書いた通りにしか動かないのですから。
何となく動いてくれません。
ロジカルに物事を考える癖がついたら、書き出してみましょう。
書き出すことで、その論旨思考の正しくない点を見つけやすくなります。
書き出す作業は、最初はめんどくさくて、辛いものですが、地道に続けてください。
確実に論理思考が強化され、バグの数が減ります。
プログラミングの世界は、技術革新が早いです。
1年後には、違ったやり方や、違ったフレームワークが出ていて、今のやり方は古いなんてケースもあります。
ロジカルにプログラミングするにも、利用できるツールや手法は最大限に利用する。
これが優秀なプログラマーです。
100行で動くプログラムより、10行で動くプログラムにできないか?
フレームワークを最大限に利用して、開発時間を半分に短縮できないか?
常に、最適化を目指して、新しい技術やフレームワークの勉強をしましょう。
まとめ
いかがでしたか。
プログラマーがきついには二つのパターンがあります。
1パターン目は、あなたに問題が依存しておらず、職場の環境が問題である場合。
無理してそこで働く必要はありません。
他の会社や業種に転職を考えましょう。最近流行りの「ずらし転職」です。
同じプログラマーでも、業種によって給料が全然違いますし、ホワイトな会社もたくさんある事実を知りましょう。
2つ目のパターンは、あなたのプログラミングスキルが問題で辛いパターン。
プログラマーで有る限り、日々のスキル向上は必須です。そこを逃げることなく、論理思考、アウトプットを続け、新しい技術、フレームワークの習得をしましょう。
「プログラムはあなたの書いた通りにしか動かない」
言い換えれば、あなたのスキルがあれば、自由自在。
優秀なプログラマーになれるということですね。
プログラマー | 詳細 (仕事、年収、将来性) |
推定平均年収 (フリーランス) |
PHP | 詳細を確認する | 650〜800万円 |
Java | 詳細を確認する | 650〜900万円 |
JavaScript | 詳細を確認する | 450〜950万円 |
Ruby | 詳細を確認する | 700〜1000万円 |
Swift | 詳細を確認する | 650〜1100万円 |
Python | 詳細を確認する | 750〜1100万円 |
Go | 詳細を確認する | 650〜1000万円 |
Unity | 詳細を確認する | 650〜1000万円 |
フリーランス職種 | 平均案件報酬 | 詳細 |
WordPressエンジニア | 60万円〜80万円 | 詳細を見る |
Webコーダー | 30万円〜50万円 | 詳細を見る |
フロントエンジニア | 60万円〜80万円 | 詳細を見る |
動画編集者 | 0.5万円〜1万円(動画1本) | 詳細を見る |
ブロガー | 10万円〜300万円(月収) | 詳細を見る |
データサイエンティスト | 80万円〜120万円 | 詳細を見る |
プログラミングスクール | 特徴 | 詳細 |
TECHACADEMY | ・トレーナーがマンツーマン ・転職サポートが手厚い |
詳細を見る |
DMM WEBCAMP | ・未経験者率97% ・オリラジ藤森さんも受講 |
詳細を見る |
Code Camp | ・1コマ40分のマンツーマン ・約200人の中から講師を選べる |
詳細を見る |
TECH CAMP | ・マコなり社長が創設 ・本田圭佑さんも受講 |
詳細を見る |
侍エンジニア | ・マンツーマン ・完全オーダーメイドのカリキュラム |
詳細を見る |
KREDO Online Camp | ・英語で講義 ・グローバル企業への転職サポート |
詳細を見る |