仕事
会社のエンジニアの数が1月時点では6人だったが20人になったそう。 2018年から書いていたがTypeScriptをめちゃくちゃ書いた一年でした。
今年一年のフロントエンドのContributo
今年一年のサーバーサイドのContributo
インフラ周りの深いところを他の人にこの一年任せっきりだったので2020年はちゃんと自分でやれるようにする。 データ関連のことあまりできていなかったのでしっかりやる。
ISUCON
予選敗退
作ったツール
今年も細々作ったので紹介していきます。
simple-sendgrid-mock-server
作ったのは確か去年なのですが、今年も使うに色々修正を加えたりしています。 SendGridのモックサーバーで、SendGridに送る全てのメールがここに送られるメールサーバーのように動作するように作った。 開発環境でdocker-composeで立ち上げて使っている。 https://github.com/yudppp/simple-sendgrid-mock-server Readmeもまともに書いていなかったが、Forkされて使われていそうなのをみるとOSSって面白いなと改めて思いました。
yudppp/commoninitialisms
Goでどうしようもなくコピペされ使われるコードでlintのURLやIDなどのGoで大文字で表記すべき文字列の一覧がある。 自分でも色々なツールを作るに当たって2回目のコピペをすることになったので切り出したライブラリを作った。 go/astを用いて初回呼び出し時にlintの対象Fileを覗いて、最新のこれらのMapを取得するようになっている。 半分自分のast勉強用でそこまで更新されているものでもないのでコピペでもいいじゃんとは思っている。 https://github.com/yudppp/commoninitialisms
yudppp/throttle
次のツール(isutools)作る上で派生でできたGo向けのライブラリ lodashのthrottleをGoで実現させるもの テストを見れば使い方や何を担保しているかが見えるようなテストコードを意識した記憶
https://github.com/yudppp/throttle
yudppp/isutools
ISUCONで負け続けているのでISUCONで勝つための秘密兵器作り(公開している) pprofの結果や各エンドポイントのリクエスト数、各クエリーのリクエスト数をベンチマークごとにSlackに送ってくれたりするツール群 内部的にはdatadogのGoのclientをうまく使い回してopentracing的なことをいい感じにするツールになっている。 https://github.com/yudppp/isutools
まとめ
ここには書いていないがsqldefでPostgreSQL周りでいくつかMergeしていただいたり,buildersconで話したり色々経験した1年でした。