新人ITエンジニアの1人客先常駐サバイバル術

はじめまして、
都内の中小SIerで働いているこうくんといいます。
私は新卒1年目で1人客先常駐を経験し、最初何もできない状態から現場で孤軍奮闘し、学んでいったことについて話そうと思います。

この記事の対象読者

  • ITエンジニアを目指そうと思っている方

  • ITエンジニアなりたての方

  • 客先常駐型の働き方でスキルアップしたいと思っている方

  • フリーランスを目指されてる方

書いた人について

エンジニアになる前のスペックはFラン文系大学の学生です。就活の面接で50社落ちましたが、状況を打開するため4年生の10月ごろ新規営業のアルバイトを開始して“ガクチカ”をつくり中小SIerのエンジニアとして採用していただきました。
2021年4月から2022年12月までで経験したことは、WEBシステムにおけるフロントエンド、バックエンド、バッチ処理、DBの開発です。また現在はサブリーダーとしてメンバーの質問対応やフォローなど開発プロジェクトをリードする経験をさせていただいております。

入社後の流れ

研修→HP制作→請負開発案件→客先常駐の順番で進んでいきました。

研修

新卒で入社して4ヶ月間は研修を行って頂きました。最初の2ヶ月は自社でのプログラミング基礎研修。次の2ヶ月は社外でJava研修がありました。
私はプログラミング未経験でしたが、研修での成績が配属先を決める試金石だと考え、技術を習得しようと平日夜や土日に予習・復習を行って内容を理解し、研修でつまづいている同期に教えたりなどして成長していきました。結果、社外のJava研修ではプログラミング経験者もいる中で35人中2位の成績でした。
ここで成績が良かった理由は物怖じせず講師の方に生徒の中で1番多く質問したことだと思います。
今後も新人エンジニアの重要なポイントとしてコミュニケーションを多く取る人が出来るエンジニアに成長してると思います。

HP制作

研修が終わった後、アサインされる案件が決まるまで2ヶ月ほど待機期間がありました。待機期間中に自社のホームページ制作(改修)を行いました。追加するページのデザインの考案とPug&Sass(HTML&CSS)でコーディングさせていただき、WEBアプリケーションのフロントエンド開発を行う基礎技術が身につきました。

請負開発案件

最初に入った案件はVBAマクロツールの作成業務でした。社長から研修での成績が良かったため最初の配属先として開発経験を積むために入れていただいた案件です。先輩と2人で開発という小規模のアジャイル開発でした。この期間で要件定義、外部設計、内部設計、製造、テスト仕様書、実行マニュアルなど一連の開発工程の経験を積ませて頂きました。

客先常駐案件

Javaの案件と聞いて入った案件です。新人エンジニアとして一人で客先常駐だったため、そこで経験し学んだことを皆さんの参考になるように書いて行きたいと思います。

  • 案件面接

  • 現場初月

  • 別の協力会社さんにタスク巻き取ってもらう事件

  • 毎朝地獄の成果無し進捗報告

  • プロジェクト大炎上事件

  • プロジェクトでの活躍

  • 自社のエンジニアの増員オファーをいただく

  • 設計を任される

  • サブリーダー就任

案件面接

今いる現場での営業さんが取ってきた自社では初めてのお客さんだったため、現場の方との面接がありました。
Javaは研修でしか経験がなかったものの営業の経験を活かしてプレゼンし、無事受かりました。
案件の面接で聞かれることのポイントとしては、この技術使ったことありますか?程度の質問までしか来ないということです。深く例えばJavaのカプセル化ってなんですか?みたいな質問はほぼ来ないので用語まで暗記してなくても大丈夫です。なので現場に入ってスキルアップしていきたい方は、苦手な技術や未経験技術が必要と言われたとき、自分に自信もって出来ます!あるいはすぐ出来るようになります!と答えてしまっていいと思います。

現場初月

さあ、ここからが地獄の始まりです。新人1年目で一人で客先常駐になりました。みなさんは新人が「一人常駐してきてくださいと言われたらどう思われますか?」
「どんな人がいるかわからなくて怖すぎる」「一人で心細い」「開発経験乏しい自分が1人で仕事できるか不安」など、
少なくとも私はそう感じていました。
何よりも、何をするのか?何も分からない自分が入って仕事なんてできるのか?という不安がありました。

別の協力会社さんにタスク巻き取ってもらう事件

Linux、パソコンに詳しい人が使う黒い画面の操作。私はLinuxの経験さらに言えば黒い画面の操作をしたことがありませんでした。
なので黒い画面は一体なにか?どうやって操作するのか?調べる所からスタートです。でも調べていたら間に合いません。
結局できず、しかも別の協力会社の方に声をかけていただき、金曜日の夜21時に仕事を巻取ってもらってもらいました。

毎朝地獄の成果無し進捗報告

要件定義PoC検証フェーズで試作品を担当させていただきました。現行のフレームワークを新しいものに置き換える非互換調査です。
しかし現行のフレームワークと新しいフレームワーク両方全く理解できていない状況でした。また、その現場でも現行は知っていても新しいフレームワークは知らないという人ばかりだったため、基本的には自己解決をしなければならず、エラーとの格闘の日々でした。この時毎日、朝会がありましたが、このエラーが解決できず画面を表示できていません、この機能が動きませんと成果が出ていないという報告ばかりで胃が痛くなる思いでしたが、徐々に理解できてお客さんも優しかったのでそのまま最後まで任せていただきました。

プロジェクト炎上事件

メンバーの開発経験が1年未満が多い、管理がしっかりされていない、障害対応などで人員が引っ張られるといったトラブルが続き結合テストでバグが大量に出て炎上しました。そのバグを解消できる人材が少なかったためテストの実施が遅れてしまいました。

炎上プロジェクトでの活躍

初めに担当したプロジェクトの結合テストフェーズ入ったときです。エラーやバグが大量に発生し、メンバーのその現場での開発経験が1年未満の方が多かったため、バグ対応できるエンジニアさんが少なく収集がつかない状態になりました。その時、私がエラーやバグの対応技術が上がっていたため各所から上がってくるJavaのバグ対応をほぼ1人で行いました。

自社のエンジニアの増員オファーをいただく

こちらのバグ対応などプロジェクトに貢献しお客さんから高い評価頂き、自社から募集枠を1枠拡大させました。またその1枠には経験16年のベテラン技術者が加わりましたがうまくコントロールして、業務を遂行しました。

サブリーダー就任

試作品の作成などをしており、技術に関してはある程度答えられるので質問対応出来ますとマネージャに伝えて、サブリーダーとしての業務を任せていただきました。
サブリーダーとして業務内容は、使用技術の選定、開発工程を先回りし技術的な課題の解消、チームメンバーのフォローや質問対応、チームの雰囲気作り、自社メンバーのタスク管理など経験させていただきました。
仕様書の考慮不足に質問を捌いていく業務です。大変だったことは、全ての質問に適切に回答していかないといけないことです。しかし、質問を返す中で成長し、業務を先回りして行い、エラーなどの対応ノウハウを蓄積してメンバーに流すというテックリード的な動きを経験させてもらい、技術力が向上しました。楽しかったことは、メンバーに声をかけていきチーム全員と仲良くなれたことです。

リーダーとして上手く行ったこと
質問が来て適切な回答をするように心がけ少しでも分からないことは質問出来るようになったこと。チャットや、初めましての挨拶するときにメンバー気軽に質問してくださいと伝えたことや大丈夫ですか?と声かけしたりなどこちらから積極的にコミュニケーションをとりに行ってチームのコミュニケーションを活発にするよう働きかけなどできたことは非常に良かったと思いますし今後もやっていきたいです。
リーダーとしてもっと出来るようにしたいこと
仕様書の詰めきれずPG対応期間中に仕様書の修正を何度か行ってしまったため、仕様書作成の最初の段階で減らせるように頑張って行きたい。
責任を自分が持ち過ぎないよう責任を分散させることを心がけないと自分1人の責任にされてしまいお客さんからの信頼を失ってしまうので気をつけないと行けないと思いました。

客先常駐サバイバル術

客先常駐で生き残る方法は唯一つの方法はバリューを出すこと!

私が意識しているバリュー

  • 技術のキャッチアップスピード

  • チームの課題を考えながらコミュニケーションをとって動くこと

  • 炎上を捌く稼働時間の柔軟性

  • 任された仕事はなんとしてでもやりきること

ストイック過ぎるかもしれませんが、お客さんやチームに重宝される働きをすれば、自分を切るという経営判断は基本されません。

技術のキャッチアップ、チームの課題を考えながらコミュニケーションをとって動く

チームに重宝される人材になる方法は、どうやったらチームの技術力に追いつけるか?チームに自分の付加価値をどう提供するか?そう考えて効率よく1週間を乗り切る作戦を練ることです。

出来ない分からないことにぶつかった時の対処方法

まずはわからない単語をググる。次に資料を連携して欲しいとお願いする。資料を読んでわからない部分をメモにピックアップして現場の人に聞く。あるいは課題一覧という、技術的な課題や、詰めきれていない仕様に関する質問を書く表がありそこに質問を書きその分野について分かる人に聞いて仕事を進めます。私は現場の中で沢山質問を出す方ですが、一人称で開発できるとは質問をしないで進められるとは違うと思います。わからないことをわからないから教えていただきたいですとアクションを起こせることが一人称で開発できることだと思っていて、わからないことをうんうんしてしまい大丈夫ですか?と声をかけられることが1人称で開発できないことだと思います。どんなに10年選手のベテランでも参画初期は技術でわからないことやバグが解消できないときは質問をします。

客先常駐でスキルアップしていく方法

元請け社員やチームで入っているベンダー自社の社員を育てようとしてくれますが、一人常駐は誰も育ててくれません簡単にスキルアップできません。ですが、私はスキルアップをして一人にも関わらずサブリーダーポジションで働いています。なぜそのような仕事を任せて貰えたか?自分からこの仕事やりたいとPMや他のベンダーさん達に言ったからです。
やる気があって、実績を積んできた人に仕事は与えられます。これはフリーランスでもSESでも派遣でも正社員でもやる気と任された仕事に責任感を持っていると認められれば、未経験のタスクでも任せてもらえるので、客先常駐という働き方でもスキルアップして行けます。

ITエンジニアになって良かったこと

ITエンジニアという職業の好きなところは3つあります。
1つ目は実力主義なので仕事ができる人なら、正社員・SES・フリーランス・経験年数・年齢関係なく仕事を任せてもらえるところです。そのため現在の働き方はSESとして客先常駐ですが、自分のペースに合った成長ができており毎日楽しく仕事させていただいております。
逆に言えば実力主義なので仕事ができなければ契約打ち切り、あるいはスキルが付きづらい仕事を永遠と振られるなど残酷な面があるのがエンジニアという仕事です。
2つ目はプログラミングという脳みそが沸騰するくらい考えて、自分で考えたロジックで実装出来た時が楽しいです。ロジックが複雑で難しい程読みといた時の達成感があって楽しいです。
3つ目は色んな仕事が出来る所です。フロント、バックエンド、DB、バッチ処理、サーバー構築など同じプロジェクトでも色んな仕事があり、プロジェクト事に仕事が変わっていくことに飽きが来ないという楽しさがあります。

終わりに

エンジニアにとって一番大事な仕事の能力だと思うのは先回り力だと思います。返信の速さ、ミス失敗に気づいて報告する速さ、エラーバグ解消の試行錯誤の速さ、成果物提出の速さがスキルの成長を加速させます。
ミスや失敗を先回りしてリカバリーするスピードを仕事で発揮することが重要。新人エンジニアは経験、知識が乏しいためタスクの高速消化、高速報連相で成果物の品質を上げていく必要があります。
あとは疲れたらしっかり休むことですね。過労で頭が回らないのでお休みいただきたいです。」と伝えれば休ませてくれます。メリハリはつけること!
あなたもスキルシートに経験を埋めていく、ロールプレイングゲームとしてエンジニアという職業を楽しんでみてはいかがでしょうか?
ではまた!

この記事が気に入ったらサポートをしてみませんか?