2018年も99%が終わり今年を振り返る
お仕事編
本業中の本業について
インフラエンジニアをやっている。
それまで他社クラウドを使いIaaS型のクラウドを使って来たが、
データベースを含むメインの基盤をAWSに移行した。
チーム全員がほぼAWS未経験。2つの国を横断するサーバーをAWSに移行した話。
これによりAWSマネージドサービスを使う事ができ、チームは学ぶべき知識と、得られる知識の領域が変わった。
IT業界全体を俯瞰して見てもAWS移行経験は需要だらけなので、本プロジェクトを通じて、とても貴重で重要な経験をさせてもらった。
プロジェクトリーダーとして
DMP(Data Management Portal)を刷新すべく、そのプロジェクトリーダーをさせてもらっている。具体的にはBigQueryの活用。
プロジェクリーダーの経験は未経験だったし、今まで「稟議書ってなんスカ?」ってほど全くよくわかってなかった。
具体的にやっていることは目的を明確にし、タスクを整理し、人をアサインしプロジェクトを管理するという所。専任のメンバーはいないので、他のチームから1ヶ月あたり0.2人月ほどメンバーを借りてやっているが、
「ちょっと工数かけ過ぎているので、少し抑えてほしい」という話しをエンジニアをお借りしている所のリーダーから来たりするのでプロジェクトリードの難しさを痛感している。
他社での仕事について
レアジョブでは副業が認められている。
自分としては、当然メインの業務もあるし、家庭もあるしということで、積極的に仕事を探していた訳ではなかったが、声がかかった時にだけ副業をしている。
(ちなみに今まではインフラエンジニア養成のための勉強用資料作成、ならびにそれを用いたドットインストール風のvideoなど。フリーランス時代に担当してもらった営業さんからお願いされて、2017年〜2018年はじめに作った)
今やっている副業は、ご縁のある方から「手伝ってほしい」と言われたため、お仕事を受けた。
その会社の特徴として、インフラエンジニアのプロパーがいない。
業務委託のインフラエンジニアが週4で仕事をしている状態で、彼がガシガシ新しいプロダクトに合わせてインフラを作っていているので、運用がまだしっかり整備されていない。という問題があった。
どれだけ整備されていないかというと、論理構成図がない。
なので、GCP/AWSの管理画面に入り、Cacooで論理構成図を作っていく作業。
タイミングよくCacooで構成図の自動作成機能がリリースされたので、基本的にそれを利用。
https://cacoo.com/ja/blog/aws-architecture-import/
ただ、これを使っただけだと使い物にならないので、サービスとして使っている形に整理したり、その後はALBにログインしていき、どのポートで受け付け、どのサーバでどのポートで接続しているのかplotしていった。
ここでの得た事の一つは、
新規参画者には現在の環境の整理をお願いすると、新規参画者への教育コストを抑えつつ、環境を覚えてもらい、ドキュメントも綺麗になる。一度で三度ウマい方法。
自分のプロジェクトでもこれはやりたいと思った。
あとは第三者的にシステムの問題を洗い出し、タスク化し、お客さんと一緒に優先順位を決めていき、それに対する作業見積もりをして、あとはリモートで作業をしていく。
このような形で進めたいと提案し、お客さんに合意してもらった。
しかし、大前提となるのが”信頼関係”である。リモートなら尚更だ。
私に声をかけてくれた方と自分との間には”信頼関係”は既に構築されているが(信頼関係が構築された上で、声をかけてもらったのだが)、他のメンバーの方とは当然まだない。
どのように信頼関係を築いていくかは、一緒に仕事をしていく事が最短だと思っている。信頼関係がない上でのリモート作業は、お互いが不幸になるリスクがある。
その為、以下のアプローチをとった
- タスクを細分化したあとは、とにかくアウトプットの出やすいところから着手。(少しでも多く多く出す。でかいプロジェクトを1個やる。というよりは細かいタスクをたくさんやる。)
- 問題提起と、課題解決案は必ずセット。課題解決案にはメリット・デメリットを添えて。
- 一緒にご飯を食べる(昭和的だけど、これ人間関係を作る上で結構重要。アウトプット以外のところが人間性だと思うから。)
OSSへのコントリビュート
redashのヘビーユーザーだったが、今年4本pull requestを出させてもらい、その全てがmergeされた
user listのソート機能
https://github.com/getredash/redash/pull/3041
CLIでuser一覧を表示さえる時に、ランダムに表示されてしまうが、A-Z順にソートされるようになった。
redash userのacrive/disableの表示機能
https://github.com/getredash/redash/pull/2951
redashのdisable機能はversion 5から導入された。しかしuserがenableなのかdisableなのかはCLIでは確認する方法がなかったので、その機能を追加した。
user listにgroupを表示させる機能
https://github.com/getredash/redash/pull/2967
CLIのuser一覧に所属しているgroupを表示させるようにした
grop listにuserを表示させる機能
https://github.com/getredash/redash/pull/2991
これも似たようなものだけど、CLIでgroup一覧を表示させた場合、そのgroupにどのユーザーが属しているのかわかるようにした。
ちなみにOSSへ貢献するとリポジトリを見てくれる方からメッセージをもらえる事がある
https://findy-code.io/
OSSへのコントリビュートは様々な選択肢を得ることに繋がるので、おすすめだ。
また、redash meetupでの登壇を2本。(登壇資料添付済み)
https://redash-meetup.connpass.com/event/85550/
https://redash-meetup.connpass.com/event/101420/
上記とは別にredashのコントリビュータの会合(redash meetup 4.0.1-dev、redash meetup 4.0.2-dev)をレアジョブで開催した。
今月はredash advent calendarで記事を3本書いた。
https://adventar.org/calendars/3299
ブログを書き始めた
最初はQiitaにアウトプットを書いていたけど、最近はQiitaは書かずwordpressにしている。
理由は以下の通り
- 仕事でwordpressのインフラは見てるけど、どんな風にユーザーが使っているのか、ぶっちゃけよくわかってないので覚えたい
- Google Analyticsを見てアクセスを解析しグロースさせる経験をしたいので、その土台として
- 技術的な事以外も書きたい事がある
今はBlogとしてまとまったことを書くというよりは、あくまでも仕事で使ったことの作業メモ置き場として使っている。
Blogを書いても書かなくても作業のメモは書くけど、それを自分だけで持っている理由はない。自分が困ってたことは、きっと他の誰かも困ってることかもしれないというという理由から始めた。
プライベート編
よかった点
よくなかった点
マラソンのベストタイム(3時間4分)から依然程遠い。
2013年に妻の妊娠を機に走るのを一時的に辞めたが、まだまだ当時の速さに戻れていない。
今年の目標は3時間30分切りを目標にしていたが、全てのレースで目標に届かなかった。
佐倉マラソン
https://connect.garmin.com/modern/activity/2577060920
長野マラソン
https://connect.garmin.com/modern/activity/2625723712
つくばマラソン
https://connect.garmin.com/modern/activity/3183514412
金沢マラソン
https://connect.garmin.com/modern/activity/3120745226
九十九里トライアスロン(オリンピックディスタンス)では、ベストタイムを出せたが
オリンピック選手の瀬戸大也選手にスイムでぶっちぎりで距離を付けられ、バイクとランで距離を詰める事ができなかった。
2018年は筋トレを始めたということもあり、run/bikeの時間を削った。最近は100km程度しか走れていない。
bikeは完全に通勤、帰宅として。寒くて心折れているのがグラフから読み取れる。
家庭について
息子が4歳(3月に5歳)になるので七五三をやったが、fotowaというサービスを使いプロのカメラマンに来てもらったが、プロのクオリティに感動した。このことはfotowaのオウンドメディアに取り上げてもらった。
【撮影レポ】5歳男の子の七五三!出張カメラマンは子供の笑顔をどうやって引き出すの?
まとめ
多くの方に支えられ、満足いく2018年を終えることができた。
去年より今年、今年より来年。と右肩上がりで成長できれば最高だけど、少なくともそれに近づけれるように2019年も過ごしたいと思う。