タケハタのブログ

プログラマの生き方、働き方、技術について雑多に書いていくブログです。

エンジニア10年(と8ヶ月)の記録

はじめに

昨年の12月でエンジニアになって丸10年を迎え、「エンジニア10周年を迎えて」というタイトルでその振り返り記事を年末年始に書こうと思いました。
が、筆が進まず1月中に出そう・・・と思ったまま結局お蔵入り。
GW前に「新卒も入ってきたしそろそろ書くか」と思いながらもGWはダラけてしまい結局書けず・・・

という感じでずっと書かずじまいだったエンジニア10年(と9ヶ月)の振り返りを書きます。

前提

まずエンジニアになる前は高卒で就職して、2006年4月〜2007年9月まで1年半ほど公務員やってました。
そこから3ヶ月ほどニートやった後、「パソコン触るのが好きだった」くらいの理由で全くの未経験でSESに転職。

1〜3年目

研修

就職した会社の研修でC言語を学ぶ。
そもそもプログラムがなんなのか全く分かってないので、最初に「Hello World」のプログラムを見せられても何やっているのか1ミリも理解できず。
今思うと「未経験OK」という文言で募集されてたとは言え、このレベルでよく申し込んだなと思います。

最初の現場

研修終わった後、金融系システムのシステム移行の案件に9ヶ月程。
ひたすら手順書のExcelからコマンドをコピペして実行する仕事をやってました。
SIer業界は最初はテストとかから入るのが当たり前だったので、とりあえずコピペを全力で頑張って誰よりも早くなる。
あとこういうシステム移行は定期的に二交代、三交代で24時間対応になることがあるので、若かったこともあり頻繁に夜勤に割り当てられたりしてました。

リーマンショック

初めての案件が終わった頃、ちょうどリーマンショックが起きて仕事が全くなかった時期が約1年。
この時期は最初にいた研修施設に入ってJavaを勉強。
転職して2年目がほぼ全部この状況だったので、なかなかに辛かった。
「まだ全然経験ないのにこんなことやってて、この先やっていけるんだろうか?」と思ったこともありました。

色々な現場渡り歩いてた時期

リーマンショックの影響が少し落ち着き始め、やっと久しぶりの現場に。
まずは2週間のド短期でひたすらテストのエビデンスを印刷するという案件。
毎日終電、土日込みのスケジュールで引かれてるいわゆるデスマーチに、「とりあえず誰でもいいから人で増やして」のパターンで放り込まれた感じ。
仕事がないからとは言え、なかなかの案件でしたね笑

そこからやっと仕事が入ってくるようになり、

  • 新聞社向けのWebサイト開発(3ヶ月)
  • 通信キャリア向けのシステム移行(2ヶ月)
  • 通信キャリア向けの顧客管理システム開発(3ヶ月)
  • アド系のベンチャー企業で広告配信システムの開発(6ヶ月)

と約1年でド短期の案件含めて5箇所の現場を渡り歩く。
落ち着いてたとは言えリーマンショック前に比べられると案件が少なくて、求められているレベルが上がっていた上、実質2年目くらいの実力だったのでなかなか短期で契約切られてしまうことも多かったです。

実はエンジニア辞めそうになったタイミング

実はこの3年目の終わり頃のアド系のところにいた時、一回エンジニア辞めようか迷いました。
スキル起因で切られることが続いた後に、ここでは特に要求されるレベルが高くてついて行けなくて辛くて、この仕事向いてないんじゃないかと思って転職のこととかリアルに調べ始めたり。
3年というのもちょうどこういうこと考えるタイミングだったんですかね。
結局この現場も半年くらいで終わったので、一旦は踏み止まったのですが。

ただ、この時期色々な現場を見れたことは今でもすごく糧になってると思ってます。

4〜6年目

ゲーム開発に関わり始める

ちょうど4年目に入ったところでサイバーエージェントの案件が入り、初めてのゲーム開発に参画。
3人しかいないプロジェクトで、現場の雰囲気もそれまでとは全く別物。
「プログラマ」とか「SE」という仕事の常識を覆された感じでしたw

初めて作ったゲームは自分入れて3人(エンジニア兼P、AD、エンジニア)のプロジェクトで9ヶ月ほど。
企画とかゲームの仕様に意見したりしながら考え作る、みたいなスタイルにそれまでの仕事はなかった楽しさを感じました。
「エンジニア」という領域のものは当然全部やらなければならないし、時には自分でキャラのセリフとか考えながら実装したりと色々やりました。

エンジニアの仕事が本当に楽しいと感じ始めたのもこの頃でした。
転職を踏み止まった後、エンジニア続けようと思えたのもこのタイミングでこの仕事に巡り会えたのは大きかった。

その後3ヶ月ヘルプで別のプロジェクトに入った後、次のゲームのプロジェクトに異動。
(3ヶ月ヘルプしたところも相当濃い時間だったけど、ここでは省きます)

初めての長期運用を経験

2011年の12月に、その当時リリースしたプロジェクトで一人抜けるということで、運用に入ったタイミングで異動。
ここも入った時は5人とかでやってて、かなり色々やった印象。

ちょうど世の中がガラケーからスマホへ移行していた時代だったので、スマホ対応とかやってたのが最初の1年。
まだFlashもバリバリあった時代で、でもiPhoneがFlash使えなくなって・・・みたいなところで色々とバラバラに対応しなくちゃいけなくて、時間がかかった。
まあこの時代じゃないとできない体験だったので、今となってはいい思い出です。
当時スマホ対応やるサーバーエンジニアが決まってなかったので、プロデューサーに「やりたいです!」ってお願いした記憶があります。

その後もしばらくそのチームで開発を続け、いつの間にかプロジェクト内で一番の古株に。
最終的に2年3ヶ月いて、この時点ではキャリアで一番長い在籍期間になった、思い出深いプロジェクトです。

7〜9年目

アプリボットに転職

SESを辞め、それと同時にサイバーエージェントも離れて2014年4月から現所属のアプリボットに入社。
「社運をかけたプロジェクト」と言われた新規開発のプロダクトにジョインして、4ヶ月半開発してリリース。
なかなか楽しい開発期間でした・・・

そして半年くらいした後そのプロジェクトのサーバーチームのリーダーに。
詳細は書けないけどプロジェクト自体は山あり谷ありで、なかなか大変な、大変な、大変な・・・期間でした。

運用タイトルの責任者時代

1年半ほど経った後、領域を広げて運用タイトルのエンジニア責任者というポジションになりました。
プロジェクトのエンジニアとしてコミットしつつ、それぞれのプロジェクトの状況把握とか、相談受けたりとか、アドバイスしたりとかまあいわゆる「マネージャー」的な役割ですね。

この規模でこういうポジションやるのは初めてだったので、色々と探り探りな感じ。
ただ、学びはすごい大きい期間だったかなと。
それぞれのプロジェクトとの関わり方、時間の使い方とか、状況に応じて使い分けたりして、最終的にはいいバランスの取り方を見つけられたんじゃないかなと思っています。

10年目〜現在

サーバーエンジニアとして、新規プロダクトを絶賛開発中。
サーバーサイドKotlinをやったり、色々と初めて使う技術も触ってて苦しみつつ楽しく作っています。
久しぶりに少人数のプロジェクトでやってて、プロダクトの内容的にも好きなカテゴリーのものなので色々と楽しいです。

あとはせっかく技術的にも新しいことやってるので、そこの発信は積極的にやっていこうかと思っています。
結果CEDECにも出れたので良かったです。

10年振り返って

元々ゲーマーじゃないし、なんなら社会人になってからは全然ゲームやらなくなってたけど、たまたま行った案件でゲーム作り始めて10年のうち7年ゲーム作っています。
エンジニアになった頃は普通に大手のSIerとかに入って、PMとかになる感じかなあとなんとなく将来のこと考えてて、まさかゲーム作ることになるとは微塵も思ってなかったので人生分からないものですね。
そして最近はあまり何十年先とかは考えなくなりましたw(変化の早い業界なので先がよく分からないのもある)

今あるのは

  • バックエンドの技術が好き
  • ずっとプロジェクトに入って開発はしていたい
  • 作りたいプロダクトのジャンルはエンターテイメント

というのを考えているくらい。

ゲームにこだわっているわけではないけど、作ってユーザーさんが楽しんでくれるのを見る嬉しさを覚えたし、これが一番好きです。
だからちょっと広いけどエンターテイメントと言えるジャンルのプロダクトには関わっていきたいかなと。

技術面はバックエンドが好きだけど、そこは作りたいもの次第で・・・くらいの感じ。
「技術は手段」というのがモットーなので。

あと振り返って思うこととしては、どんな仕事でも全力でやっておけばなにかしらの成長につながるし、いつか役に立つということ。
どんな酷い現場でも全力でやればなにかしら得られるものはあったかなと。
もしスキル的に得られるものがなかったとしても、最悪「こんなプロジェクトも世の中にはあってね」っていう飲み会の話のネタにはなります笑

ということで10年(と8ヶ月)経ちましたが、なんだかんだ楽しくやってこれた気がするので、これからもエンジニアとして生きていこうと思います。