はてなに入社して3年経った。
入社3年成功 https://t.co/GnQ3gEdLs4
— ゆううき (@y_uuk1) 2016年12月1日
3年というのは節目と言われる。働き方や考え方の軸が多少変わってきたように思う。 技術観点では、仕事が少しつまらなくなっていた時期があった。 技術的におもしろいことより、つまらないことのほうが優先度が高くなってしまうというよくあるやつだと思う。 もしくは、おもしろいところまで到達できずに、仕事としては十分な成果になってしまうということもあった。
去年の振り返りに、来年はコードを書くと書いていて、多少はできたものの実感としてはあまりできていない。これからのオペレーションエンジニア/SREは、ソフトウェアエンジニアリングによる問題解決ができないと時代に取り残されてしまうという危機感がある。
技術的挑戦を続けていくためには、自分だけでなく、周囲の環境も変えていかないといけないと思い、マネジメントし始めたり、リーダーシップをとったり、直接的な採用活動をするような局面が増えてきた。 それはそれで自分でやると言ってやっていることだし、悪くはないのだけど、これ自分でやっていればアウトプットもできるのになと思いながら、任せないといけないことも多かった。 慣れないことをやっていると、大したことやってなくても疲れるもので、アウトプット活動が止まってしまった時期もあった。
一時的にそういった期間があることは仕方ない、いつも最高の環境があるわけじゃないので、意識的に環境に作用できるようになれれば、それは自分の強みになると言い聞かせてきた。 最終的には、社内外の期待をかけてくださる方々にいくつかのきっかけをいただいて、来年は技術的に挑戦できる年になるという気持ちで年を越せそうだ。 サーバモニタリング向け時系列データベースの探究 / The study of time-series database for server monitoring // Speaker Deck に書いた設計を自分の代表的プロダクトにすべく、プライベートリポジトリでちまちまとコードに落とし込んでいたりする。 このあたりは、今年大変仲良くしていただいたid:matsumoto_rさんと、あとはMackerelチームのプロデューサーである id:sugiyama88 さんのおかげだ。
振り返ってみると、今年は次の挑戦のための土台づくりに専念した年かもしれない。
成長
内在的な技術的成長は多少はあったものの、アウトプットにつながっていないものは成長とみなさないことにしているので、今年は技術的成長があまりなかったといえる。
あえていえば、実際の運用で導入したKeepalivedのシンタックスチェッカーや今書いているソフトウェアの要素であるGraphiteの式のパーザーなど、これまで書けなかったタイプのコードを書けるようになった。トークナイザーとYACCを書いてるだけはあるけど。
あとは、はてなのこれまでのスタックにはないようなアーキテクチャを構築する機会がいくつかあり、アーキテクチャで解決するという手持ちの札が増えてきたように感じる。
技術以外の成長では、多少マネジメントをしたり、プロジェクト管理みたいなことを覚え始めた。SRE本の第18章"Software Engineering in SRE"にも書かれているが、インフラの領域でも、ソフトウェアエンジニアリングを本格的にやるなら、サービス開発のプロジェクト知見も必要なので、役に立つと思う。周囲の方々の助けもいただいて、多少の手応えもつかめた。
そして、今年一番の収穫は、ストーリーをつくるという意識かもしれない。 ストーリーというとプレゼンのようなものを連想する。もちろんプレゼンも含むのだけど、もっとこう自分の技術の取り組みのストーリーみたいなものを考えるようになった。 普通のエンジニアである僕がなぜか来年に登壇することになったIPSJ-ONEの演題を考えたり、研究会での登壇があったり、あとまだ公開されていない何かのためにまつもとりーさんの論文や口頭発表、ブログを読み返したことが影響している。 博士課程では、複数回のジャーナルを通して、最後にそれらをまとめるということをやるようなので、その手法にも影響を受けている 博士課程の予備審査にいってきました - 人間とウェブの未来, NAKAHARA-LAB.NET 東京大学 中原淳研究室 - 大人の学びを科学する: 博士論文とは「構造を書くこと」である!?。 自分のストーリーがあれば、次に何を勉強するかも決まってくる。 僕のように瞬発力とか手の速さで勝てない凡人は、ひたすら考えて、自分のやってきたこと、これからやることを繋いでいくしかない。
アウトプットまとめ
いつものようにブログやOSS活動を振り返る。
ブログ
いつものブログに加えて、今年から技術メモとしてGitHubにちまちまとメモを残していたりする。
合計 8000 users+くらい。
発表
- ウェブオペレーションエンジニアになるまでの思い出, Hatena Engineer Seminar #7, 2016-12-06
- サーバモニタリング向け時系列データベースの探究, 第9回インターネットと運用技術シンポジウム(IOTS2016), 2016-12-01
- Mackerelにおける時系列データベースの性能改善, ペパボ・はてな技術大会〜インフラ技術基盤〜 at 福岡, 2016-07-09
- はてなにおけるLinuxネットワークスタックパフォーマンス改善, はてな・ペパボ技術大会〜インフラ技術基盤〜 at 京都, 2016-07-02
- ウェブサービスのCentOS5撤退, Hosting Casual Talks #3, 2016-06-25
- Droot Internals, 第9回コンテナ型仮想化の情報交換会@福岡, 2016-04-23
- ウェブアプリケーション開発に新言語を採用したときにインフラで考えたこと, 第3回関西ITインフラ系勉強会, 2016-02-27
- Writing Tools in Go For Ops Engineers, Go 1.6 Release Party, 2016-02-17
合計8件。
OSS
Graphiteへのパフォーマンス改善PR。
go-sql-driver/mysqlのMySQL 4.0対応をして、MySQLプロトコルの知見を深めたりした。 https://github.com/yuuki/go-sql-driver-mysql
他には、ISUCON6予選の出題側としてGo実装とインフラまわりの手伝いをやったりした。
まつもとりーさんの振り返り にも書いていただいているように、今年はペパボさんのエンジニアの方々と交流させていただくことが多く、大変刺激になりました。 はてなの技術力が非常に高いと称していただいていますが、僕としてはどちらかというと我々はまだまだだなあと思っていて、ペパボさんの取り組みは、前へ進む勢いを感じさせられるというか、一本筋が通ってみえるというかそんな気がしています。 我々はまだ場当たり的に問題を解決していってて、このままではいけないと思い、はてなシステムについて考えてたりしている。
あとがき
他のエンジニアの方々の振り返りを眺めていて、たぶん自分より若い人の台頭がすごいなあと感心している。
- Go に恋した Vimmer の2016年の振り返り - haya14busa
- 2016年にやったこと - k0kubun's blog
- 2016年注目していきたかった技術の振り返りと個人的振り返り | κeenのHappy Hacκing Blog
悔しいので、負けないようにがんばろう。
今年もお世話になりました。来年もよろしくお願いします。