はじめに
今回は初心者エンジニアの人が陥りがちな時間の使い方と、それに対する効果的な対策について自分の体験談とともに述べたいと思います。
これは初心者のみならず、ある程度経験を積んでいるエンジニアにも有効な方法だと思いますので良ければ見てみてください。
半日悩んでいたことが1分で解決した話
私は今年、新卒でエンジニアとして配属され、研修の一環としてプログラミングをしていました。
実装をしていくうえで、思った通りにコードが動かないということは多々ありましたが、元々大学でプログラミングを習っていたこともあり、大抵は自分の力で解決できました。
しかしある時、どうしても原因のわからない問題が発生しました。
エラーが発生してしまうまでの処理を1つ1つ追っていき、処理の度にそれぞれの変数の値を確認し、エラーの発生する1つ前の処理までは正しく動いていることがわかっていましたが、なぜかその次の処理に移る段階でエラーとなってしまうのです。
結局半日かかってもエラーの原因がわからず途方に暮れてしまったため、同期に一から状況を説明し、原因を一緒に考えてもらうことにしました。
そして、自分の実装している機能を1から説明し、エラーが発生するまでの処理を1つずつ丁寧に説明していくうえで、あることに気が付きました。
これ、変数名を間違えている以外に原因が考えられなくね?
そして、変数名を確認してみると、見事に変数名を間違えていたことが判明し、結局相談してから1分も経たないうちに自力で解決してしまいました。
人に説明することの大切さ
今回、私が変数名のミスに気付くのまでに半日もかけてしまった理由として、こんなところで間違えないだろうという先入観があったからだと思います。
しかし、実際にはこういうところにこそミスが発生しやすいと思います。
プログラミングを一人でしていると、何となくわかった気になってしまっていることや、無意識に確認を怠ってしまうことなどがよくあると思います。
しかし、人に状況を説明するためには、自分の中では当たり前の前提や、自分ではわざわざ詳しく確認していなかった部分についても丁寧に解説する必要があります。
こうしてもれなく丁寧に状況を説明していくことで思考が整理され、まだ確認していなかった部分に気づいたりするのです。
困ったら人に頼ろう!
個人的にエンジニアの人にありがちだなと思うのが、なるべく人に頼らず自力で何とかしようとすることです。
もちろんそれは素晴らしい姿勢だと思いますが、どうしても一人で実装をしていると視野が狭くなってしまいがちです。
今回のように、半日もかけて原因究明していたことがただの変数名の間違いだったと気づいた時の喪失感は計り知れません。
自分でいろいろ考えて解決しようとする姿勢は大事ですが、困ったら人に頼るというのもエンジニアに必要なスキルなのかなと思います。
おわりに
今回は、私と同じ苦しみを味わうエンジニアが1人でも減ればいいなと思い、この記事を書きました。
みなさんはぜひ、適度に人に頼りつつ立派なエンジニアになってください。
最後までお読みいただきありがとうございました!