2015年の抱負は?【投稿すると豪華人気家電が当たる♪】 ブログネタ:2015年の抱負は?【投稿すると豪華人気家電が当たる♪】 参加中
本文はここから


■ 2014年の振り返り

2014年は、前半は自分を過信して必死になって仕事関係のあらゆることに手を出して沈没した時期でした。
2014年はDMPの開発とディレクションから始まりましたが、1月末からDSPの開発責任者を兼務し、3月からはもう一つプロダクトを立ち上げることになり、3つのプロダクトの開発責任を負いながら、さらにインフラ運用もやり、さらに広報関連の仕事をして取材を受けたりイベントでプレゼンしたり、ゼミも立ち上げ、といった具合で一時期は本当にパンクしていました。

それでもだんだんやることを選択し、ある部分は周囲に任せることができるようになって回りだしていた側面もなくはなかったのですが、それが、8月に祖母が危篤状態になりまもなく他界したことで、プツンと糸が切れてしまいました。

私は祖母に育てられたので、母親同然、あるいはそれ以上の存在でした。

やはり自分の愛する人が死んで、焼かれて骨だけになって出てくるというのは、精神的にかなりくるものがあります。

その後10月くらいまでは放心状態だったのですが、9月からはマネジメントを離れて開発に専念できる立場になったのでもくもくとやっていればよく、仕事はできていました。月間1000億のトラフィックをさばくインフラを作るという目標が(実績値では少し足りてないですが)達成でき、大きな障害も特になく、開発効率も落とさずにやってこれたということは、オペレーションエンジニアとしては1つのマイルストーンであり、大きな達成感と自信になりました。さらにはインフラだけでなくプロダクトコードを書かせてもらう機会もでき、特にJavaのコードを書けたというのも、1つのステップとして自分の中ではとても大きかったです。

エンジニアとしてひたすらコミットできている今の時期は、おそらく過去を振り返ってもないくらいに恵まれている時期だと思っています。会社的にももうちょっと私にはやるべきことがあるというか、いま一度踏み込んでいかないといけない部分があり、期待されている役割があるという認識はあるので、その時期と内容を見極めつつ、目の前のことに集中する日々をもう少し続けたいと思っています。

なので今この集中している状態をいっときも無駄にしたくない。
では、それを最大限に生かすために今年どうしていくか、ですが。

■ 2015年から実践していること: ゲームをやめる

まず、脱ゲーマーしたいと思います。

私のプライベートを知っている人もいると思いますが、これまで超のつくほどのヘビーゲーマーでした。学生時代はもちろん、社会人になってからも振り返るとひどいペースでやっていました。
終電過ぎまで働いて土日も出勤している時期もけっこうありしたがそういうときもやっていて、数百時間プレイしているタイトルがごろごろあるくらいなので・・・

20代中頃にはゲームライターのお仕事もやっていました。
有名なゲームのブログもやっていました。
洋ゲーをやるために英語を覚え、海外のMMORPGのギルドで英会話を鍛えました。

オンラインゲームの経験がなかったら全く別のことをしていたと思います。
27歳を過ぎてはじめて正社員で就職した会社は、「SecondLife」というMMORPGというかバーチャルワールドの事業会社でした。
私はそれ以前は4Gamer.netのライターだったのですが、次に担当する連載記事のネタを探していました。そこで選んだのがたまたまSecondLifeで、私はそこのネット住人兼ジャーナリストになってコミュニティに入っていき、クリエイターの人たちが何をしているのか取材して記事を書きました。そこで出会ったコミュニティと人間関係がリアルに延長していって、就職するに至りました。

【4Gamer.net】[週刊連載]Second Lifeの匠を訪ねて ~メタバースの挑戦者達~ 第1回 http://www.4gamer.net/weekly/secondlife/001/secondlife_001.shtml

あらためて読み返してみると、こういうネットコミュニティがかつて存在した(今も多少あるでしょうが)ということ自体がけっこう感慨深いものがあります。

話がそれました。
ゲーム関係の話を始めると長くなるのでそれはまた機会があれば・・・

「これをやろう/やりたい」と思っていても、やる気がないからできないわけではなく、余暇にひたすらゲームしているからやれないんだということに今更ながら気づきました。であればまずそれをやめると、本来やりたいことができるのではないかと。

とりあえずSteamとそれに関係するゲーム/アプリを全削除しました(これさえ今までできなかった;;)。おかげで年末年始をプログラミングの勉強にあてられました。

自分からゲームを取ったら何も残らないというのはある種事実だと思うので、何も無くなったのを幸いとして新しいものを詰めこんでいきたいです。

なお、あらゆるジャンルのゲームを全くやらないようにするというわけではないです。
誰かと一緒にWiiとかボードゲームとかならやると思います。
プライベートの1人の余暇としてゲームをやるのをやめるということです。


■ 2015年の抱負:コードを書くエンジニアとして一人前になり、人の役に立つソフトウェアを書く

去年たてた目標がほとんど形になっていないので、去年と全く同じです。

脱ゲーマーすると決めたことで膨大な時間を得ることができるので、自然と進めていけると思っていますが、具体的には

・アルゴリズムとデータ構造、関連する数学的基礎を勉強し直す
・データベース系のOSSにコミットする
・ウェブサービスを作る
・プログラミングコンテストに挑戦する

などをコツコツとやっていきたいと思っています。

今年中には無理かもしれませんが、中長期の目標として、「データベースを作りたい」というのを最近ずっと思っています。データベースといってもMySQLとかRedisとかといったミドルウェアというよりは、もうちょっと上のレイヤーの、ある分野の特化したデータベースという意味です。このへんは徐々にイメージを固めていきたいと思っています。

特定の言語とかミドルウェアについて絞ることはなく、適したものを選択するという視点は捨てないでいきたいですが、時期単位では集中して1つか2つのものにコミットしていきたいと思っています。
なので今年は一ヶ月単位で振り返りと目標設定をしていこうと思います。

2015年1月のテーマは「ScalaとSprayを使いこなせるようになる」です。

仕事で使っているというのが大きいのですが、まずこれらをマスターしたいと思っています。
JavaとTomcatベースのシステムはソースコードからインフラまである程度見れるようになったのですが、Scala + Sprayという構成はまだよくわかっていません。

どちらかというとシンプルなツールが好きなので、言語仕様も大きくパラダイムも特殊なScalaはやる前はやや抵抗感があったのですが、本格的に取り組みだしてみると、小さなコードから大きなシステムまで作れ、理論と実践のバランスがとれた素晴らしい言語だということがよく分かります。

Scalaはとりあえずコップ本を全部やり終えたというくらいですが、これから他の書籍も読んで、手を動かしながらスキルをつけていきたいと思っています。

今年もどうぞよろしくお願いします。


アメーバブログ お年玉プレゼントキャンペーン~ブログを書いて豪華商品が当たる~
アメーバブログ お年玉プレゼントキャンペーン~ブログを書いて豪華商品が当たる~
いまが自分にとっての1つのターニングポイントになるのは間違いないので、ブログに書いておきたいと思います。

先週から開発責任者という職務を離れ、1人のエンジニアというポジションに戻りました。

現場で実開発をする時間が足りずスキル面での心配をアピールし続けていたことが受け入れてもらえたともいえるし、その一方で、この半年やってきたプロジェクトで目標に届かない実績のまま成果を出しきれなかったので降りることになったという、両方の側面があると思ってます。

人事としては、同じチームメンバーだった人に責任者を交代し、私は引き続き同じプロジェクトでインフラとオペレーションを中心としたエンジニアとしてフルタイムで開発できるようになっています。

この半年はいろいろ手を出しすぎてしまって働き過ぎになり、どれも収拾がつかなくなって中途半端になってしまっていました。私は仕事に関しては虚勢を張る癖があり、できないものをできると言い張って引き受けた後に調べ始めたり勉強し始めるということを強引にやりながら徹底的に攻めで仕事をしてきましたが、今回ばかりは自分の限界を超えたところまで引き受けてやろうとしてしまったというのが率直なところです。

マネジメントは嫌いではないつもりですが、徹底的に考えこむ性格もあって、かなりの時間を漠然とマネジメントと企画を考えることに費やしていました。そのくせ自ら手を動かしたいとういのも譲れない気持ちとしてあって。
でも自分で手を動かして開発できない部分が多くて、考えるだけで終わる、わりと大きなシステムですぐに何かを試すというやり方の体制も作れず、どうやって形にしたらいいか、事前知識が足りなさすぎてそこで止まる、ということの繰り返しでした。



"スキルの貯金"を崩す働きかた、貯める働きかた
https://note.mu/chokkoy/n/nc2e267f68ec6

以前こんな文章を書いたことがあったのですが、現在の職場での仕事をやっていくうえではいよいよ貯金ゼロになったなというのが最近感じたことでした。

月間数百億を超えるアクセス、高度な機械学習をもとにしたデータ分析、まだ未熟なスキルのJava/Scalaをベースにした開発、RedisやElasticSearchなどの初めて本格的に運用したミドルウェアなどなど。
どれも1つ1つがそもそもチャレンジングなのに、これらをマネジメントもやりながら全部ハンドリングしようとしたのが無理ゲーだったなと。
チームメンバーが優秀なだけに何とかカバーしてもらっていたので何とか回ってなくもない、という感じだったのもあります。

ここ一週間過ごしてみて、一日中コードやインフラに向き合えることがどんなに楽しくて、前向きな気持ちで、自分にとってとことんやり続けたいことだということを改めて認識できた気がします。
(その一方で、憂鬱な部分があってこそ「仕事」だという思いもありますがそれは別の機会に)

まずは、とにかくこのチャンスを生かして徹底的にスキルの貯金を積み上げていきたいと思います。純粋に開発に集中することができる環境としては年齢というかキャリア的に最後のチャンスだという気持ちもあります。

仕事での直接的な開発業務だけでなく、しっかり基礎から積み上げて、まともな開発と運用ができるエンジニアになりたい、そのために必要なプランとアクションを着実にやっていきたいと思います。
■2013年の振り返り
2012年末に米国から帰ってきて、2013年は一年中日本国内にいました。いろいろ新しいことに手をだした一年だったと思います。

仕事面では、2013年前半はDSP事業のインフラエンジニアとして、大量トラフィックかつ高速レスポンスをするサーバーの運用をひたすらやっていました。7月からはアドネットワークの管理画面をやらせてもらったり、9月からはリターゲティング商品のアーキテクト担当にさせてもらったり、11月からはデータ関連部署の立ち上げ責任者にさせてもらったりと、幅を広げてきました。

DSPが未だ成功してないのが心残りです。DSPのために帰国したといっても過言ではないので(そうじゃなくてもいずれ帰ったでしょうが)、それだけ思い入れ強くコミットしたのに力が及ばなかったところが、自分の非力さを思い知らせれました。リターゲティングは売れて当たり前の商品ですし自分の貢献度がそれほどあったかは知れず、それ以外も華々しい成果は特にあげられておらず、仕事の成果という面では不発でした。

プライベート面では、AWSのソリューションアーキテクト・アソシエイトレベルに合格したのをまず思い出します。結果的に難易度の低い資格ですが、IT系の資格を何も持っていなかったので合格したことでエンジニアとして多少なりとも自信がつきました。

Code for Japanの立ち上げにも参加しました。「この人たちとなら世の中を変える動きを作っていける」と確信したからです。Code for JapanはNGO団体としては立ち上がりましたが、世の中へのインパクトという点ではまだ全然これからです。最近私自身も全然貢献できていませんが、この分野は中長期にわたって関わっていく覚悟です。2014年はオープンデータ周りで世間の後押しもあるでしょう。あせらず着実に成果を積み上げていきたいと思っています。

また、Code for Japanとも少し関係する部分もありますが、ハッカソンや開発合宿の類に多く参加しました。10回以上は参加したと思います。Qiita AWS tools Hackathonで優勝したのは良い思い出です。ただ、それらを通じて開発したものを、実際使えるものにまで仕上げられていない現実があり、そこは反省点です。

2013年は特に後半、インフラエンジニアでなくなったので、直接自分が最終責任を負うサーバーが無くなり、それで身軽になったのでけっこうあちこち行けたというのがあると思っています。この年末年始も何年かぶりに完全に休暇といえる休暇を取った気がします。今年からはまた責任者としてシステムを持つと思いますが、だから動けないということになるのではなく、自律的なインフラとチームを作って、自分自身の機動力を維持するように努めていきたいです。

■2014年の抱負
あまりいろいろ手を出しすぎてもやりきれないですが、一本筋を通したいものとして、

「コードを書くエンジニアとして一人前になり、人の役に立つソフトウェアを書く」

ということにコミットしたいです。

いまさら「自分はまだエンジニアとして半人前です」といったところでただの謙遜か甘えとしか受け止められないとは思いますが、サーバーの運用エンジニアとしてはそこそこの経験も実績も積んできつつも、コードを書くプログラマーとしてはまだ全然経験が少ないし、実際これまでコードを書いてきた量でいうと他の同年次の人より圧倒的に少ないと思います。2010年にソーシャルゲーム開発をはじめて以来、これまでデータベースやインフラ周りを中心に担当してきたからです。

特にスキル面でポイントをあげるなら、

・静的型付け言語への習熟(Java, Scala, C, C++, Goなど)
・テスト駆動開発(ただテストを書くというだけでなく)

の2点です。ただやみくもに勉強するというのではなく、コンピュータサイエンスの基礎からしっかり学んで、中長期にわたって通用するスキルをつけていきたいです。

また、どんなソフトウェア?ということであれば、

・データを有効活用するソフトウェア開発を極める

ということだと思っています。今年は本格的にデータマイニングの成果が問われる年になると思いますが、データを使うことで事業にプラス効果を出せるのか、という根本的な課題に対して、それを再現性のあるやり方で解決していく、それが自分の今年のテーマです。