入社して2週間で現場で働くことになりました。その経験から学んだ4つのこと【新人SE】

スポンサーリンク

SE
この記事は約6分で読めます。

お世話になります。山ネズミ(@yama_nzm)です。

会社に入社すると「新人研修」を受けることになると思います。

会社でのルールや仕事内容などを先輩方から教わる貴重な機会です。

私も例にもれず、まずは開発環境や社内ドキュメントの把握などに取り組みました。

ところが、入社してわずか2週間にして現場で働くこととなりました。

この記事ではその時の体験談と、そこで学んだことについて書かせていただこうと思います。

スポンサーリンク

■SEとしての第一歩

これは、IT会社に初めて入ったときのことです。

入社の挨拶を終え、自分の席についたときからSEとしての人生が始まりました。

業務用の(重い)ノートパソコンを与えられ、初期設定を行いました。

自作PCを趣味としておりましたので、OSの設定から社内で使用するソフトウェアの導入までは難なく進めることができました。

その後、プログラミング(VB.NET)とSQLの研修に取り組むこととなりました。

当時は先輩に聞けるほどの積極性はなく、ひたすらネットで調べながらプログラムを組んでいきました。

新人研修をこなしながら早2週間が経過しました。

プログラムの基礎はおおよそ理解し、会社の人とも馴染み始めた頃でした。

研修担当の先輩から、以下のようなお話しがありました。

現場で仕事をしてみないかい?人手が足りないんだ。

内容としては、開発中のシステムにデータを入力し、バグを見つけるというものです。

わずか2週間で客先常駐をすることとなりました。

何事も経験だから。よろしくね!

■現場では意外と仕事がない

現場に着くと、まずは顧客側の担当者との挨拶を行いました。

その後は仕事内容が伝えられ、早速データの入力をしていきました。

ガンガン仕事を振られていくと思いきや意外とやることがありませんでした。

たまに課題を与えられるものの、すぐに終わってしまいます。

新人だから、より大変な仕事は先輩方が処理するために飛んでこないのだろうかと思いました。

「なにかやることはありませんか?」とおっかなびっくり聞いてみますと、「わかった。任せられそうな仕事を振るよ」と疲れた声で返ってきました。

その後、レスポンスはありませんでした。

顧客に捕まってしまったのか、新人に振れるような仕事がなくなってしまったのか・・・。

仕方がないので、自分でプログラミングやSQLの学習を続けることとしました。

■次の現場では活躍ができた

現場で働くようになって3週間くらいが経過したでしょうか。

結局私には十分な仕事を与えられることはありませんでした。そんな折、私宛にメールが届きました。

「F案件の導入を手伝ってほしい」と。

地方の顧客相手の案件であるため、SEとして初めての長距離出張となりました。

その現場ではまさにシステムの稼働直前でした。

デバッグ、帳票の数字合わせ、粗利補正など。

いよいよ稼働に向けての追い込みが繰り広げられておりました。

その現場では前の現場と比べ物にならないくらいに仕事が舞い込みました。

主に旧システムと今回導入する新システムとでまったく同じデータを入力し、出力された帳票を突き合わせて売上金額や粗利といった数字に齟齬がないかをチェックするという役割を与えられました。

私はとにかく数字の比較を慎重に行っていきました。

キミのチェックは正確で助かるよ!

前の現場では到底聞き得なかった言葉をいただけました。

そうなるとモチベーションも上がるというものです。

一方で、プログラムのデバッグも少々行いましたが、当時はpingコマンドすらもわからなかった状態にもかかわらず専門用語での指示がバンバン飛んできました。

わからないものは仕方ありませんので、不明な専門用語を聞くたびに「それどういう意味ですか?」と聞くことにしました。

「そんなこともわかんないのかよ」と言われることはなく、余裕がないのにもかかわらず丁寧に教えてくださりました。

デバッグ時にエラーを吐けばその原因を追究し、修正。

その修正が原因で発生したバグをまたつぶす。「ああ、これがSEか」と心の中でつぶやきながらも黙々と数字を合わせていきました。

導入が終わるころには一通りのネットワークコマンドと会社のシステムの開発環境構築、デバッグができるようになっておりました。

また、システムに関わるデータベースの知識も十分に身につきました。

導入が終わって会社に戻ると「現場でも動ける」ということを評価され、様々な案件に参画させていただけるようになりました。

この経験により、自分の立ち位置を確立することができたのです。

■現場に送り込まれて学んだこと

・実際に動いているプログラムを直すことでスキルが上がる

教科書にあるテストプログラムを組んで動かしても、それは動いて当たり前のことです。

一方、実際に動いているプログラムに機能を追加した場合、追加したものが素直に動けばよいが経験上7割は動きません。

そのときに「どうして動かないのか」をデバッグしながら詰めていきます。さながら証拠を集めて犯人を追い詰める探偵のように。

デバッグを繰り返していくと想定通りの動きをさせられるようになります。

そうして、プログラミングのスキルを身に着けていきます。

・失敗しても、元に戻す手段はある

間違えて正常なプログラムにテストプログラムを上書きしてしまい、動かなくなってしまったことがありました。

「やってしまった・・もう終わりだ・・」と思っていた矢先に過去のバージョンからプログラムの復元が行われていました。

プログラムはバージョン管理の機能があり、以前のバージョンを復元することができます。

もちろん、その機能を事前に導入しておく必要がありますが、導入していない会社は開発会社として失格といえるほど基本的なものです。

上書きしたらそれまでと思っていましたが、バージョン管理という要素により致命的な上書きを防ぐことができるということを学びました。

・もっと知識を得ようと思う

現場で作業しているときに感じるのは「足手まとい感」です。

「もっとこういう知識があれば役に立てるのに」と思うことがあります。

例えば、RPGゲームでも強敵が現れて進めなくなったとしますと

「どうやったら倒せるだろう。レベルが足りないのか?」
「装備を整えてみよう。お金がないから稼ごう」
「弱点は何だ?いろいろな属性で攻撃してみよう」

といった試行錯誤をするはずです。

いずれにせよ、「レベルアップをしたいと思う気持ち」が大事です。その気持ちがあれば実力を付けるのは難しくありません。

・SEだけでなく、顧客側にも協力を依頼する

ベテランSEでも、どうにもならないバグが見つかることがあります。

それが運用上クリティカルに影響するものであれば全力での対応が必要となります。

スーパープログラマーとして名高い先輩SEであっても頭を抱えるバグ。

とはいえ、それに囚われていては先に進むことはできません。

そんなときは「顧客側の運用でカバーしていただく」ようにします。

例えば、以下のように対応をお願いします。

・ある文字列を入力してバグるのであればそれを入力しないようにお願いする。
・数字が1合わないのであればそれを前提に入力してもらう。

技術者としては当然プログラム修正をするべきではありますが、なにより大事なのは顧客の業務を止めないことです。

プログラムは後日修正したものをリリースすればよいので、一時的に顧客側でカバーしていただく場面も必要となります。

■まとめ

入社して2週間で現場で働くことになりました。その時に学んだことについてまとめます。

・本番プログラムのデバッグでプログラミングスキルは向上する
・失敗しても元に戻せるのでとにかくやってみる
・必要な知識が判明したらその勉強方法を考えて、実践する
・システムの導入には顧客側の協力も必要

ここで伝えたいことはオフィスで黙々とテキストに取り組んでいるだけでは実力あるSEにはなれないということです。

いくら知識があっても、それを実践で活かせなければ宝の持ち腐れになってしまいます。

どこでどういう知識・技術を使うのかは現場でないとわかりません。

もし、入社してすぐに現場で働くような機会があるのでしたら、是非先輩の知識を盗みつつ自分にできることを実施してみてはどうでしょうか。

以上です。

スポンサーリンク

スポンサーリンク

SE
山ネズミをフォローする
My Calm Life

スポンサーリンク

タイトルとURLをコピーしました