システムエンジニア(SE)を目指す人「SEを目指している。SEになってから失敗するのは怖いので、SEになる前にSEの失敗談が知りたいな。できれば現役SEの人に教えてほしい」
こういった疑問にお答えします!
この記事を書いている私はSE歴9年ほどの現役SE。今まで様々な失敗をしてきました。今でも失敗することはよくあります(笑)
システムエンジニア(SE)を目指しているあなた。新しいことへのチャレンジ、素晴らしいですね!
でも、いざSEになってから、失敗するのって怖いですよね。
実際にSEになる前に、現役SEの失敗談を知りたいと思いませんか?
というわけで、本記事では、SEの失敗談が知りたいあなた向けに、現役SEの私が、実際にやらかした失敗談について、解説していきます。
本記事を読めば、現役SEの失敗談からどういった対策をすればいいかがわかりますよ。
3分ほどで読み終わるので、ぜひ最後までお付き合いください。
それでは下記の順番で進めていきます。
- 現役システムエンジニア(SE)の3つの失敗談【すべて実話】
- システムエンジニア(SE)の失敗を防ぐ方法【現役SEがやっていること】
現役システムエンジニア(SE)の3つの失敗談【すべて実話】
私が実際に体験した失敗談は下記の通り。それぞれ解説しますね。
- 適当な見積もりをした結果、毎日残業
- お客さんの要望と全く異なる機能を開発
- 出来ます!と声高らかに言った機能が動かない
適当な見積もりをした結果、毎日残業
SEとして働いて半年くらいのときにやったプロジェクト。既に開発済みのシステムの一部をカスタマイズするという内容でした。
先輩に「とりあえずどのくらいかかるか見積もってみてー」と軽く言われ、なんとなく適当に見積もった結果「2ヶ月あれば出来ます!」と先輩に報告。
先輩は私が出来ると言った期限でお客さんと納期を決めました。
というわけで「やるぞ!」と思い、開発を始めてみたものの、終わりが見えない…
残業して頑張って終わらせようにも、SE歴半年の若造には、そもそもどうやってやればいいかがわからず悪戦苦闘。
ヤバいと思いつつも、「最後は先輩が助けてくれるはず」と、楽観的に考えていました。
しかし、思わぬ出来事が、なんと、納期の2週間前に先輩が急に会社を辞めることに…
「頼れる先輩はいない、納期は2週間後、でも、まだ終わりが見えない」という絶望的な状況に追い込まれました。
納期までの2週間は、ほぼ徹夜でシステムを開発する毎日でした。がむしゃらに頑張りすぎて正直、その頃の記憶は曖昧です(笑)
結果、何とか納期に間に合ったのは良かったのですが、「SEつらすぎワロタ」と初めて思った瞬間でした。
この失敗からの学び
- 見積もりをするときは自分が具体的に開発のイメージが付くレベルまで考える
- 安易に他人は頼らない。最後は自分の力が頼り
みなさんもSEを目指すのであれば、適当に見積もりするのはやめた方がいいですよ!
お客さんの要望と全く異なる機能を開発
私が初めてお客さんとシステムの要件・仕様を決めたプロジェクトでした。
お客さんが普段どういった業務をしているかなんてわからなかったので、とりあえず、お客さんの言われた通りのシステムを作ろうと、決めていました。
「システムから出力される新しい帳票を作りたいのですが、帳票のレイアウトはこんな感じです」
「わかりました!(文字ちっちゃいな…、ちょっとレイアウトが崩れているところもあるぞ…まぁいっか)」
上記のやり取り後、実際に開発を進めていきました。
「お客さんの言われた通りに作る」ということしか頭になかった私は、本当にお客さんから渡された帳票のレイアウトに沿って、新しい帳票を作成。
これで完璧だ!と思い、開発完了後に、実際にシステムから出した帳票をお客さんに見せたところ…
「む!これじゃ、文字小さくて見えないよ!ちょっとレイアウトも崩れている箇所もあるじゃないか!この帳票は役所にも出さないといけないものだから、こんなんじゃだめですね…」
「すみません。作り直します!具体的にどういったレイアウトに直せばいいでしょうか?(あれ?ちゃんともらったレイアウトの通りに作ったのになぁ…)」
「今からレイアウトを考える時間はないから、そっちで考えてくれませんか?」
「わかりました。私の方でレイアウト案を考えますので、ご確認いただけますか?」
「はい。よろしくお願いします」
上記の通り。せっかく開発した帳票をもう一度作り直すはめに…
今回は失敗してはならないと、私の方で修正したレイアウトをお客さんに見せ、確認してもらったうえで、合意を取って、帳票の開発をし直しました。
この失敗からの学び
- お客さんの業務を理解したうえで、システムがどういった使われ方を考える(帳票のレイアウトが崩れたままとか誰も喜びませんよね)
- 不明点は絶対にお客さんに確認。お客さんと仕様をすり合わせながら認識合わせをする
出来ます!と声高らかに言った機能が動かない
今までやったことのない機能を開発するプロジェクトでした。
AシステムとBシステムのデータのやり取りをリアルタイムでやり取りできる仕組みを追加するというもの。
Aシステム、Bシステム共にリアルタイムでデータを連携した実績はなく、まったくの新しい試みでした。
リアルタイム連携なんて、今のご時世当たり前なので、ネットでググれば出来るだろうと考え「出来ます!」と声高らかに宣言。
さっそくググりながら淡々と開発をしていき、なんとか動くものは出来ました。
お客さんにも「無事できましたよー」なんて言いながら、余裕をぶっこいていたのですが、いざお客さんの検証環境へ入れた見たら、まったく動かない…
お客さんには「検証環境のセキュリティのせいですかねーちょっと調査します!」なんて言いながら、内心、心臓はバクバクでした。
結局、調査に1週間もかかりましたが、原因を突き止め無事解決。
お客さんも怒っていましたが丁寧に原因を説明し誠実に謝罪。結果、事なきを得ました。
この失敗からの学び
- 容易に「出来ます!」と言わないこと(実現性を確認したうえで出来ます宣言)
- やらかしたときは、丁寧な説明と誠実に謝罪をすること
システムエンジニア(SE)の失敗を防ぐ方法【現役SEがやっていること】
失敗をゼロにするのは不可能ですが、失敗の確率を下げる方法はあります。SE歴9年の私が失敗を防ぐために実施しているをご紹介します。
とりあえず出来ますは止める
何でもかんでも出来ますというのはやめましょう。
自分が実際にどういった開発をすればいいかを具体的にイメージ出来た場合に、出来ます宣言をしましょう。
特に、新機能であったり、自分がまったく関わってこなかったプログラミング言語を扱う場合は、まずは実現性を確認したうえで出来ます宣言をしましょう。
普通に実現性の検証のため、1ヶ月下さいとか言ってもOKです。
お客さんと仲良くしておく
正直、かなり重要な部分です。これさえできれば、例え失敗しても失敗をもみ消すことも可能(笑)
もちろん、ただ仲良くするだけではなく「こいつの言っていることは正しいな。SEとして知識が豊富だな」と思われるようにしましょう。
では、どうすればお客さんと仲良くできるかというと、私がよくお客さんにいっていることは下記の通り。
「私はシステムエンジニアなので、正直なところ、お客さんの業務には精通していません。しかし、システムを開発するうえでは、お客さんの業務知識が必須なんです。
なので、〇〇さん。お客さんの業務について色々教えてもらえませんか?〇〇さんが頼りなんです。」
こんな感じです。マジでお客さんとの関係が重要なので無理してでもお客さんと仲良くしておきましょう!
バグをゼロにすることは不可能
これは失敗の確率を下げるというよりかは、心の持ちようのお話です。
そもそもですが、バグがゼロのシステムを作るのは100%無理です。
理由はシステムは人間が作るから。
絶対に人間の手が入るのでバグはゼロにできないよ、ということです。
ちょっと脱線しますが、プログラミングはAIがするようになるから、バグがゼロになるという意見もありますが、そもそもAIも100%正解を出すことは不可能ですからね。
ということでバグをゼロにすることはできないので、失敗もゼロにすることはできないのです。
なので、どんなバグが発生しても冷静に対処すればOK。
最初は戸惑うと思いますが、そのうち慣れます。安心してください。
さいごに
本記事では、SEの失敗談が知りたいあなた向けに、現役SEの私が、実際にやらかした失敗談について、解説しました。
これであなたもなんとなくSEとしての心構えができたのではないでしょうか?
本記事で書いた私の失敗談が、あなたの参考になれば幸いです。
以上です。