見出し画像

エンジニアが振り返る12年間の開発思い出話

どうも、シスナビの事業部長をやっている福田です。

今回は、私がこれまで参画した開発現場の思い出話をつらつらと話したいと思います。今でこそ事業部長として若いエンジニアをまとめたり指導していますが、初めからそんな立派な人間だったわけではなく、、。これを読んでベテランエンジニアの皆さんには「あー、わかる。そんな感じだったよね」とか、若手には「上のポジションにいる人でもそんな時代があったのね」「こういう動きを頑張れば良いのか」とか、感じてもらえたら嬉しいです。


社会の厳しさを知った初現場

もう12年前になりますか。生まれて初めての現場はPHPでECサイトの構築をするというものでした。自分にとっては今でもほろ苦い思いで振り返る初体験でしたね…。

まず、Javaの研修を受けたのに、なぜかPHPの現場だったので「はぁ?」って感じで。で、ど素人なので、テスト業務をぽちぽちしているだけだったんですが、何一つ満足にできないわけですよ。それで怒鳴られますし、終わるまで帰らないでくださいね?みたいなことも言われますし、すごく悔しかったのを覚えています。ま、当時のIT業界はキツイ人が沢山いらっしゃったので・・・(笑)。

結局2ヶ月で切られてしまったんですが、今振り返るとあの時の自分は全然使えないやつだったなと思います。アルバイト感覚が抜けてなかったんですよね。仕事への意欲も低かったし、怒鳴られても「ちっ、うっせーな。さっさと帰ってゲームしよ」みたいなことしか考えていませんでした。何を言われても他人事のように感じていたというか、「聞いてないし」「言われてないし」「知らないし」が口癖でしたね。なので、当然ですが技術的なキャッチアップをするという発想はなかったです。

ただ、そんな自分でも社会の厳しさを知ったという意味で、得たものはあったかな。「やっぱりちゃんと仕事をしないと認められないんだ」というのは漠然と気づいた。でも漠然となので、特に何かアクションをすることもなく、「社会って厳しいんだなぁ…(ため息)」ぐらいな感じで過ごしてましたね。

ゆるゆるエンジニア継続中

そんな適当な姿勢のまま、2現場目に入るわけです。結論からいうと、こちらも3ヶ月で切られてしまいました。300人くらいのプログラマーがあっちこっちからソースコードを修正するような大規模な携帯端末契約システムがあったんですが、その修正によってどこにどう影響があるか調査しろというのがミッション。で、この業務はある種の勘による予測が必要になるので、ある程度経験を積んだ人じゃないと調査は進められません。ところが、50代のベテランエンジニアばっかりの中に、なぜか私が放り込まれました。

皆さん毎日30件くらい処理するんですが、私は1件もさばけないわけです。それでたくさん怒鳴られましたし、最終的には怒られ慣れてしまって何を言われても気にならなくなってしまいました。もはや、無の境地、鉄のハートでしたね(笑)。今思えば、プログラミングのことを全くわかっていなかったので、素の自分のままではうまくいくわけないんですが、業務外で勉強しようというモチベーションもゼロ。とにかく気持ちが緩かったなと思います。それで「君、もういらないです」って言われました。

私を変えた中国人エンジニアとの出会い

それまでテキトーだった私のエンジニア人生の、大きな転機になったのがこの現場です。この現場は、歴の浅いエンジニアの寄せ集め案件で、私のようなポンコツエンジニアでも設計、コーディング、テストまで携わることができるというスーパーラッキーな現場でした。歴の浅いエンジニアの寄せ集めでしたが、同じBPさんの人柄が本当によかったという思い出があります。「俺たち何もわかんねぇけどがんばろうぜ!」という謎の一体感がありましたね(笑)。

そんな中に一人すごくできる中国人のエンジニアがいて、彼が私を大きく変革することになります。「今まで何を勉強してきたんですか」とか「プログラミングなめないでください」とか結構ズバズバ言われました(´・ω・`)。でも、そのエンジニアの方は決して私を見放したり、見捨てたりはしませんでした。(飴と鞭が1:9の割合でしたが)彼と関わっていく中で、自分がいかに何もやってこなかったか、自身のポテンシャル一本で突き進もうとしている甘ったれた人間であるということに気がつき、自分の中で毎日反省を繰り返し、心が入れ替わったんですよね。。

彼も言うだけじゃなくて、私に付き合ってくれたんです。現場が終わった後にファミレスに集まって、プログラミングを教えてもらったりして。その時間がすごく楽しかったのを覚えています。

今までは表面的な部分しかなぞっていなかったので、何か作っても嬉しくも感動も特になく、「へえ」みたいなのがずっと続いていました。でも、この時期にプログラミングの本質の部分である「なぜこうなるのか」「なぜこれが必要なのか」「なぜこう書くべきなのか」を、彼から一つ一つ体系的に学ぶことで、プログラミングの本質がわかった上で「自分はこう書きたい」というのをやっと表現できるようになったんですよね。

元々自分は「こんなものを作りたいな」というアイデアは浮かぶタイプでした。だから、彼から学んだことで作り方がわかってからはとにかくいろんなものを作りまくって、プログラミングの面白さに沼るようになりました。大体ですが、毎月ワードプレスによるECサイト構築を1本、javaフレームワークとDBを利用したWebアプリを毎月1本、自分への課題にして毎月自作してました。

このプロジェクト自体は8ヶ月しかいなかったんですが、彼とは2年ぐらい一緒に勉強したりご飯食べたりと付き合いが続きました。今でもよく思い出して感謝しています。

プロジェクト自体の技術的な解説をすると、スマホ対応のレスポンシブデザインを作るという内容でした。ただ、当時って、レスポンシブデザインが流行りはじめの時代で、CSSの書き方が定まってなかったんですよね。なので、iOS用、Android用、Nokia用、タブレット用みたいに全てのデバイスに合わせて書かないといけなかったんです。今の若いエンジニアの皆さんには信じられないと思いますし、当時を知る皆さんには懐かしいかもしれませんね。

地雷案件だからこそエンドユーザーとのやり取りを経験できた

4つ目の現場から私の成長が一気に加速した実感があります。今まで受身体質だったのが、何かを作るのが楽しくてしょうがない状態になっていたので、やったことがないものを自分からやらせてくれと取りに行ったりとか、主体的な人間に変わりました。

それで、基本設計を担当することになったんですが、これが俗に言う地雷案件。何も決まっていない状態で、現場には誰もわかる人がいない。それで、エンドユーザーのところに飛び込んで「何もわかっていないんでイチから教えてください」と毎週通いました。今考えると私がやっていたのは要件定義と呼ばれるフェーズだったんですが、そんなことも知らずにやっていた。家に帰ってからも自分で環境を作って色々試行錯誤して、またエンドユーザーのところに行く。昔でいう「根性あるなコイツ」って感じでエンドユーザーさんからすごく気にいっていただけたのを覚えています。

この案件のポイントとしては、エンドユーザーとの直接打ち合わせを経験できたこと。私はさっきも言った通り、作りたいものをイメージできるタイプだったので、それを言語化してお客様に伝える経験を積めたのかと思います。自分の新たな能力を見出すことができた案件でした。

現場での無茶振りに答え、率先して動く

ここからはこれまでの開発で印象に残ったものをご紹介します。この案件の前までは3名チームのサブリーダーのような役割が多かったのですが、この案件で初めてリーダーを任されました。最終的には4名くらいのチームだったと記憶しています。

この案件で最初に困ったのが、開発内容に関する有識者が私たちのチームにも、さらに所属グループにすら全くいなかったこと。結構な無茶振り案件でした。

それで、「誰なら知っているんですか」とプロパーの人に尋ねたら、「他のプロジェクトの全く繋がりの無い人が知っています」みたいな回答だったので、部下2名を連れて「行くぜ!」と、果敢に突撃しました。当時は元気でしたね。「今度あの部分の担当になったんですが、教えてくれませんか」みたいなところから話して、その日のうちにお昼ご飯に一緒に行くところまで関係を作った。びびっていても仕事が進まないので、そんな感じでどんどん人間関係を構築していきました。それを私が所属するプロジェクトのマネージャーが見ていたらしく、有識者の方々との橋渡し的なポジションを任されることになりました。自分の中でやりたいこと(ものづくり)、できること(人を動かす)、求められること(人との橋渡し)がとても合致していた仕事内容だったので印象的です。
※もちろん単金も大きく上がったので会社へ売り上げ面で貢献できたのが嬉しかったです。

ここには3ヶ月しかいなかったんですが、もう毎日が濃くて1年以上いたくらいの感じがしますね。人付き合いがそれほど多かったなと今になって感じます。クライアント先で率先して動く経験を積めた現場でしたが、今振り返っても我ながら良くやったなと思います。現場抜けた後もしばらく飲み会に呼ばれたりとか、参画メンバーとの良い関係も続きました。

新人が消えた!?、ピンチをチャンスに変えていく

最後にご紹介するのはシスナビ入社後、私の通算13現場目になります。ここは、最初はメンバーで入ったんですが、なんと現場二日目に一緒に入った新人が来なくなっちゃいました!そして一人取り残された訳です。印象も最悪、謝り倒し、今まででかなり上位な最悪のスタートでした(笑)。それでBPさんを投入したんですが、無理矢理の感じだったので、現場の要件に合致しているかというと微妙。どうしようかなと頭を抱えたんですが、このままだとお客様は絶対に満足しないから自分だけでもなんとかするしかないと思って、個人プレーでめちゃくちゃ頑張っていました。

そしたらある日PMから「福田さんリーダーやって」と打診され、正直あんまりやりたくなかったんですけど(笑)、でもその時はすでにシスナビを背負っていたので逃げられないなと。それで6人のチームのリーダーをやることになりました。全員他社のメンバーで新卒レベルだったので育成もリクエストされ、全員を一斉に教えるみたいな感じ。Javaの書き方を指導しつつ開発もやるみたいな感じで結構ハードでしたね。

ここは1年間やって、最終的にはシスナビ都合で抜けたんですが、「助かりました」「また来てくださいね」と言っていただけて。また、上位会社の人からは「他にも案件あるけどやらない?」と案件のお誘いもいただきましたね。ピンチの時こそチャンスは訪れるので、諦めるのではなくて踏ん張ることが信頼への近道だと思います。現在携わっている現場もピンチがきっかけで巡り巡ってお声がけいただいたところですので、信頼いただけて本当にありがたいです。

まずは目標を立てるのが成長するために大切

自分の成長過程を振り返ると、自分が「どうなりたいか」、「やらなければいけないことは何か」、「つまり何をするべきか」を整理したところが分岐点だったなと改めて思います。これって今考えると自然にKGIからKPIまで自分に必要な行動を落とし込んでたんだなーと思い返しました。そしてどのように行動すればKPIを達成できるかを更に細分化して小目標を立てていき、一つずつこなしていくことで成果につながったように感じます。

私は目標無しに走り始めると達成感がなくて疲弊してしまう傾向にあります。なので、なんとなーく初めて、なんとなーく続けて、なんとなーくやらなくなってしまうことが多かったです。それを繰り返して「俺やっぱできないんだ」と自己肯定を勝手に下げていました。全くもって非効率ですね。なので、まずは1つずつコツコツと!一段ずつ階段を登っていくのが私の性に合ってました。自分としっかり向き合い目標を立てて進んでいく(成長する)ことが大切なことだと気づけたことも私の中で大きな変化でした。この分岐点や変化を与えてくれたのは、今まで関わりを持たせていただいた全ての人たちだと思っていますので大変感謝していますし、実直に向き合えた自分を褒めたいと思います。


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