どんな学習体験を提供してるか
- インプットだけではなく、アウトプットもして、学習した内容を定着できる
- 学習した内容をアウトプット、実践できる
- ケースを分析、設問を回答して、システムからフィードバックをもらうことで、 input->output->feedbackのサイクルができる
- グループワックに参加し、受講者同士で学習した内容を議論、共有することで、新しい刺激、学びを得られる
- ライブ受講と動画学習の組み合わせて、インプットできる
- 学習した内容の振り返り、気づきを共有、議論ができる
- ペースメイクがあり、週ごとの学習計画があるので、学習を維持しやすくなる
新しいサービスをどうやって半年で作り上げたのか
-
得意な技術
を使う- 経験が長いRailsを使ったので、新しい技術を学ぶコストが少ない
-
新しい技術
を取り入れることで、仕事のモチベーション
をあげる- 選定基準
- 使ったことがない
- 使ってみたい
- 生産性が高い
- 選定基準
-
自主的に動く
チームを作る- 決定権を持って、意識決定を早くする
- 各メンバーが現在のプロジェクト状況を踏まえて、自分が感じてる課題、リスクなどを気軽に、共有することで、スピード早く方向を調整、リスクを解消できる。
- 管理コストを減らすことができる
-
職種の壁が薄い
- 異なる職種のメンバーが自分が得意じゃない分野でも自分の考えを気軽に話して、みんなの意見を取り入れながら、決めて進むようにする
-
フィードバックサイクルが早い
- 他のメンバーのアウトプット、課題に対して、素早くフィードバックをして、担当者が次のActionができるようにして、待ち時間が少なくする。例えば、
- 他の作業の前提条件になる作業は優先的にレビューして、次の作業が進めるようにする
- QAが実装の前から参加して、QAの観点で、仕様の問題、プロジェクトの課題を見つけて、早期段階で解決できるものは後工程に持ち込まないようにする
- 他のメンバーのアウトプット、課題に対して、素早くフィードバックをして、担当者が次のActionができるようにして、待ち時間が少なくする。例えば、
- システム開発を着手する前に、
技術検証
用のシステムを開発して、新しく採用した技術を検証し、スキルを蓄積する -
技術力を上げる
- 得意じゃない技術もできる限り、やってみることで、チーム全体のスキルアップして、長期的にチーム全体の生産性を上げる
-
Don't Reinvent the Wheel
- 例えば、今回、AIの部分は既存のシステムをAPI化し、使えるようにして、かなりの開発コストを削減しました
-
やってみる
- 如何すれば良いかが分からない時には、暫定案でとにかくやってみる、進めるにつれ、答えが見えてくることがある
-
MVP
に注力 -
変化を楽しむ
- 無理やりに計画したこと、仕様のままで進まないで、柔軟にやり方やゴールを変えていく
課題や、改善点すべきところ
ローンチまでは成功したけど、これから進化、もっといい価値を提供できるためには、課題もいろいろあると思います。
- テストコードが十分ではない、特にフロントのテストコードが整備してないので、これからの開発でデグレ発生する可能性が高くなったり、デグレ発生を減らすために、毎回のリリースでコスト高い手動テストを実行しないといけない、長期的に見ると、品質と生産性の低下になる
- 今回、flutter webを採用して、結果的に、ユーザーのアンケートで評価が高かったんですが、いくつか細かいところで従来のwebで期待したことができないことが気付きました。
- デフォルトでページ全体の文字を選択できない
- ページ内検索がうまくいかない
- releaseモードで発生したエラーの調査が難しい、今、sentry-dart-pluginを使って、解決中
- 手動運用が多いため
- ミスを起こしやすい
- コストが高くなる
- 新しい価値の提供、改善に使う作業時間が減る
- 技術負債も少しずつ溜まってきたので、機能の開発と負債を返す必要がある
以上です。少しでもご参考になれば幸いです。ありがとうございます