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

mikanエンジニア紹介資料 / Engineer’s Handbook

株式会社mikan
April 12, 2024
15k

mikanエンジニア紹介資料 / Engineer’s Handbook

株式会社mikan

April 12, 2024
Tweet

Transcript

  1. 2 目次 LastUpDate2025.03 Contents 1 はじめに 2 組織について 3 開発フロー

    4 技術スタック 5 働き方とメンバー 6 カルチャー
  2. 4 1 はじめに mikanの事業内容 英語アプリmikan 個人で英語学習する方 学校/塾で英語学習する方(先生・生徒) ターゲット ターゲット 解決したい課題

    解決したい課題 ・何を学習すればいいかわからない ・勉強しても成績が上がらない ・つらくて続けられない ・紙のテストや宿題は準備も採点も管理が大変 ・クラス内の英語力にばらつきがあるが、  アナログでは一人一人に合わせられない ・生徒の自主学習が進まない mikanには2つの基幹事業があります。より詳しい事業内容は、mikan会社紹介資料をご覧ください。 mikan for School
  3. 6 2 組織について LastUpDate2025.03 組織図 職能問わずほぼ全員がプロダクトに関わります。社員数30名超、業務委託メンバーを合わせると50名超の組織です。
 事業拡大を背景に、今後も新しい仲間を積極的に迎え入れていきます。 英語アプリmikan プロダクト部 JK

    PM Design QA/CS エンジニアリング部 (11) Backend
 5 iOS
 4 Android
 2 セレクション部 Aillance Oricon Contents マーケ部 兼任 人事部 HR mikan for School プロダクト部 PM/ Design Frontend engineer 1 事業開発部 Bizdev
  4. 8 3 開発フロー LastUpDate2025.03 企画から開発までの流れ 新規施策の起票は全メンバーが行います。サービスを触る中での気づきや要望を誰でも起票可能。
 起票された施策を整理し、優先度をつけて実装に入ります。 Backlog整理 施策実行 Backlog


    アイテム 施策A 施策B 施策C キックオフ 施策に関わる メンバーで 課題の認識を 統一 要件整理会 理想体験を ベースに
 テックチーム全員 でMVPをどう実現 するか決定 実装 開発チーム& デザイナーで
 実装を進める C A D P QA 開発チーム& QAチームで 品質を保つ C A D P リリース・ 効果検証 + ユーザーインタビュー (定性調査) 定量・定性調査を おこない 次の 改善・起案へ つ なげていく 新規施策 起票 + ユーザー インタビュー (仮説/課題の確認) Backlog
 整理会 優先度づけ 参加 PJ メンバ ー(※) 参加 PJ メンバー 参加 開発メンバー + デザイナー 参加 PJ メンバー 参加 メンバー全 員 参加 メンバー全 員 参加 経営・PM・事業企画 + メンバー全 員 参加 メンバー全 員 ~ P M チ ー } ~ 開 発 チ ーム PJメ ンバ ー の メ ンバ ー 構成 (※) ~ デザイ ン チ ー } ~ Q A チ ーム ~ C Sチ ー } ~ など ・・・
  5. Backlog整理会 9 3 開発フロー LastUpDate2025.03 Backlogは全メンバーから起票されたアイテムを格納す る場所となっています。 この会議ではそれらの優先度を決めるための会議と なっており、事業ロードマップを軸としてプランニング を行います。

    経営・PMを主体に進めますが、オープンに実施してお り、どのポジションでもあっても参加・発言ができる ようになっています。 キックオフ Backlog整理会 要件整理会 実装 QA リリース
  6. キックオフと要件整理会 10 3 開発フロー LastUpDate2025.03 優先順位が決まり実施することになったBacklogのアイ テムはオーナーが設定されます。 そのオーナーが必要な各チームに声をかけつつ、キック オフと要件整理会が不定期で実施されます。 キックオフでは、施策の背景や目的などが共有されま

    す。キックオフが完了したら、要件整理会へ進みます。 要件整理会は、施策を満たすためのデザインやシステム 構成など、実装に必要となる詳細設計を詰めていく会議 となっています。 特に開発チームでは、デザインの細かい部分への懸念点 などの解消やデータの設計、フロントエンドとバックエ ンドでI/Fの設計や合意を行うなど、細かく各チームの タスクの洗い出しを行うことを目的に実施します。 要件整理会 キックオフ デザイナー オーナー エンジニア 参戦! やります! 参戦! キックオフ Backlog整理会 要件整理会 実装 QA リリース
  7. QA・リリース 13 3 開発フロー LastUpDate2025.03 mikanでは、開発チームからQAチームに依頼すること できます。 QAチームは開発内容から必要なQA項目(回帰テスト や新機能のQAなど)を開発チーム・PMと一緒に作成 しQAを実施します。不具合報告を修正したら審査やリ

    リースへ進みます。 問題がなければすぐにリリースし、最低でも週に一回は リリースを行っています。 大型機能リリースの場合は集まれる人はオンラインやオ フラインでサクッと集い、チームみんなでリリースの瞬 間をむかえることもあります。 リリース いよいよだー QAチーム PM 1.仕様の動作確認 イメージ通りに動い ているかを自分で確 認する
 (開発チームへ修正依 頼・仕様すり合わせ) デザイナー 2.UIの動作確認 デザイナーが作った UIを実現できるか自 分で確認する QA CF さらなる品質をQAが担保! k 要件整理段階から入ることで、前もって準備 でき開発完了の後すぐにQA開始できo k QA担当者はユーザー対応も兼務しているた め、動作確認的なQAだけでなく、ユーザー としての使い心地も踏まえたQAができる キックオフ Backlog整理会 要件整理会 実装 QA リリース
  8. 15 4 技術スタック LastUpDate2025.03 mikan 開発全体構成 iOSアプリ Androidアプリ インフラ バックエンド

    分析 iOS GCP Firebase AWS Terraform Swift Android Kotlin Go Redash Kinesis Amazon Amazon BigQuery Athena TypeScript Ruby on Rails
  9. 16 4 技術スタック LastUpDate2025.03 mikan クライアントアプリ技術構成 Billing c Google Play

    Billing Library v7 Media c ExoPlayey c Coil Test c JUnit v c MockK CI/CD c Codemagic Other c Firebas‡ c Adjusz c Helpshifz c PSPDF Platform c Kotlin v c Target SDK 3 c Minimum SDK 28 Architecture c MVVM + Layered Architecture UI c Jetpack Compos‡ c Android View Asynchronous c Kotlin Coroutines Flow Network c OkHTTP v c Retrofit v2 iOS Android Platform c SwiftU# c Deployment Target: iOS1 c Swift Package Manager Architecture c TCA Network c GraphQL CI/CD c Codemagic / GitHub Actions Other c SwiftGeg c Firebas‡ c Helpshifz c PSPDF
  10. 17 4 技術スタック LastUpDate2025.03 mikan バックエンド技術構成 to C/B 共通 Language

    q Gg q TypescripY q Ruby(Rails) Architecture q Clean Architectur„ q MVC Infrastructure q Google Clouw q AWS IaC q Terraform Container / Orchestration q Docke¢ q Google Cloud Ru˜ q Google Kubernetes Engine Auth q Firebase Auth Persistence q Cloud SQL ( MySQL Ö q Firestor„ q AWS Aurora / RDS ( PostreSQL Ö q Google Cloud Memorystore CI/CD q GitHub Actions Other q Kustomiz„ q ko
  11. 18 4 技術スタック LastUpDate2025.03 mikan for School 技術全体構成 Frontend Backend

    Language r TypeScript Framework r React Architecture r Flux Backend r Firebaso r GraphQL Package Manager r pnpm Test r Vites˜ r React Testing Library CI / CD r GitHub Actions Language r Ruby Framework r Ruby on Rails Backend r AWS ECS Cloud Services r AWS (SES, SQSÉ r Google Cloud Storage Test r RSpeß r Factory Girl CI/CD r GitHub Actions
  12. 20 4 技術スタック LastUpDate2025.03 その他のツールなど Google Workspace Gmail,ドライブ, カレンダー, スプレッドシート,

    スライド など業務の基本ツールはGoogle Workspaceを活用して います。 Github ソースコードの管理やCI/CDに利用して います。 Linear プロジェクトやタスク管理ツールとして利用しています。 Notion
 振り返りやナレッジの共有など広くドキュメントツール として使用しています。 Slack チームやプロジェクトごとにチャンネルが作られ、非同 期での情報交換の場として利用しています。 Zoo m 朝会など 各種ミー ティン グで使 われています 。 Ga therとの使い 分けとしては、 予定され た同期コ ミュ ニ ケーシ ョンは Zoomを使 うようにしています。 1pass wor d パス ワードや APIキーなど 重要な情報を管理しています 。 開発チームは もちろん全社で 導入しています。 Fig ma /Fig ja m
 デザイナーが作 ってくれ たデザインを 見ながら 要件や 仕様に ついてすり 合わせしています 。
 ま た、振り返りや 技術構成図の作 成に も利用しています。
  13. 働き方 22 5 働き方とメンバー 基本的にソフトウェアエンジニアはフルリモート勤務で 運営しています。 四半期ごとに開催している全社総会は東京に集まりオフ ラインで実施しています。その他の出社は各チームの裁 量で適宜実施をします。
 また、Sick

    Leave制度などの休暇制度を取り入れた独自 の福利厚生「mikan安心キット」を導入し、チームメン バーが安心して働ける環境を整えてきました。

 育児をしながら勤務をしているメンバーも多く、日々活 用されている制度です。今後も社会情勢や環境の変化に 臨機応変に対応し、常にメンバーにとって最適な働き方 を模索していきます。 四半期 に数回 60.0% 月に 数回 20% 毎週 20% 出社 頻度 遠方に 住んでいるetc 自宅で集中したいetc 直接話したいetc.
  14. 年齢・育児 23 5 働き方とメンバー 30代 70% 20代 20% 40代 10%

    年齢層 20代から40代まで幅広いメンバーが在籍して います。ボリュームゾーンは30代ですが、年齢 関係なく建設的なコミュニケーションを取れ るところがmikanのよさの1つです。 子育て中 子育て中 エンジニアの4割が子育て中です。 代表の髙岡も第一子・第二子時ともに育休を 3ヶ月間取得するなど、役職問わず育休取得も 積極的に推進しています。
  15. 24 5 働き方とメンバー LastUpDate2025.03 開発チーム 個性的な開発チームのメンバーをご紹介します。iOSチーム/Androidチームの社員です。 iOS 曽根原 光一 @sauna_feel_good

    耐 水 ・ 耐 熱 MacBookの 発 売を待ち望むサウナ好きエ ンジニア。いつかサウナで 開発したい。娘が生まれて 家の購入を検討中。 山科 佑貴 @ukoasis バックエンド、インフラ、 Webフロントエンド、iOS と渡り歩き、理想郷に辿り 着きました。好きなキー ボードはKeyball39ish-LP- R-黒です! 長坂 悟志 @satoshin21 モバイルアプリをメインに 開発してきたエンジニア。 健康になりたいがラーメン がやめられない。 久保田 裕 @kub othink バックエンド・フロントエ ンド・エンジニアを経 てiOS エンジニアに転向 。受託 開 発会社起業後 、m ikanへ 入 社 。趣味 はマ ラソ ンとギ タ ー。テス ラでのドライブ を楽 しむ休日 が至福 。猫 飼 。 A ndr oid 山中 爽史 @gum ioj i 濃厚豚骨 ラーメン, 深煎 りコ ーヒ ー, ウイス キー, ゲ ーム, アニメがすき。 技術 はワ クワ クしたい、 プロダ クトは成長 を考え たい。 生駒 和弥 @fur seald Andr oid エンジニア。最 近 は旅行 が好きで、温泉 地 など色々 な場所 に出掛 け ています。 N iZ AT OM66 を愛用 し ています。
  16. 25 5 働き方とメンバー LastUpDate2025.03 開発チーム Web Frontend/Backendチームの社員です。みんなそれぞれの得意を活かして働いています! Backend 星 遼平

    @hoshitocat Backendエンジニア,Go言 語をよく書く。 趣味はキャンプや登山など 出かけるのが好き。 Keyball44ish-mini愛用。 鏡 魁人 @kagagaga_ga バックエンド、インフ ラ、Webフロントエン ド、iOSと渡り歩き理想 郷に辿り着きました。 好きなキーボードは Keychron K7です! 川岸 拓海 @kikusui バックエンドエン ジニア 陶器な どが好きで 器巡り が 趣味。 keyb all39を使い始めまし た 。 東海 林 悠 ー フロントエンド、バックエ ンドとインフラ 少々。受託 開発、 社内S E、S Ierと 一通 り 経験し、 2025年3月よ り mi kanに 入社。趣味は 読書と 散歩と 音楽。神戸 在住。近所に 銭湯が豊富 な ので 最低週1は 行ってま す 。 和田 草太 @ Sota Wada 1991 バックエンド、インフラ が 好きです 。PMをし ていた が、 開発をした くmi kanに 入社。趣味は 筋ト レ、バイ クと 車で のトライ ブです 。 w800と ジムニー が愛車で す 。 We b Frontend 狩野 智輝 @cu re -t mk webフロントエン ジニアRe ac t Ty peScri ptを中心に 書きます 。 web a11y が好き。 趣味: ️ Keyb all44i sh -LP-R-白使いです
  17. Teamwork 28 6 カルチャー LastUpDate2025.03 否定から入らず小さな改善でも褒め合う文化です。 チームで動いていくことを意識し、コミュニケー ションが基本的に物腰柔らかな人が多いと思いま す。また、good moreに限らず率直なフィード

    バックができる環境です。 肯定から入る 小さな改善でも褒め合う 文化 QA チーム 開発チーム PM/デザイン チーム PMやデザイナーと 意見を出し合いながら より良いプロダクトに! 細かな挙動も こだわって確認! QAチームと助け合いながら 品質をたもつ! チーム連携で助け合いながら プロダクトを育てる! いつもありがとうございます! なんでも聞いてください! ここの挙動なのですが、意図通りに 動いているか確認したいです! もっとこうした方が ユーザーは使いやすいかも? ご意見お願いします!
  18. Pragmatic 29 6 カルチャー LastUpDate2025.03 プロダクトの成長を考え 新しい技術を取り入れていく 80% Project Task

    20% Develop& Enhancement Task iOS Task 中長期的にProductのために なる新しい技術の実装etc. ex)swift6対応・新Architectureの検証 ユーザーに素早く価値を 届ける実装etc プロダクト開発と技術探求の優先付けのバランス感 覚をもっている人が多くいる組織です。 プロダクトありきの技術であり、技術がないとプロ ダクトが育たないことを理解しつつ、新しいものを 取り入れながら開発しています。 プロダクト開発と 技術探求の優先付けの バランス感覚
  19. Ownership 30 6 カルチャー LastUpDate2025.03 Value(Get it Done)にもあるように、与えられ ずとも隙あらば挑戦をする機会を作るオーナーシッ プの塊のような人が多いです。

    事業やチームを成長させるため、自分のメインスキ ル+αへチャレンジすることができ、それを周りの メンバーもサポートしてくれます。 自分のスキル+α チャレンジできる環境 電子書籍に書き込みできる機能とかあった ら勉強はかどりそ〜 Aの電子書籍とかで書き込みができると体 験良さそうですよね! 認識あってそうです!試せてないけどできる し、やりたい! まさにやりたいと思っていました! 具体的にどういう機能になりそうかイメー ジしたいです。例えば、書き込みやマー カー、付箋みたいなものですか?! @ukoasis iOSエンジニア @maru Bizメンバー #timesチャンネルにて実際のやり取り iOS開発メンバーとBizメンバー プロジェクトの起案へ