こんにちは毎度お馴染みのそば屋です。
まだ機能としては未リリースですが、Androidアプリエンジニアの方に自慢したかったので、 導入周りの日記を公開します。 ※Composeの技術的な話しは出てこないつもりです。
導入準備
ふざけたタイトルのPRですが怒られません安心してください、 まずはkotlinなどのバージョンが古くCompose入れられなかったのでバージョンアップです。 普段のタスクをやりつつ合間合間に対応していました。 util系の処理で影響が出てしまい想定よりも工数がかかりました。
普段は誰か1人がApproveしてくれたらマージして良いルールなのですが、 影響範囲が広いので2人に見てもらいつつ自分も検証を続ける感じで、 PR出してからマージまでも結構時間をかけました。 ※リリースタイミングも他機能のリリースと混ぜてしまうと不具合があった時に原因を見つけにくくなるため悩みました。
導入された
そんなこんなで最初の導入は別の社員がやってくれました その時のtimesチャンネルを覗いてみます。
※僕はこのタイミングで別の仕事をしていたので羨ましさで泣いてましたw
僕も合流だ
さて、僕もとうとう合流です。 最初にコーディングに関わるルール作りをするのが正しい姿だとは思っていますが、
・現時点でComposeを触る機能に関わる人数が少ない
・導入するのは新規の1機能で数画面なので、負債を積んでも回収を前提にしておけば大きな問題にはならないはず。
・みんな新しい技術触りたいし、新しい技術触ってる方が楽しいから早めに入れたい(リスクと天秤にかけつつですが)
との考えから、いったんSlackでのコミュニケーションは密にしつつある程度自由にやるようにしました。
経験不足に対する対応
実装時にも悩む事は多いですが、PRのレビュー時もComposeの経験・知識不足から時間がかかったりコメントの内容が正しいか悩むことも出てきました。 現時点では経験不足なので分からない事も分からない状態なので、実装時・レビュー時問わず悩んだらこのISSUEに気軽にコメントしていき、 機能開発が落ち着いたタイミングでチーム内で議論しコードの修正(負債の回収)を行うことにしています。
導入してみて
とりあえず、楽しいですね。
見てください!この僕の日報!!楽しさが伝わりますね。 ちなみに返事をくれてるのは開発チームの偉い人です。
お互いに使いまわせるComposableがありそうなこともあり、
・画面の実装に必要なComposableを用意してPRを出す。
・↑を使って画面のレイアウトを作ってPRを出す。
・機能実装してPR
的な感じでxmlの時よりも気軽に細かくPRを出しやすくなった気がします。 Composableを使いまわせるし、細かい単位になるので気軽にPRのレビューもできるしで、 悩みは多い物の気に入っています。
最後に
おいしい健康では、モバイル(iOS/Android)、Web、機械学習と様々な職種のエンジニアが働いています。エンジニアブログでは、おいしい健康のエンジニアメンバーが日々どんな課題に向き合っているのかを綴っています。過去のブログもありますので、ご興味ある方はぜひこちらも覗いてみてください。