プログラマーになる前はプログラマーとして活躍する人をイメージして希望を抱いていたという人も多いでしょう。
僕も未経験からプログラマになったばかりの時は、プログラマとして仕事できることがうれしく、仕事している自分カッコいいかもと思っていました。
しかし、僕も多くの未経験者が感じる「つらい」、「きつい」、「辞めたい」という気持ちは理解できます。同じように感じたからです。
未経験からプログラミングを始めると、多くの人がどのような気持ちになるのか、どう対処し克服するのかについて僕の経験から書いていきます。
未経験プログラマーが「つらい」と感じる理由
未経験からプログラマーになると、早く現場に慣れて与えられた仕事をこなして一人前のエンジニアとして成長したいと思っているはずです。
しかし実際には「つらい」と感じることが多く、悩んでいるプログラマーも多いです。
どのようなことにつらいと感じるのでしょう。
お給料は、仕事をした対価としても貰うものなので、仕事ができないと申し訳ないという気持ちがうまれるためつらくなります。
周囲の人たちが次々とタスクをこなしていく中で自分は簡単なタスクも終わらせることができない。頑張って勉強してきたつもりなのにできなくてつらい。このように感じる方は多いと思います。
少々厳しめの現場だと「なんでそんなこともできないの?」という言葉を投げかけられて心が折れそうになります。
未経験からプログラマーになった人が仕事を始める場合、メンターと呼ばれるサポート役の上司を付けて相談できる環境で仕事をさせるというのが理想ですが、きつめの企業だとメンター自信もかなりのタスクを振られているため経験が浅い方の面倒がみれないといった状況になりやすいです。
そうすると、プログラミングに一人で悩みつらくなってしまうということが起こってしまいます。
未経験プログラマーが「きつい」と感じる理由
プログラマーになり仕事が「きつい」と感じる時はどのような時でしょう。
仕事ができない時、つらいという気持ちなるということを上で書いていますが、仕事ができない場合、自然と可動が高くなりやすいです。
例えば、Aというタスクを誰かにアサインする場合、3日くらい予定しておけば大丈夫かなと計画を立てます。しかし経験の浅いプログラマーが3日で終わらせるためには5日分くらい仕事しないと終わらないかもしれません。
本来は経験の浅いプログラマーにタスクを与える時点でリスケしたり、経験者がサポートすることを前提でそのままタスクを与えたるということはよくありますが、実際は本人に期待して任せることが多いでしょう。
その結果、成果を出したい未経験プログラマーは3日で終わらせるために、残業はもちろん帰宅途中や休日でも仕事のことが気になったりして、きついと感じてしまいます。
ここでいう「きつい」は労働時間の長さという点が原因で肉体的にきついということ、また休日なども仕事が気になりゆっくりと休めないという点から精神的にきついの両方の意味があります。
未経験プログラマーが「辞めたい」と感じる理由
上であげた「つらい」、「きつい」という気持ちが続くと、「辞めたい」という気持ちになります。
それでも自分が成長している、周りのエンジニアたちがサポートしてくれている、そのような恵まれた環境で仕事ができている方であれば頑張れると思います。
辞めたいと感じる原因は、経験あるエンジニアのサポートがないというのが原因の一つです。
負の感情に負けずにプログラマーとして続けていく秘訣
負の感情、つまりここでいう「つらい」、「きつい」、「辞めたい」という気持ちに勝つのは簡単です。
僕の経験ではこの感情が続くのは、1年程度です。つらい状況に耐え、きついという状況に慣れ、辞めたいという気持ちはなくなります。
なぜ1年で状況がかわるのかというと、プログラマーとして悩みながら仕事を続けた結果、成長したからです。
プログラマーとして続けていく秘訣はつらい、きついという気持ちに1年耐えれば、そのような気持ちは消えるということを知っていることです。
いつまでもつらい、いつまでもきついのであれば、辞めたくなるのは普通です。けれども1年限定であれば耐えられるのではないでしょうか?
もちろん1年間、ただつらいと思って過ごすだけではありません、成長するという気持ちで必死に仕事に取り組む必要があります。
僕が会社員だった時、部下に新人のプログラマーがいました。その子のメンターがとても言葉がきつく、ヒアリングするといつもつらいという話をしていました。
それでも10ヶ月くらいで仕事が楽しい、もっと成長できるプロジェクトに入りたいという発言にかわりました。
プログラマーとして成長すると仕事が楽しいのです。未経験のプログラマーの方、これからプログラマー目指す方は1年は続けてみましょう。
未経験プログラマーに必要なスキルは技術以外にある
コミュニケーション能力が最大のスキル
実はプログラマーとして成長が早い人は、技術的にセンスがあったり吸収力が高かったりするだけではありません。
未経験のプログラマーがつらさやきつさをなるべく感じないで続けるコツみたいなものがあります。
それはコミュニケーション能力です。問題にぶつかった時、コミュ障の場合は一人で悩み苦しみます。結果、時間がかかりますが成長に繋がるということはありますが、その間はつらいです。
コミュニケーション能力が高い場合、さりげなく周囲の方に聞けるため、それほど苦しまずに問題を解決していくことができるのです。
エンジニア職の人はコミュニケーションを取るのが苦手な人は多いです。その中で自分から当たり障りなく声をかけて問題や悩みを伝え、アドバイスをもらい問題を解決できるというのはすごいスキルだと思います。
先輩社員に気を遣うのは当然ですが、普段から話しやすい環境を作ったり、悩んでいる時に声をかけてもらえるような人間性が未経験プログラマーにとっては大きなスキルになると思います。
プログラマーはどのような職業なのかを理解している
プログラマーを目指す人はプログラマーが実際どのような悩みがあり苦労しているのかを知らない人が多いです。
けれどもプログラマーという仕事は、タスクを日程通りこなしていくのが大変である、残業が多い、慣れるまでは辞めたくなるくらい大変な職業であるということを理解してプログラマーになったのであれば、実際にそのような状況になっても、これは最初からわかっていたからと、それほどつらい、きつい気持ちにはならないはずです。
教えてもらうという気持ちでいられるのは社会人未満まで
勘違いしている新人のプログラマーにありがちなのが、仕事ができない理由は誰も教えてくれないからと人のせいにする人。
社会人で仕事としてプログラミングしているのであれば、人に教えてもらうのは当然と思わないことです。
問題が出てきたらググる。できるなら自分で解決できる方がよいです。ただ解決できないで何時間も悩み解決できないのであれば、聞く方が良い選択になるかと思います。
人に聞くのが悪いというわけではありませんが、経験が浅いから教えてもらうのが当たり前という気持ちがよくありません。
その点を理解してプログラマーとして仕事してみると良いと思います。学生とはわけが違うという点を間違わないようにしてください。お金を払っているなら教えてもらって当然です。そういう世界です。
まとめ: 未経験からプログラマーはつらい?きつい?辞めたい?
未経験プログラマーがつらい、きつい、辞めたいと思う気持ちがあるというのは本当です。僕もつらい、きついまでは経験しました。
それでも辞めたいという気持ちまでならなかった理由は、プログラマーという仕事は簡単ではないというのを理解していたからだと思います。
システムの開発技術は移り変わりが早く、一生勉強が続くということを覚悟していました。最初の1年で仕事の仕方を理解し慣れることはできました。
けれども、勉強をずっと続けていくのを理解していないでプログラマーになっていたら、勉強つらい、大変を思って辞めたいという感情が生まれていたかもしれません。
最初からプログラマーという職業について理解しているかで、苦しさや大変さは変わってくると思います。
まずは自分がなりたい職業、エンジニアでもいろんなエンジニアがいますが、よく調べて仕事についた後にどのようなことが大変なのか調査することが大事かと思います。