退職のお知らせ
9月末で2年10ヶ月ほど勤めていたReproを退職することになりました。
やったこと
- GDPRやAppleの規約に対応するためにさまざまなデータストアからデータを削除する仕事をしていた。RDBに格納される構造化データだけでなく、半構造化データ、画像などの非構造化データまで含めると、削除すべきデータは多岐にわたり、削除作業は非常に複雑になる。データ(特に個人データ)を収集する際には「どの程度保持するか」や「どのように削除するか」も同時に検討すべきだし、保持期限や個人データかどうかといったデータ自体に関するメタデータを管理する仕組みも必要になってくるということを学んだ。
- プッシュ通知などの配信履歴と既読情報を収集する仕組みをつくる仕事をした。膨大な量のデータを書き込むためにCassandraを使うことになったが、なじみのあるRDBMSとは似て非なるもので、NoSQLにおけるスキーマ設計やクエリの際の注意点を学んだ。また、SQSを使って書き込みの結果整合性を担保するような実装も行い、ジョブキューの扱いや冪等な処理の実装について学んだ。
- 巨大なデータパイプラインの中でメールを配信する仕組みをつくる仕事をした。Kafkaを扱うためにKafka streamsを使ったアプリケーションをJavaで書いていた。Kafkaを理解できたと言えるほど経験を積めたわけではなかったけど、データパイプラインを実装する上での課題については学べたと思う。
- GraphQL, React, TypeScriptを使ったいまどきのWebフロントエンド開発にも携わることができた。スキーマからの型の自動生成、型によるフィードバック、変更のホットリロードといった要素によってスムーズに開発が進められた。これもそこまで経験を積めたわけではなかったものの、経験できそうでできていなかった領域だったので貴重な経験がさせてもらえたと思う。
今後
10月から新しい会社で働き始める。具体的な社名はまた別の機会に書くかもしれない。
今回の転職活動では自分の生活に身近な事業領域であることを重要視していた。Reproで働いてみて、自分は「なぜ自分がこのプロダクトを開発する必要があるのか?」といったことを大事にしていることを自覚した。Reproに入社した当初はテクノロジードリブンな人間だと思っていたけど、どうやら違っていたみたいだった。新しい会社では非常に生活に身近なドメインの開発に携われることになりそうなので、楽しみにしている。
いままでずっとRuby on Railsを採用する企業で働いてきたけど、今度は別の言語/FWを採用しているところなので、新鮮な気持ちでコードを書けることを期待している。また、久しぶりにモバイルアプリの開発にも携われそうなので、そのあたりも楽しみ。