プログラマーとして働く際に大事な3つのこと(実体験)
前回の記事では、「プログラミングの基本である戻り値や関数」について解説していきました。
今回は、新人プログラマー向けのアドバイスを3つ、理由を交えてお伝えしていきます。
以前の記事で、「実務未経験でもプログラマーになったら製造工程に携わるべき」ということをお伝えしました。
しかし、これは結構ショック療法というか、ハイリスクハイリターンであることも事実なので、そのリスクを出来るだけ減らすためにも、今回のアドバイスを参考にしていただければ幸いです。
(SESで働く人前提で書いていますが、新人プログラマーの方にはほぼ当てはまる内容かと思います。)
- まず質問しやすい、かつ分かりやすく教えてくれる先輩社員を見つける
実務経験が浅いと、間違いなく最初は分からないことだらけです。プログラミングの知識だけでなく、仕事で使うツールの使い方や、そのプロジェクト内のルールなど、様々な知らないことを吸収していく必要があります。
その時に、質問しにくい相手に何度も質問するのはお互いストレスです。また、プログラミングの知識が豊富な人が、必ずしも初心者に対して上手に教えられる人であるとも限りません。教えている本人は分かりやすく教えているつもりでも、聞いている側にとってはわかりづらい、ということはものすごく多いです。(賢い人が良い先生になれるかどうかは別、ということですね)
でも聞いている側としては、分かりづらいからと言って何度も繰り返し同じ質問をするのは気が引けてしましますよね。その結果、正しく理解出来ていないことは分かっていながら、何となく返事をしてしまい、結局問題を先延ばしにして後でよりまずい状況になってしまう、ということが起こります。
こうなると多くの場合、「なぜちゃんと質問しなかったのか」、「なぜ教えた通りにやらなかったのか」と責められます。責められるとより萎縮し、自信がなくなり、質問する勇気すら湧いてこなくなります。まさに負の連鎖です。
これを防ぐためにも、自分が質問しやすい、教え方の上手な先輩を見つけましょう。
- 何かあった時に相談出来る相手を作っておくこと
出向先によっては残業がものすごく多かったり、パワハラじみたことをしてくる上司がいたりすることもあると思います。
そんな時に、出向先、自社の人間でそのような状況を相談出来ないと、「自分に技術が無いからこの環境で我慢しないとしょうがないんだ」「この環境ですら頑張れないと自分が働ける場所なんか無いんだ」とどんどん自分の首を絞め、過剰なストレスを抱えることに繋がります。
出向先の人がどんな人なのか分からないし、相談した結果上司に報告されたり、評価を下げられたりするのでは、と心配するくらいなら、自社の人間で相談相手を見つけておきましょう。
もし自社の人間に相談した結果、親身に話を聞いてくれなかったり、「技術が無いあなたが悪い」と言われたりするようなら、転職を考えた方が良いかもしれません。
もちろん技術を身に着けないといけないのは当然ですが、それを差し引いても我慢しきれないような環境であることを真剣に相談し、その相談すら自己責任だと言ってくる会社は、おそらく何かあっても助けてくれません。
また、これは少し厳しい意見ですが、そこまでストレスを抱えながら、本気でやっても出来るようにならないことなら、別のことに挑戦した方が良いのかもしれません。向き不向きはありますし、どうしてもプログラミングを続けたいなら、趣味でやれば良いだけの話です。
仕事としてやらないとプログラミングスキルが身につかないということも無いと思うので、やりたいことなら好きなように、ストレス無く楽しみましょう。
- 一度聞いても分からないことは理解出来るまでとことん聞く
1つめのアドバイスに付け加えようかとも思ったのですが、大事なことなので分けておきました。
プログラマーとして働いている中で、他の業種では全く触れなかったような知識や概念に触れることがたくさんあります。当然分からないことがあった場合、先輩に質問しますが、一度説明されただけではどうしても理解出来ない部分が出てきます。
そんな時に一番やってはいけないことは、「何となく空気を読んで分かったフリをすること」です。一度理解したと言ってしまうと、もう一度同じことを質問しづらくなります。
説明されて少しでも分からないことがあれば、
「○○とは、~~ということで合っていますか?」
と確認するようにしておくと、相手にも自分の理解度を知ってもらうことが出来、間違っていれば指摘してもらえるのでオススメです。
「すみません、分からないのでもう一度教えて下さい」
と言ってしまうと、先輩は自分が何も理解していないのだと捉えるので、最初から全部説明されるか、「自分で調べろ」とさじを投げられます。
一度しっかり理解すれば、もし忘れてしまったとしても調べて理解出来るようになったり、途中まで説明されたらわかるようになります。
同じ質問を何度も繰り返してしまう人は、記憶力の問題ではなく、そもそもの理解度が低い可能性があります。理解していないことを記憶しておこうと思うと「丸暗記」のようになるので、記憶することがぐっと難しくなります。
終わりに
ここまで書いてきたことは、自分自身が意識してきたことに加え、プロジェクトの内容に付いてこられなかった元後輩の様子も参考にしました。
プログラマーになるにはプログラミングスキルが一番大事、と思っている方は多いと思いますし、自分もそう思っていました。もちろん大事なのですが、高いプログラミング能力を持っていたとしても、質問や相談出来る相手がいなかったり、分からないことをそのままにしてしまうようなタイプは苦労するのではないかと思います。
相手に正しく聞きたい内容を質問するためにも、自分が考えていることをしっかり言語化する習慣も付けておく必要があります。だからこそ、プログラマーとして働く際、コミュニケーション能力が必要と言われるのでしょうね。
最後まで読んでいただきありがとうございました。
今後もプログラミング学習やプログラマーとしての仕事、副業に関することなどを中心に記事を書いていきますので、良ければ読んでいただけると嬉しいです。
Twitterもやっていますので、気軽にフォロー・リプライください。質問などもしっかりお答えします。