見出し画像

希望する技術領域に挑戦する時間が組織にもたらすもの~Working Group&開発合宿~

このnoteはMakuake Advent Calendar 2023 21日目の記事です。

マクアケ開発本部では、業務時間の一部を所属チームの業務から離れて自分が希望する技術領域の活動にあてることが出来る、「Working Group」と「開発合宿」という取り組みがあります。これにより個人の技術的なスキルアップはもちろん、技術的な負債を含むプロダクトの課題解決も実現しています。アタラシイへチャレンジすることを応援するマクアケだからこそ行っている取り組みです。

これら2つの取り組みについて、経緯や実例、得られた成果などについてご紹介します!

隔週で定期的に実施するWorking Group 

まず1つ目は、Working Groupです。それぞれのグループでテーマを設けて、隔週1日固定の曜日で活動をしています。

2023年10月時点のワーキンググループ構成

2013年の「Makuake」サービス開始以来、様々な機能追加をしてきた中で2020年頃には技術的な負債が大分増えている状況でした。同年秋頃にフロントエンドのコンポーネント化と、バックエンドではコンテナ化を進めようとする動きが起き、有志メンバーが集まってフロントエンドグループとバックエンドグループができたのがWorking Groupの始まりです。そこから徐々にチーム数も増え、2021年の初頭頃には部門内で仕組み化し今に至ります。

各グループの設立の経緯は様々で、部門横断で解決しなければならない課題が発生したとき、個々人が挑戦したい技術ができたときなどに自発的にグループが編成され、メンバーは自分の興味のある領域を選択することが出来ます。活動への参加は任意ですが、ほぼ全員がいずれかのグループに所属して活動しています。どこのWorking Groupに所属するかはもちろん、課題に応じて自ら新しいグループを立ち上げるところまで、エンジニア自ら意思決定をしている点が特徴です。

年2回じっくり時間を取って集中して行う開発合宿

2つ目が毎年4月と10月に行っている開発合宿です。合宿という言葉が使われていますが、泊まり込むわけではなく、期間を設けて集中して課題に専念することを意味しています。普段のチームでの開発をストップして特定の課題解決のために2〜3週間かけて作業を行うため、全社でも合宿期間を周知し、協力を得ながら進めています。

取り組むべき現状の課題の洗い出しなどはTech会と呼ばれる週次のミーティングや、前述のWorking Groupなどで普段から行っており、合宿に際しては課題の優先順位付けを行い、合宿期間中に集中してその課題に取り組む、という流れで進めています。

この合宿の期間で課題が解決できた場合はWorking Groupが解散となることもあり、開発合宿を期に半年単位でグループが再編され、常に今向き合うべき課題に取り組んでいる状態になっています。

・2023年秋の成果の紹介 

2023秋の開発合宿では以下のようなテーマに取り組みました。モダンな開発環境へのアップデートやAIの導入といった新しい技術のチャレンジなど、様々な成果を出しています。

●老朽化していたシステムをモダンな構成にアップデートし、システムのメンテナンス性向上
①主要言語であるPHP,Goや周辺ライブラリのバージョンを最新化
②モバイルアプリのアーキテクチャ刷新(フルFlutter化)
③統一感を持たせモダン化したMakuake UIライブラリの作成

●不具合の発生数や発生時間を減らすための仕組みをアップデートし、システム品質の担保・底上げ
①モバイルアプリの自動テストの実現
②分散トレーシング適用領域を主要なサービス群のほぼ全域へ拡大
③テスト手順書、テスト観点を最新の運用状況に合わせて再整理、最適化

●AIを活用したプロトタイプ、名寄せの検証など社内の業務効率化に向けた新しい武器作り
①Makuakeに掲載する画像やテキストの類似検索を行う仕組みのプロトタイプ作成
②顧客管理における名寄せシステム構築の検証

●パフォーマンス改善
①アプリの主要なAPIの応答時間を半分以下に改善

これらは日々の業務の中で優先順位的に後回しになりやすいものや、組織横断で取り組まなければいけないインパクトの大きなもので、実現できたことで開発者体験の向上にも繋がっています。


新しい技術や新しい取り組みを応援する仕組み

自分が希望する専門領域の活動に取り組むことにより、組織や技術面だけでなくさまざまな部分にメリットが出ています。

・エンジニア個人のスキルアップ・キャリアアップ
普段の業務はフルスタックに幅広い技術分野に関わっているメンバーが多いですが、Working Groupなどでは得意分野の専門性を磨くことに時間を使うことでスキルアップに繋がっています。
中には普段の業務ではバックエンドを得意とするエンジニアが、Working Groupでは別分野のモバイルアプリの開発に挑戦するなど、技術領域を広げる挑戦をするような例もあり、そういった側面でもスキルアップやキャリアアップに繋がっています。

・リーダー経験
普段チームではメンバーとして業務をしていたとしても、自分でWorking Groupを立ち上げたり、まとめ役に立候補したりすることで、プロジェクトの進行をリードする経験を積めたというエピソードも、ひとつのメリットを示す好例です。Working Groupでメンバーがリーダー経験を積んでいたことで、所属するチームでリーダーが育休などで不在になった期間も、チームを運営することができたということもあります。

・チームを越えた交流
マクアケでは技術選定などが各チームに任されているためチームごとに異なる点もあり、キャッチアップが難しい側面があります。その中で、組織横断でのプロジェクトに関わることにより他チームのエンジニアと交流する機会が増え、互いに情報交換や相談などのコミュニケーションがしやすくなります。
普段からチームを越えてレビュー依頼や相談がしやすいカルチャーであり、部署横断での情報共有の場や交流の場も複数ありますが、Working Groupや合宿がその一部を担っています。

応援購入というアタラシイ体験を提供するマクアケは、働く社員それぞれのアタラシイへのチャレンジも大切にする会社です。それぞれのエンジニアが自律的に専門性を磨き、スキルを高めていける環境を惜しみなく提供しています。 

▼マクアケのサービスや開発組織についてはこちらもご覧ください

一緒に働く仲間を大募集中です!

いかがですか?マクアケではエンジニアを募集中です!少しでも興味を持っていただいた方は、是非カジュアル面談でお話しませんか?お気軽にご連絡ください!

◉エントリーをご希望の方

◉カジュアル面談をご希望の方

◉マクアケの中の人を知りたい方

この記事がおもしろかった!と思っていただけたら、是非「スキ」&「シェア」をしていただけますと嬉しいです。

この記事が気に入ったらサポートをしてみませんか?