Upgrade to Pro — share decks privately, control downloads, hide ads and more …

with_Androidピッチ

enito
August 07, 2023

 with_Androidピッチ

enito

August 07, 2023
Tweet

More Decks by enito

Other Decks in Business

Transcript

  1. 1 2 13 自己紹介
 坂田浩之 Androidチーム内では with開発歴最長 なんでも知ってる 孫 (ソン)

    久住克海 23年2月入社 出身は台湾 2月入社🎉 見た目がいまと違う
  2. 2 3 13 よく使うツール
 タスク管理 :
 ソース管理 :
 ファイル管理 :


    スケジュール管理 :
 コミュニケーション :
 wiki・仕様書・設計書 :
 +GitHub Projects(Beta)
  3. 3 4 13 開発環境[Android]1 1 開発言語 : Kotlin Kotlin 100%

    CI/CD : GitHub Actions UnitTestからPlayStoreへのリリースまで自動化済み
 アーキテクチャ
 原則公式ガイド通り。マルチモジュール+DIによる依存制御 ライブラリ
 Jetpack (Composeなど)、Coil、Hilt、JUnit 5 Lintツール
 Android Lint、ktlint、Renovate デバッガツール
 LeakCanary、Hyperion、Flipper、Crashlytics、etc...
  4. 3 6 13 開発環境[Android]3 3 GitFlowに沿ったブランチ運用 広く普及しているGitFlowに従ったブランチ運用を行うことで、 運用について迷うことがないよう、かつCI/CDでの自動化もしやすいよう計らっています CI/CD(GitHub Actions)や各種自動化ツールを駆使した各個人が担う定型業務の低減

    ・ライブラリアップデート ・UnitTest、Lintチェック ・動作確認用バイナリ出力 ・Playストアへのアップロード Kotlinファーストな開発 ・Kotlin言語の特徴をフルに活かせるよう修正や改善を重ねています ・型のNonNull化を強く推進しNullPointerExceptionを排除しながら、inlineクラスを用いることで  プリミティブな変数も型安全に扱えるよう調整を行っています
  5. 8 Unit ユニット制 プランナー
 デザイナー
 アプリ
 エンジニア
 バックエンド
 エンジニア
 QA


    Unit Unit ・開発テーマ毎にメンバーを固定したチーム(=ユニット)を組 成しています
 
 ・ユニットは「顧客体験のアップデートを追求するチーム」 や「ビジネスKPIの改善を追求チーム」「イノベーションの テーマを追求するチーム」などのテーマを持ち、複数のプ ロジェクトを担当します
 
 ・職能横断メンバーの固定化により、チームとしての練度 をあげてテーマに取り組んでいます

  6. 4 開発の流れ
 プランナーが作成した案を元に 議論します。みんなで内容をブ ラッシュアップします 
 
 
 メンバーが各自見積もった内容 をユニット内で組み合わせてス

    ケジュールを決定します 
 
 定例で成果物を確認しながら 
 実装を進めていきます 
 
 
 コードレビューを
 メンバー相互に行います 
 プラットフォーム横断で 
 OS差分がないか、不具合がないか 
 チェックします
 
 QAに品質評価を依頼します 
 不具合報告等に対して 
 担当者が対応します 
 プラットフォームごとに 
 リリースを行います 
 ユニット内議論
 KICKOFF
 ミーティング
 開発
 セクション内
 動作確認会
 コード
 レビュー
 QA リリース
 振り返り
 企画段階で設定したKPIが改善 されたか、改善しなかった場合 はなぜなのか考察します 
 
 9
  7. 10 Section セクション内連携 プランナー
 デザイナー
 アプリ
 エンジニア
 バックエンド
 エンジニア
 QA


    5 2 ・エンジニアは同職(=セクション)内で朝会を実施していま す
 
 ・開発方針の相談や、ユニット間の情報共有を行っていま す
 
 ・コードレビューもセクション内でランダムにアサインして実 施します
 Section Section Section Section
  8. 8 13 開発スタイル・文化
 5 1 高頻度のリリーススプリント 先ほどの開発の流れを1週間または2週間の短い間隔でサイクルさせ、高頻度なリリースを実現しています GitHub Pull Requestによるクロスレビュー体制

    ・一方的ではなく、お互いにコードレビューを行っています ・コードに対する責任は全員で負います 品質重視な工数見積り ・バッファを含めた余裕を持った工数見積もりを意識しています ・実装中に問題が発生したり、品質が十分でないとあると感じる場合は  許容される範囲内であればリスケ可能です 積極的な負債返却 ・リアーキテクチャなど直近では効果が薄くとも、長い目で見た場合の改善や開発効率向上に対して  積極的な投資を行っています
  9. 7 13 チーム・メンバー実績
 11 多種多様な経験・経歴を持つメンバーにより 構成されています 日本最大級の技術系同人誌頒布会「技術書典」へ 出版経験のあるエンジニアも在籍しています Qiitaや技術ブログに記事を掲載しているエンジニアが複数人在籍しています 国内のマッチング業界の各社クリエーターがコラボした勉強会「

    MatchingDevMeetup」を 自社で主催したことがあります 社内で自発的な勉強会を開催しており、業務以外でも新しい技術に触れる事の出来る機会が多数あります 過去実績:設計理解を深める読書会、 Flutterハンズオン勉強会、SwiftUIお試し導入会
  10. 8 13 withにあってる方・ぜひ来てほしい方
 12 プロダクトの影響力! ・ユーザーの人生に影響を与えるような仕事をしたい方 ・数十万人が利用する大きなアプリで自分の成果を残してみたい方 コミュニケーションが好き! 複数人で連携してアプリ開発を行いたい方 挑戦出来る環境!

    ・仕事を与えられるよりも自分で選び取って仕事をしたい方 ・ユーザビリティやUI/UX等、ユーザー視点での体験を考えながら仕事がしたい方 ・ネイティブアプリ開発において新しい技術に挑戦したり学んだりするのが好きな方 こんな方も大募集! ・業務フロー改善やコミュニケーション活性化などに興味のある方 ・最新技術やその他情報を発信するのが好きな方 ・iOS/Androidどちらの開発にも興味があって携わっていきたい方
  11. 19 17 環境と働き方 フルリモート オフィスと 自 宅 、はたらく 場 所

    は 個 人 の 状 況 に 合 わせて 選 択 できます。 現 在 も、 福 岡 や 長 野 在 住 のエンジニアメンバーが 活 躍 しております。 現在は、出社前提に変更する予定はありません。 コアタイムは11:00〜16:00です。サーバーチームは毎朝10:45より朝会を実施しており、プロ ジェクトの 進 捗 確 認 や 相 談 、 雑 談 の 機 会 を 設 けております。 保育園のお迎え等、コアタイム内でも柔軟に調整可能です。 フレックスタイム制度 月 に 一 度 、 出 社 を 推 奨 したコミュニケーション 目 的 の 会 を 開 催 しています。 遠隔地に居住の方にも交通費が支給されます。 月次会
  12. 19 18 選考について 選考フローを教えてください 下 記 のフローで 実 施 しています。

    ※ 候補者様のポジション・選考状況によって選考ステップが変わることがあります。 面接は、オンラインで実施しております。 1. 書類選考 2. エンジニア面接+技術課題 3. CTO・CBO面接 4. オファー面談 5. 内定