゚ス・゚ム・゚スのブログ - TECH PLAY

TECH PLAY

゚ス・゚ム・゚ス

゚ス・゚ム・゚ス の技術ブログ

å…š276ä»¶

はじめに はじめたしお。2023幎4月に゚ス・゚ム・゚スに入瀟した橋口( @gusagi ) です。 今ぱンゞニアリングマネヌゞャヌEMずしお、介護事業者向け経営支揎サヌビス『 カむポケ 』の䞭で蚪問看護に関する機胜を担圓しおいるチヌムで業務に携わっおいたす。 ゚ス・゚ム・゚スに入瀟するたでの経緯は 個人ブログの蚘事 にも曞いたのですが、その蚘事の䞭に 先週に入瀟したばかりなのでキャッチアップ䞭心ではあるのですが、少しず぀チヌムでのアクションに参加を始めおいたす。 ドメむン知識はこれからになるのですが、これたでの経隓を倱敗も含めお共有するこずでチヌムのパフォヌマンス向䞊に寄䞎しおいければず考えおいたす。 ず曞いおいたした。 この蚘事を曞いおいる珟時点で䞊蚘の蚘事を曞いおから玄ヶ月が経過しおいたすが、キャッチアップを進める䞭で特に印象に残ったこずを䞀぀玹介したいず思いたす。 プロダクト人材におけるバリュヌの明文化 ゚ス・゚ム・゚スには、゚ンゞニアに限らず倚くの人がWiki ずしお䜿っおいるドキュメンテヌションツヌルで情報を明文化する・共有するず蚀う文化がありたす。曞かれおいる情報の皮類は様々で、技術的な情報だったり、打ち合わせの議事録だったり、考え方に関する情報発信のための文章だったりしたす。 技術責任者である田蟺さん自らもこういう取り組みを積極的に行っおいお、「プロダクト開発人材におけるバリュヌ」も明文化されおいたした。 こちらの内容に぀いおは、少し前に公開された蚘事 『80人超の゚ンゞニア組織で、぀のチヌムバリュヌを蚀語化しはじめた話』 に詳しく曞かれおいるので、今回は割愛させおいただきたす。 興味のある方はそちらの蚘事も読んでいただけるず嬉しいです。 ゚ンゞニアリングマネヌゞャヌずしお入瀟した私がこの資料を読んで特に印象に残った蚀葉が「あなたがコミュニティ」 *1 ず蚀う蚀葉でした。 「あなたがコミュニティ」 この蚀葉の説明は以䞋のような文章が続いおいたした。 組織ずいうコミュニティがなにかをしおくれるのではない。自治組織ではあなたがコミュニティ。あなたがコミュニティを代衚する䞀人ずしお考え行動するこずで自治組織になる。あなたが他人事だず思った瞬間から自治は厩れおいく。 OSSのコミュニティ掻動に関わったこずがある人はむメヌゞしやすいかも知れたせんが、OSSコミュニティの掻動は有志の人が䞻䜓的に考えお行動しおいるこずが倚くありたす。䜕かしらの掻動に䞻䜓的に関わっおいる人たちの動きの集たりが、そのコミュニティの掻動を成しおいるずいっおも良いかもしれたせん。 「あなたがコミュニティ」の説明を読んだ時、私はOSSにおける個々人の掻動ずコミュニティの関係に圓おはめお、文䞭にある「組織」を「゚ス・゚ム・゚スのプロダクト開発組織」ずしお読み替えお捉えたした。 ぀たり「組織が䜕かをしおくれるのを埅぀のではなく、自身が䞻䜓的に動くこずで゚ス・゚ム・゚スのプロダクト開発組織ができあがっおいく」ず受け取ったのです。 たたちょっず話が飛びたすが、プロダクト開発組織のバリュヌずしお倧事にしたいこずずしお、以䞋のキヌワヌドもあげられおいたした。 党員リヌダヌシップ Speak up プロフェッショナルスタンダヌドを高く持぀ 挑戊の称賛ず倱敗の蚱容 自治ず信頌 これらのキヌワヌドに぀いおは、すべおが䜕かしらの圢で「あなたがコミュニティ」ずいう抂念に通じるものず理解したした。 「あなたがコミュニティ」に通づるキヌワヌドたち そこで、これたでのヶ月の経隓を螏たえた自分なりの解釈を蚀語化しおみるず以䞋のようになりたす。 党員リヌダヌシップ リヌダヌシップずいうず䜕らかの圹職を持っおいるような人間が発揮する指導力・統率力をむメヌゞする方もいるかもしれたせんが、ここでいうリヌダヌシップは「自分が為すべきこずに察しお䞻䜓的に取り組み、堎合によっおは他の人を巻き蟌んでいく姿勢」だず思っおいたす。 圹職があるからリヌダヌシップを発揮するのではなく、その人が為すべきこずに向き合っおいく姿勢があり、そこにその人の胜力や呚囲からのフォロヌ、あるいは運ずいった芁玠も絡み合っお結果が぀いおくるのではないでしょうか。 たた、リヌダヌシップに぀いおは同じEMである @emfurupon777 が 2023幎4月に曞いた蚘事 も参考になるず思いたすので、興味のある方は合わせおご芧ください。 Speak up 日本語に蚳すず「声を䞊げる」「倧きな声で蚀う」「盎蚀する」ずなりたす。 必芁なこずであれば遠慮なく声をあげお自分の考えを䌝えるこず。これたでの経隓や考え方が違うからこそ、目的のために自分の考えを述べお議論を深めるこずで、呚囲の協力を埗るこずができたり、自分が間違っおいる堎合に指摘をしおもらうこずができるのではないかず思いたす。 実際、先日に瀟内のSlackで田蟺さんがフルタむムコミッタヌを同僚ずしお雇うこずに぀いおの考えを募った際にも「技術的に色々ず聞くこずができそう」「GitHub Sponsorsなどにより、OSS開発者ぞの支揎を優先しお欲しい」「仮に同僚にOSSコミッタヌがいたずしお盎接的な刺激を受ける人がどれくらいいるだろうか」「フルタむムコミッタヌの方にずっお環境的な満足床ずかの芳点も材料にした方が良い」ずいう圢で、耇数の人が自分の考えを述べお議論しおいたした。 特定の誰かが決めお埌はそれに埓うのではなくそれぞれが考えを持っお意芋を述べおいたのを芋お、たさにコミュニティだなず感じたした。 プロフェッショナルスタンダヌドを高く持぀ 短い期間にも倉化しおいく゚ンゞニアリングの䞖界で成果を出し続けるためには、プロずしおの意識をしっかりず持ち、仕事のクオリティを自分自身で高く保぀こずが必芁です。倉化しおいく状況の䞭では䜕が正解かも定かではないこずがほずんど。 そういった状況においおも「これが今の自分が思う最善の手段である」ず自信を持っお蚀えるようなプロ意識を持ち続けたいず私も思いたす。 挑戊の称賛ず倱敗の蚱容 入瀟しお玄ヶ月の短期間でも、必芁だず思ったこずに察しお「ずりあえずやっおみる」を蚱容し、埌抌しする文化があるように感じおいたす。 実際、入瀟しおヶ月皋床経った時点で採甚に泚力する必芁があるず思い、田蟺さんに1 on 1の時間を急遜差し蟌んだ䞊で「䞻䜓的に採甚に関わらせお欲しい」ず盞談したずころ、5月から採甚にも携わるようになっおいたす。 たた、短期的な成功・成果を最重芁ずはしおおらず、より本質的な課題に向き合っお組織ずしおも個人ずしおも倉化ず成長を続けるこずに重きを眮いおいるように感じたす。 自治ず信頌 これは入瀟しおから驚いたこずですが、チヌムによっお遞択しおいる技術スタックやツヌル、チヌムずしおの動き方が異なっおいたす。 䟋えば、私が所属しおいるカむポケで利甚しおいる蚀語はJavaがメむンずなっおいたすが、 カむポケのリニュヌアルプロゞェクト ではKotlin / Spring Boot / TypeScript / GraphQLずいうモダンなアヌキテクチャを採甚しおいたすし、介護キャリア事業の開発チヌムではRubyをメむン蚀語ずしおいたす。 たた、タスク管理の方法に぀いおも こちらの蚘事 で玹介されおいるようにTrello / Asana / GitHub / Jiraずチヌムに合わせお自分たちで遞択しおいたす。 フェヌズも異なる40を超えるサヌビスを開発・運営しおいるので、すべおの技術スタックを統䞀するこずは難しいのは圓然ずしおも、チヌムずしおの動き方たでそれぞれで異なっおいるのは、各チヌムに必芁な裁量が委譲されおいるからだず思いたす。 その䞊で、チヌムごずに自分たちがやるべきこず・必芁なこずに向けお取り組み続けおいるのが゚ス・゚ム・゚スの開発組織の匷みなのだず感じおいたす。 「あなたがコミュニティ」を読み解く 私が考える「あなたがコミュニティ」を蚀語化するなら、以䞋ずなりたす。 個人 誰もが自分が為すべきこずに察しおプロ意識を持っお取り組む 䞻䜓的に考え発蚀し人を巻き蟌みながら挑戊をする 組織 各員に察する信頌をベヌスずしお取り組みを任せる 挑戊に察しおの賞賛ず倱敗に察する蚱容を是ずする この流れが組織自䜓の文化ずなっおいくし、逆に他人任せだず信頌も薄れ、自治ではなく統治ずなり、䞻䜓的な挑戊などは倱われおいくのだろうず思っおいたす。 実珟したい自分なりの「あなたがコミュニティ」 ここたで、゚ス・゚ム・゚スのプロダクト人材におけるバリュヌ「あなたがコミュニティ」に぀いお自分なりの考えを曞いおきたしたが、実珟したい自分なりの「あなたがコミュニティ」を最埌に曞いお、この蚘事を締めたいず思いたす。 これたで曞いたように、゚ス・゚ム・゚スでは䞻䜓的に行動するこずやプロフェッショナルであるこずに察しお䟡倀をおいおいる䌚瀟です。そしお、そういった人であれば、どんどん機䌚を䜜り出しお組織を倉えおいくこずができる䌚瀟でもありたす。 期埅されるレベルが高くなるこずは吊定できたせんが、ハヌドルを越えるこずで自身が成長できる環境を求める人であれば、ずおも面癜い環境だず個人的には感じおいたす。 䞀方で、゚ス・゚ム・゚スが向き合っおいる瀟䌚課題に目を向けるず、2023幎4月䞋旬に囜立瀟䌚保障・人口問題研究所が発衚した 日本の将来掚蚈人口什和5幎掚蚈 が話題になったように、日本の少子化・高霢化は急速に進んでいたす。そんな瀟䌚課題ず向き合いながら䌚瀟ずしお成長し続けるためには、「チヌム」「担圓システム」「職胜」の枠を超えお連携を匷化しおいくこずが欠かせたせん。 そのために、以䞋の項目に察しお䞻䜓的にチャレンゞしおいきたい、そのためにも成長を続けおいきたいず思いたす。 チヌム暪断の圢でナレッゞを共有できるような堎をどんどん䜜っおいく ゚ス・゚ム・゚スのプロダクト開発組織に぀いお瀟倖の人たちにもっず知っおもらっお、䌚瀟の枠を超えた連携を実珟したり、゚ス・゚ム・゚スに入瀟したいず思っおくれる人を増やしおいく 珟圚フルリニュヌアルプロゞェクトが進んでいるカむポケを珟圚のシステムず新しいシステムずしお分けるのではなく、「䞀぀のカむポケ」ずいう圢でお客さたからも瀟内の人からも地続きの状態にしおいく 倚くのチャレンゞをなるべく楜しみながら取り組んでいく 䞊蚘は䞀人の力で実珟できるむメヌゞはありたせん。色々な人のチャレンゞングな取り組みに助けおもらう必芁もあるでしょうし、゚ンゞニアリングマネヌゞャヌずしおそれを埌抌ししおいきたいずも思っおいたす。 もし䞊蚘の項目がこの蚘事を曞いたずきよりも実珟に近づいおきたず自分で感じるこずができたなら、私の思う「あなたがコミュニティ」に近づいおいるずいうこずになるんじゃないかず思っおいたす。 *1 : 「あなたがコミュニティ」ずいう衚珟は、「 Rubyist Magazine 0028号 巻頭蚀『コミュニティ』ずは誰か 」から匕甚しおいるそうです。
こんにちは、゚ス・゚ム・゚スで採甚担圓をしおいるふかしろ( @fkc_hr )です。 プロダクト開発郚にぱンゞニアだけではなく䞀緒にプロダクトを䜜っおいるプロダクトデザむナヌが所属するデザむン組織がありたす。 2023幎6月15日に開催された「 Career Design Night #6 瀟䌚課題に向き合うむンハりスデザむナヌの本音ずキャリア 」にお、デザむン組織の線成やチヌムの雰囲気、事業䌚瀟でむンハりスだからこその悩み・楜しさなどに぀いおお話させおいただきたした。 むベントの埌半は実際に参加者の方からもご質問を頂きながら、参加したデザむナヌ/マネヌゞャヌ陣がさたざたなリアルな回答をしおくれたした。 人数制限もあったため、他の方にもぜひ知っおいただきたいなず思い、䞀郚抜粋するような圢で特に印象的だった質問ず回答をご玹介いたしたす。 資料 むンタラクションの質問ず回答 Q.介護事業は課題もあり耇雑なむメヌゞがあるのですが、䜕が業界のボトルネックなのでしょうか 介護事業所には継続的に経営課題が降りかかる たず、経営芳点での法人の課題ずしおは、継続的に経営課題が降りかかるこずが挙げられたす。 介護業界の仕組みずしお、囜の瀟䌚保障をもずに費甚回収をしおいたす。匊瀟からするず今埌䌞びゆく倧きな垂堎ですが、囜の芖点に立぀ず費甚が増えるこずになり、郜床芋盎しをされおいたす。その䞭で、実際にカむポケのナヌザヌである介護事業所を経営しおいる方からするず、削枛を䜙儀なくされおいる䞍安定な状況で、継続性に䞍安を抱えおいるずいう課題がありたす。 たた、芋盎しに䌎っお、介護保険制床の改正なども数幎に䞀床行われるため、仕組みが倉わるこずぞのオペレヌション倉曎察応なども必芁で、介護事業所は同じ業務を繰り返しおいるだけでは自然ず経営を続けるこずが難しくなっおいたす。 介護埓事者がケアに集䞭できない たた、介護の珟堎で働く介護埓事者の方の課題ずしおは、本質的なケアに集䞭できないこずが挙げられたす。 介護の珟堎の業務は今でも玙文化で、指定のフォヌマットに蚘入する必芁がありたす。そしお、耇数の事業所同士が連携する必芁があるため、デヌタの曎新があった際にも玙に蚘入しFAXで送るずいう圢が珟圚でも取られおいたす。その結果、高霢者の方にサヌビスを提䟛するこずが本業なはずなのに、高霢者の方ず向き合う時間以䞊に玙やパ゜コンやホワむトボヌドに向き合う時間が長くなっおいるずいう課題がありたす。 䞊蚘2点から総合的に、非効率な珟堎を効率化し、経営課題を解決するこずが重芁だず考えおいたす。カむポケはナヌザヌ業務の䜓隓をいかに向䞊させるかがずおも倧事なので、マヌケットにずっおのボトルネックの解消のためにプロダクトづくりを日々進めおいたす。 デザむナヌずしおやりがいに感じる瞬間を教えおください。 耇雑なフロヌを確実に「よりよくできた」ず思えるこず ただ入瀟二ヶ月で経隓少なめなのですが、それでも介護事業のフロヌの耇雑さを感じおいたす。画面パタヌンを怜蚎しおいお、テスト版を先行しお詊しおもらっおいるナヌザヌから「この方が䜿いやすい」「もっずこうしおほしい」ずいうコメントをもらえたずきに、䞀歩ナヌザヌのお仕事の手助けになれたかなず感じお嬉しかったです。 ナヌザヌの距離が圧倒的に近いこず これたで関わったサヌビスやプロダクトの䞭で、䞀番ナヌザヌずの距離が近いず感じおいたす。䞊蚘にもありたすがナヌザヌず怜蚌で話す機䌚も倚いですし、瀟内にドメむン゚キスパヌトず呌ばれる、介護事業に粟通したメンバヌがいたす。UI画面を䜜る䞭で、ナヌスケヌスに悩むこずは倚々あるのですが、その床に盞談に乗っおもらえおるのがずおも助かっおいたす。デザむン䜜業を通しお、介護埓事者の方の仕事の仕方がぐっず解像床高く芋えおくる瞬間があっお、誰かが実際に䜿うサヌビスを䜜っおいるず匷く意識するので、モチベヌションになりたす。 リモヌトワヌクを感じさせないコミニケヌション 基本的にプロダクト開発組織はリモヌトワヌクです。デザむン組織は毎日倕方にdaily ミヌティングを蚭けお疑問を共有したり、心理的䞍安を解消するために䌚話の機䌚を倚く蚭けおいお、䞋手に出瀟する䌚瀟より䌚話は倚いず感じおいたす。私は愛知県からリモヌトワヌクでお仕事しおるのですが、遠方なこずをマむナスを感じずに働けおいたす。 デザむンに぀いお理解があたりない方に察しお、どのように接するこずを心がけおいたすか 理解ではなく共感を プロダクトデザむンチヌムでぱンゞニア、PdM、QAず䞀緒にプロダクトづくりをしおいたす。 その䞭で意識しおいるこずは、ただ自分のデザむンを理解しおもらうよりも前に、たず「ナヌザヌぞの共感」をしおもらうこずです。 デザむン自䜓は、あくたでナヌザヌの課題や期埅に沿っお、デザむナヌが工倫しおアりトプットしたもの。誰のために、䜕のためにこういうデザむンが必芁だ、ずいう䞀連の論理的な説明の構成が倧事だず考えおいたす。より開発関係者に共感をしおもらうために、䟋えば、むンタビュヌやテストの録画をみんなで芖聎するなど、いわゆる0次情報である、リアルのナヌザヌの蚀動ず思考プロセスを共有しおいたす。 さいごに カむポケは介護業界に特化したSaaSです。゚ス・゚ム・゚スずしお叶えたい高霢瀟䌚の課題解決の方向性ず、実際に利甚頂いおいる介護埓事者の皆様は同じ方向を向いおいるので、率盎にフィヌドバックをもらいながらプロダクトづくりを掚進するこずができおいたす。 たくさんの事業所に䜿っおいただいおいるからこそ、実際のナヌザの顔を芋ながら、ナヌザヌ䜓隓の良いプロダクトを深く思考し䜜るこずができる良い組織だなず改めお感じたした。 ゚ス・゚ム・゚スでは、プロダクトデザむナヌ、コミュニケヌションデザむナヌず幅広くナヌザヌ・マヌケットに向き合っおくれる方を募集しおいたす。 もし「もっずお話聞きたいよ」ず思っおいただいた方はお気軜にTwitterでご連絡いただくか、カゞュアル面談申し蟌みペヌゞからご応募ください。
0. 本蚘事の䜍眮付け 1. バリュヌの぀くり方・考え方 2. ゚ス・゚ム・゚スが向き合うマヌケットの定矩ずは 3. 党瀟の経営理念・バリュヌに぀いお 3.1 経営理念に぀いお 3.2 バリュヌに぀いお 「䟡倀䞻䜓であり続けるこず」 「瀟䌚からの芁請を真摯に受けずめ続けるこず」 「倉化察応し、成長し続けるこず」 「誠実であり続けるこず」 4. プロダクト開発組織におけるバリュヌの䜍眮付け 5. ゚ス・゚ム・゚スが考える「プロダクト人材」ずは 5.1 プロダクト人材の掻動の目的に぀いお 5.2 プロダクト人材の仕事の特城に぀いお 5.3 プロダクト人材ずはどういう人材か、どのように働くのか 6. プロダクト開発組織の人材理念に぀いお 「Purpose」 「䟡倀䞻䜓ず情熱」 「瀟䌚からの芁請」 「プロフェッショナル」 「誠実」 「自治ず信頌」 7. 最埌に 0. 本蚘事の䜍眮付け ゚ス・゚ム・゚スは2003幎の蚭立以降『氞続する䌁業グルヌプずしお成長し続け、瀟䌚に貢献し続ける』を経営理念に、高霢瀟䌚の課題解決に向け耇数の事業を展開しおきたした。 プロダクト開発組織は2015幎から本栌的な内補化を進め、今では80人超の組織ずなっおいたす。このプロダクト開発組織では、どんな文化・䟡倀芳を倧切にしチヌムづくりを行っおいるのか。 本蚘事では、2023幎2月7日・3月22日に瀟内で行われた技術責任者 田蟺による『プロダクト開発組織のバリュヌ説明䌚』の内容を、䞀郚圓日の資料を匕甚しながら文字起こし圢匏で玹介しおいたす。 (※本蚘事の内容は、゚ス・゚ム・゚スずしお定矩しおいるバリュヌそのものではなく、珟時点でのプロダクト開発組織向けに解釈し、萜ずし蟌んだ内容ずなっおいたす。) 1. バリュヌの぀くり方・考え方 たずはじめに、バリュヌ制定の背景にあるバリュヌの぀くり方・考え方に぀いお解説したす。 圓瀟のプロダクト開発組織のバリュヌを考えるにあたっお「 メルカリ・小泉瀟長による『 1→100の組織蚭蚈を䞞裞にする』人事組織HR勉匷䌚の備忘録 」の内容を参考にさせおいただきたした。 特に、 ”Plan蚭蚈時に倧切にしおいるこず「ビゞネスゎヌルや垂堎特性ずバリュヌが玐付いおいるこずが倧切」” ずいう箇所に蚘茉されおいる 「バリュヌは経営陣の経隓や思いで定めるのではなく、ミッションや事業特性で決めるべき」 ずいう点を意識し、圓瀟の向き合うマヌケットや事業特性を考慮した䞊でバリュヌを定めおいたす。 The Pyramid Azit Inc. CEO & Designer―ミレニアル䞖代が考えるこれからの日本, 「メルカリ・小泉瀟長による『 1→100の組織蚭蚈を䞞裞にする』人事組織HR勉匷䌚の備忘録」, https://shuyuy.com/mercari-koizumi-hr.html 2023幎6月1日 閲芧 2. ゚ス・゚ム・゚スが向き合うマヌケットの定矩ずは 次に、圓瀟が向き合うマヌケットの定矩に぀いお解説したす。 私たちは珟圚、高霢瀟䌚の課題解決に向け耇数の事業を展開しおいたす。 「高霢瀟䌚」ずいうマヌケットは、ステヌクホルダヌの倚さや政府の芏制など扱う倉数が倚く、たた倉化のタむムスパンも長いため、実際に手を動かしながらでないず解決策が芋えおこないような「耇雑性の高い垂堎」です。そのため、私たちの向き合うべきテヌマは 「耇雑性の高い垂堎での事業開発」 であるず考えおいたす。 耇雑性の䜎い垂堎課題に察する解決策がある皋床芋えおいるので、たずたった資金を投入すれば One product でむンパクトを残せる 耇雑性の高い垂堎巚倧な資本力や単䞀のむノベヌティブなアむデアは、持続的な成長ドラむバヌになりづらい 逆に「耇雑性の䜎い垂堎」の䟋ずしおは、QR コヌド決枈の垂堎などが挙げられたす。すでに海倖で実䟋があり、プロダクトの姿たで芋えおいお、Winner takes all だったため、いかに早く垂堎を握るかがゲヌムの勝利条件ずなっおいたようなケヌスです。 䞀方で、「耇雑性の高い垂堎」はこうしたゲヌムのルヌルがわかりにくい領域です。 3. 党瀟の経営理念・バリュヌに぀いお 次に、䞊蚘で説明した「耇雑性の高い垂堎での事業開発」ずいうテヌマや事業特性をふたえた䞊で、経営理念・バリュヌはどのように䜍眮付けられおいるかに぀いお解説したす。 3.1 経営理念に぀いお ゚ス・゚ム・゚スの党瀟の経営理念は 『氞続する䌁業グルヌプずしお成長し続け、瀟䌚に貢献し続ける』 です。 この理念からも、私たちは、“短期で成功しお売り抜けるぞ”ずいうのを目指しおいるのではなく、瀟䌚ず共存共栄し盞互に発展しおいくこずを目指しおいたす。そのため、氞続のために䌚瀟ず瀟䌚ずの盞互発展の氞久機関のようなむメヌゞを持っおいたす。 ここで蚀う「氞続」ずは、倉化しないこずでなく、 倉化する瀟䌚に察しお貢献し続けおいく ずいうこずです。 䟋えば、䞋の図匏のように、倉化する瀟䌚の䞭で貢献の量を増やしおいくためには、組織が成長する必芁がありたす。そしお、組織が成長するず、個人ぞ新しい機䌚提䟛ができ、個人も機䌚を通じお成長できたす。そしお、個人の成長により貢献の量が増え、それが組織の新しい貢献ぞず぀ながっおいきたす。 瀟䌚ぞの貢献が増えた組織は、売䞊などを通じお新しい成長を埗お、そうしおたた組織の成長が個人ぞの機䌚を生んで〜ずいうスパむラルで、 「組織・個人の盞互発展により、瀟䌚ぞの貢献の量を増やし続け、氞続を目指しおいく」 ずいうのがベヌスの考え方になっおいたす。 ゚ス・゚ム・゚ス「経営原則 〜経営理念実珟のためのマネゞメントポリシヌ〜 組織ず個人の盞互発展」, https://www.bm-sms.co.jp/company/values/ このように、瀟䌚ぞの貢献・䟡倀提䟛をし続け、さらにそれを営利䌁業ずしお毎幎15%〜20%皋床の売䞊・利益成長ずずもに続けおいこうずするず、長期目線・連続性・継続性が重芁になる䞀方で、非連続な成長・倉化・拡匵ずいったものも必芁になりたす。 たた、この成長ペヌスは4〜5幎で玄2倍の䌁業芏暡ぞの成長を意味するので、このような成長を生み出す個人を組織ずしお䜜り出し続けるこずが、組織や人材の芳点で非垞に重芁であり、これが「個人」のあり方を考えるうえでベヌスになっおいたす。 実際には、このペヌスでの成長を同じ事業だけで拡倧しおいくこずは非垞に難しく、倚くの䌁業では別の事業やサヌビス開発を行うケヌスが倚いのも事実です。 しかし、圓瀟は、ある皋床同じ領域で氞続成長を続けながら、4〜5幎で玄2倍に成長しおいくこずを目指しおいたす。 3.2 バリュヌに぀いお 圓瀟では、䞋蚘぀を党瀟のバリュヌず定めおいたす。 倧前提ずしお、バリュヌずいうず䌚瀟組織のものず受け止められるこずが倚いですが、゚ス・゚ム・゚スにおいおは䌚瀟のものであるず同時に、組織やチヌム、個人のどのレむダヌの芖点ぞ移しおも境界線はなく、同じであるず考えおいたす。 ずはいえ、今回は珟時点で皆さんに意識しお欲しいこずに絞り、あえおピックアップする圢でお話ししたいず思いたす。 はじめに、䞊蚘぀のバリュヌのうち「䟡倀䞻䜓であり続けるこず」ず「瀟䌚からの芁請を真摯に受けずめ続けるこず」はセットであるず考えおいたす。 「䟡倀䞻䜓であり続けるこず」 たず、「䟡倀䞻䜓であり続けるこず」に぀いお、これは「個人ず組織個ず党」ずいう関係性で考えるず、 個人ずしお組織党䜓に察しお固有の䟡倀を発揮し続ける こずを瀺しおいたす。 このバリュヌの背景には、䞀人ひずりが個人ずしお胜力や成長の可胜性を持っおおり、組織ずしおその個人の䟡倀を信じおいるずいう䌚瀟のスタンスが衚れおいたす。䌚瀟がやりたいこずにただ埓順な個人を求めおいるのではなく、個人ずしお独立した志向や意志をもち䟡倀を発揮する人物を求め、その個人の総和ずしお組織が瀟䌚に貢献しおいくこずを䌚瀟ずしお望んでいるのです。 「瀟䌚からの芁請を真摯に受けずめ続けるこず」 次に、「瀟䌚からの芁請を真摯に受けずめ続けるこず」に぀いお、これは 自分以倖の瀟䌚や䞖界ずいった党ずの関わり方 を瀺しおいたす。 個ずしお䟡倀を持っおいおも単独で䟡倀を成立できるわけではなく、あくたで自分以倖の瀟䌚や䞖界ずの盞互関係のなかではじめお個ずしおの䟡倀が生たれ、評䟡されたす。 瀟䌚や組織、䞊長からの芁請などに察しお、それらにただ埓うのではなく、「䟡倀䞻䜓であり続けるこず」を軞に個人ずしお䟡倀を発揮しながらも、その䟡倀が自分以倖の瀟䌚ずの関係性のなかで盞察的なものであるこずを理解し、独りよがりにならずに瀟䌚からの芁請に察しお、謙虚にそしお真摯に受けずめ続けるこずが倧切です。 たた、個人ず組織の関係性や、䌚瀟ず瀟䌚の関係性も党お、この考え方ず同じ捉え方をしおいたす。そのため、このように個人を尊重する考え方が、さたざたな䌚瀟の方針の基瀎ずなっおいたす。 「倉化察応し、成長し続けるこず」 次に、「倉化察応し、成長し続けるこず」に぀いおです。これは、個ず党の関係性に察しお「時間軞ずの付き合い方」を加え、 時間の経過に沿っお倉わり続ける倖郚環境に察しお、適甚し、成長し続ける こずを瀺しおいたす。 前述の通り、圓瀟は4〜5幎で2倍に成長しおいく䌚瀟であるず考えおいるため、組織ずしお、未来に察しおコンスタントに倉わり続ける必芁がありたす。そしお、これは組織だけでなく個人単䜍でも同様です。 そのため、䟋えば評䟡制床などもこのような考えがベヌスずなっおおり、「倉化察応をし、成長しおいくこずで貢献しおほしい、そこぞ報酬で報いたい」ず考えおいたす。 「誠実であり続けるこず」 最埌に、「誠実であり続けるこず」に぀いおです。 ここたで個ず党の関係性、そしおそれに時間軞を加えたものが䞊蚘぀のバリュヌでしたが、ここではそれら ぀のバリュヌにどのように付き合っおいくかずいう姿勢 を瀺しおいたす。 ゚ス・゚ム・゚スが考える「誠実」は、「個ず党、時間軞、そしお䞖の䞭の構造を考えたずきに、どこかに明らかな䞍利益を抌し付けお埗をしようずいう利己的な態床は長期的には無理が出るからダメである」ずいうのが基本的な解釈です。 䟋えば、自身の埗のために呚囲の誰かしらぞ䞍利益を抌し付けたり、気付かないこずを良いこずに将来的な䞍利益を前提ずしお短期的な埗ぞ誘導したり、そういったこずはいずれどこかに無理が出お氞続が実珟できなくなるのであっおはならず、そうではなくフェアにいこう、ずいうのが圓瀟の考える誠実の基本的な考え方です。 たた、誠実に぀いおも時間軞が圱響を及がすず考えおいるので、時間の経過ずずもに倉わっおいく瀟䌚のルヌルに適応しおいくこずも倧切です。 4. プロダクト開発組織におけるバリュヌの䜍眮付け では、ここからプロダクト開発組織におけるバリュヌに぀いお解説しおいきたす。このプロダクト開発組織のバリュヌは、党瀟のバリュヌに基づいお定めおいたす。 党瀟のバリュヌの抜象床の高さや解釈の自由床を適切に補う圢で、さらにプロダクト開発組織の仕事の特城を考慮しながら、より重芁芖されるべき郚分に焊点を圓お、党瀟バリュヌを補正・拡匵するなどしお蚭定しおいたす。 5. ゚ス・゚ム・゚スが考える「プロダクト人材」ずは 5.1 プロダクト人材の掻動の目的に぀いお たず、圓瀟が考える「プロダクト人材」の定矩に぀いお解説したす。 圓瀟では「プロダクト人材」ずは、『ナヌザヌストヌリヌマッピング2015』にあるように、珟圚のデリバリヌをしおいくこず自䜓が仕事ではなく、最終的に 「その成果をナヌザヌに察しお生み出し、その先でむンパクトを䞖の䞭に届けるこず」 が本来の掻動の目的であるず考えおいたす。 4_ナヌザヌストヌリヌマッピング キャプションJeff Patton 『ナヌザヌストヌリヌマッピング』 川口 恭䌞、長尟 高匘蚳オラむリヌゞャパン、2015幎 P13 5.2 プロダクト人材の仕事の特城に぀いお 圓瀟では「プロダクト人材」の仕事は、 「䞍確実な垂堎に察する探求ず実珟の過皋」 であるず考えおいたす。 挞進的な成長を継続させるこずももちろん重芁なのですが、NETFLIXの最匷人事戊略(2018)に玹介される゚ピ゜ヌドのように、プロダクトの探玢を行い、プロダクトだけに限らず、倉化し続けるマヌケットに察しお問題解決の探玢をしおいくこず、そしおそれを実珟しおいく過皋を党おたずめたものがプロダクト人材の仕事です。 パティ・マッコヌド『NETFLIXの最匷人事戊略-自由ず責任の文化を築く』櫻井 祐子蚳 (光文瀟、2018幎) 序章 5.3 プロダクト人材ずはどういう人材か、どのように働くのか 次に、プロダクト開発組織ではどのような人たちが、どのように働くのかに぀いお解説したす。 たず倧前提ずしお、プロダクト開発組織は 「さたざたな専門性のある職胜を持った人が集たったプロフェッショナル組織」 であるず考えおいたす。それぞれが卓越した専門性をもち、自立したプロフェッショナルが集たっおいる組織です。 そしお、私たちの仕事の目的である「倉化し続けるマヌケットの最前線でナヌザヌに成果を生み出し、䞖の䞭にむンパクトを届けるこず」を達成するために、 プロダクト人材はマヌケットの最前線で、か぀ど真ん䞭で仕事をし、プロダクトの成長ず倉化ぞ責任を持っおいる ず考えおいたす。 䞀方で、ひずりでは「䞍確実な垂堎」ぞ察凊できないので、チヌムで動き、問題解決をしおいくこずが必芁です。そのため、チヌムずしお成果を生み出すための仕組みずしお、共通のプロトコル考え方、プロセス、玄束事、ツヌルを理解しお働くこずも重芁です。 このように、マヌケットやナヌザヌに向けお䟡倀を提䟛するのはプロダクトチヌムずそこで働く個人であるため、組織ずいうのはそれをサポヌトするむンフラであるず考えおいたす。䞀人ひずりが「もし、自分がプロダクトのオヌナヌずしおすべおの責任を担っおいたら、マヌケットずナヌザヌに最善のプロダクトを届けるためになにをするか」を垞に考えお、その実珟にリヌダヌシップを発揮し行動するこずを期埅しおいたす。 6. プロダクト開発組織の人材理念に぀いお ここから、プロダクト開発組織の人材理念に぀いお解説したす。 党瀟の 人材理念 や行動指針ずの差異は、 コラボレヌションを䞭心ずした働き方 である点です。 党瀟のバリュヌである「䟡倀䞻䜓・瀟䌚からの芁請・倉化察応・誠実」や、人材理念である「情熱・誠実・プロフェッショナル」を土台に、チヌムが䞻䜓の環境でいかにコラボレヌションをするか、ずいう点を匷調した内容ずなっおいたす。 たた前提ずしお、もちろん党䜓の戊略も重芁ですが、それず同じくらいに プロダクト開発組織がナヌザヌ接点の䞻圹である 、ずいう考え方を重芁芖しおいたす。 䟋えば、プロダクト人材はプロダクト现郚の手觊りを生み出したり、゚ンゞニアの堎合はナヌザヌ䜓隓の構築や実装する1行のコヌドがナヌザヌが觊れるものを生み出すこずに぀ながっおいるので、たさにナヌザヌ接点の最前線の仕事です。そしお、このような点からもプロダクト開発組織がナヌザヌ接点における重芁な事実に最初に觊れる人物であり、堎合によっおは党䜓の戊略を芆すような重芁な事実ぞ觊れる機䌚もありたす。そのため、プロダクト開発組織が自立的に思考しお意思決定をしおいくこずが非垞に重芁であるず考え、これらをベヌスに人材理念を定めおいたす。 プロダクト開発組織の人材理念は、「Purpose」「䟡倀䞻䜓ず情熱」「瀟䌚からの芁請」「プロフェッショナル」「誠実」「自治ず信頌」の぀に分解されたす。 以䞋に、圓日の説明資料を添付し、理念の詳しい定矩を解説しおいたす。 「Purpose」 「䟡倀䞻䜓ず情熱」 「瀟䌚からの芁請」 「プロフェッショナル」 「誠実」 「自治ず信頌」 ※ 文䞭の「あなたがコミュニティ」ずいう衚珟は、「 Rubyist Magazine 0028号 巻頭蚀『コミュニティ』ずは誰か 」から匕甚しおいたす。 7. 最埌に チヌムの拡倧に䌎い、改めお組織のバリュヌを蚀語化したした。チヌムがどこを向いお仕事をしおいくのか、そしお、䜕を倧切にすべきなのか、共通の䟡倀芳を持っお仕事をするこずが重芁であるず考えおいたす。 匊瀟でぱンゞニアやプロダクト人材の採甚を積極的に行っおおりたすので、ぜひご興味のある方はこちらよりご応募ください。
こんにちは 介護職向け求人情報サむト「カむゎゞョブ」のアプリケヌション開発ず、党瀟共通むンフラの仕事をしおいる 䌊藀 です。 さっそくですが、みなさんはこのブログのタむトルを芋おどんな印象を持たれたしたか 昚今ではだいぶ認識が倉化しおいる気がしおいたすが、䞀昔前にはプログラマ35歳定幎説ずいうものもありたしたね。 そんな定幎説があるなかで、私はむンフラ゚ンゞニアであり぀぀もアプリケヌション開発ぞも挑戊しおいる真っ只䞭です。 この蚘事では今たで自分はどんなこずをしおきたのか、なぜアプリケヌション開発をやりたいのか、チヌム内でどうたち振る舞っおいるのか等をお䌝えできればず思っおいたす。 同じように新しいこずに挑戊しようずしおいる、実際に挑戊䞭の方ぞ少しでも埌抌しできればずおも嬉しいです:) 今たでどんなお仕事をやっおきたの 私は珟圚35歳ですが、秋頃には36歳になりたす。 2010幎の新卒からむンフラ゚ンゞニアずしお継続しお働いお、気が぀けば今幎で13幎も経過しおいたした、早すぎたすね・・・ ※盎近4幎ほどではDevOpsやSREずいう職皮でもお仕事をしおきたしたが、むンフラの業務がほずんどでした。 2010幎 - 2018幎: SIer/゜シャゲ/ISP/オンラむン英䌚話の䌚瀟でオンプレやAWSを䜿ったむンフラ゚ンゞニアずしお働く 2019幎: HRの䌚瀟で初めおDevOpsずしお働く この蟺りからgemを䜜っおみたり趣味でコヌドを曞くこずが増え始める 2020幎: ECにおける圚庫管理システムの䌚瀟でSREずしお働く 2023幎4月: ゚ス・゚ム・゚スで、アプリ開発・むンフラの兌務で働く アプリケヌション開発に挑戊したいず考えたきっかけ 実は明確に䜕かがあっお挑戊したいず感じたわけではなく、 以䞋のような小さなこずの積み重ねで挑戊したい気持ちが湧き䞊がりたした。 趣味でコヌドを曞くこずの楜しさ 必芁性を感じお自分でググりながらコヌドを曞いお日々の業務に掻かすこずの楜しさを少しず぀感じおいたした。 䟋えば、以䞋のような具合です。 AWSのマルチアカりント構成でチェックボックスにチェックをいれるず䞊䜍に衚瀺しおくれるChrome拡匵 マルチアカりント環境でむンフラ゚ンゞニアだず数十個衚瀺されこずがありたすが、垞甚アカりントは数個で郜床アカりント怜玢がめんどくさくお䜜りたした ランチャヌアプリのRaycastでKibelaを衚瀺するプラグむン Googleカレンダヌに入力したスケゞュヌルで䜜業時間を蚈算するgem 日報に掻動内容や時間を蚈算するのがめんどくさくお䜜りたした フィペルドブヌトキャンプ さんでアプリケヌション開発を孊ぶ 過去に退職埌の有絊消化のタむミングで勉匷しおいたこずはあったのですが、仕事が始たるずなかなか時間を取れなくお䌑䌚しおいたした 珟圚は少しず぀再開しおいたす🏃 知識欲(特に仕組み)の枇望 元々自分の性分ずしお党おのレむダヌを知りたいずいう欲求がありたした。 䟋えば、自宅から目的のサヌバたでのネットワヌク経路や、NICにパケットが着信しおからLinux Kernel、プロセスに枡るたでの流れやプロセスそのものの仕組みずいった具合です。 オンプレ時代であればMHA for MySQLでフェむルオヌバヌするずきにネットワヌクレむダでは䜕が起きおどういう仕組みでアプリケヌション偎から圱響がほずんどないように芋えるのかを怜蚌するのもずおも面癜かったず蚘憶しおいたす。 圓時、 O’ReillyのUnderstanding Linux Network Internals を芋おARPのキャッシュ管理方法ずしおGCの仕組みがあるこずや、デバむスドラむバからナヌザヌランドたでパケットが凊理されおいく図を芋お、こうなっおるのかずワクワクした蚘憶がありたす。 现かいずころはただただ知らない䞖界は山のようにありたすが、日々のむンフラの業務をこなす䞊で必芁最䜎限の知識は少しず぀身に぀いおいた感芚がありたす。 その䞀方で、プロセスから先のデヌタ凊理に぀いおは䞀郚のコヌドを芋るこずはあっおも通しで党䜓を理解するずころたでは螏み蟌めおいたせんでした。 仕事ぞの慣れ 2018幎頃からむンフラ゚ンゞニアずしおの仕事にも慣れおきお、よくある構成の構築や運甚はあたり苊劎するこずなくできるようになっおきたした。 䟋えば、新芏でサヌビスを䜜るためにサヌバヌを䞀匏甚意しおほしいず䟝頌があったずしたす。 サヌバヌはクラりド、監芖やデプロむ呚りはSaaSで芁件を敎理しながらAnsibleで曞けば1週間くらいあれば開発環境は甚意できそう。ずいった圢でゎヌルたでの道筋や手数がやる前から倧䜓掎めたすし、倚少想定倖があっおもtcpdumpずstraceがあれば問題の切り分けくらいはおおよそ぀くずいった具合です。 俗に蚀うコンフォヌトゟヌンに突入し始めおしたったのがこの時期で、少しず぀危機感ず日々の業務に退屈さを感じ始めおいたした。そうしたなかで、新しいこずを始めおいきたいず考えるようになりたした。 こうしお振り返っおみるず、コヌドを党く曞いおなかったわけではないですし、アプリケヌション開発を䞻ずしおも働けるのではないのず思われる方もいらっしゃるかもしれたせん。 しかし、実はここたで曞いおいるコヌドにはテストコヌドはほがありたせんし、コヌド自䜓もいわゆるシェルスクリプトの延長くらいの曞き方しかしたこずがありたせんでした。 たた、たずもにフレヌムワヌクを䜿っおWebシステムを䜜ったこずはありたせんでしたし、 数ヶ月に1回皋床しか思い起こさないので、初歩的な曞き方すら郜床思い出すような状態です。アプリケヌション開発を本職ずするには経隓が䞍足しおいたこずをお分かりいただけるず思いたす。 転職掻動に぀いお 転職ドラフト で指名を頂いたこずがきっかけになりたす。 䌚瀟ずしおどういう期埅・芋通しでの指名だったのか 最初はむンフラ゚ンゞニアずしおの立ち䜍眮で指名を貰っおいたした。ただ、カゞュアル面談でRubyを䜿ったアプリケヌション開発をしおいきたいこずを䌝え、正匏な遞考ではむンフラチヌムずカむゎゞョブチヌムの責任者ず面接をしおいたした。 カむゎゞョブチヌムでは専任のSREがいなかったこずもあり、アプリケヌション開発に携わりながらむンフラ面を匷化できる立ち䜍眮ずしお期埅されおいたした。 むンフラチヌムでは、今たでのむンフラ゚ンゞニアずしおの経隓ず合わせおカむゎゞョブチヌムで埗られたSREずしおの経隓を党瀟に展開できるこずを期埅されおいたす。 入瀟埌に぀いお 働き方 月曜日〜氎曜日はカむゎゞョブの開発をしおおり、朚曜日ず金曜日はむンフラチヌムの業務を行っおいたす。 皌働日は厳密に定めおいるわけではなく、カむゎゞョブのタスクを優先したり、逆にむンフラタスクを優先したりず裁量を持った䞊で働けおいたす。 入瀟しおみおどうだったか 10幎ぶりくらいに毎日知らないこずだらけの䞖界に飛び蟌んで、正盎必死です笑 ですが、チヌムの雰囲気はずおも良く、ペアプロ、ペアワヌクを掚奚しおいおずおも楜しくお仕事できおいたす。 私がメむンで働いおいるカむゎゞョブチヌムはずおも倧人なチヌムで、いわゆるHRTの原則をずおもよく䜓珟されおいたす。 たた、隔週でスプリント・プランニングを開いおいるのですが、タスクのゎヌルたでのむメヌゞのすり合わせがずおも䞁寧に感じおいたす。 今たで私が所属しおいた組織では個々が独立しお動くこずが倚かったため新鮮で、ずおも助かっおいたす。 ※むンフラ゚ンゞニアずアプリケヌション開発゚ンゞニアの職皮の違いずいうのもあるかもしれたせん 入瀟埌に意識しおいるこず 無理に䞀人で仕事を進めようずしすぎない 先述の通り、カむゎゞョブチヌムではペアワヌク・ペアプロを掚奚しおいたす。 䞀人で進めおいくこずも倧事ですが、無理に䞀人で進めおチヌムずしおの生産性が䞊がらないのも困っおしたいたす。 こんな感じでSlackで投皿するずメンバヌが反応しおくれたすし、 朝䌚等で今日は手が空きそうなのでペアプロ求める人がいたらお声がけください〜ずいった呌びかけも圓たり前に発生しおいたす。 わからない、぀たづいおいるずきは玠盎に呚りに助けを求めお、逆に自分が手助けできるずころは積極的にやっおいくぞ〜ずいう気持ちになりたす💪 自分の過去の経隓や匷みを貢献しお積み重ねおいく 圓たり前のこずではあるのですが、私は呚りず比范するずアプリケヌション開発のみでは成果を出せたせん。 たた、䌚瀟ずしおの期埅もアプリケヌション開発のみではなく、SREずしおの振る舞いを期埅されおいたす。 そこで、今たでの経隓からどうしたらチヌムに察しお成果を出せそうかは垞に考えるようにしおいたす。 私の堎合は、䞀䟋ずしお次のようにむンフラ゚ンゞニアずしおの知芋を共有できるように意識しおいたす。 むンフラ゚ンゞニアずしおの振る舞いを䌝える ペアワヌクで障害察応を行う 障害の予兆を怜知した堎合や発生した時にペアワヌクを行いメトリクスの読み方を䌝えるこずでむンフラレむダのわかる゚ンゞニアの動き方を少しでも䌝えられるようにしおいたす 䟋えばCPU䜿甚率ひず぀ずっおもナヌザヌランドなのか、Linux Kernelなのか、iowaitなのか、どういう時にこれらのパラメヌタが䞊がっおどのくらいになるず怪しく感じ、どう問題の切り分けを行っおいくか等 ポストモヌテムをドキュメント化する 障害察応に぀いおドキュメント化するこずでペアワヌクしおないメンバヌにも䌝えられるようにしたす むンフラ蚭定の改善 サヌビスの監芖をどのようにするず良さそうかをドキュメント化する ECSオヌトスケヌリングの改善 ゚ス・゚ム・゚スに入っおみお感じる匷み むンフラ゚ンゞニアずしおキャリアを積み重ねおきたメンバヌをアプリケヌション開発ぞも挑戊する機䌚を蚭けおチャレンゞさせられるのはずおも匷いなず感じおいたす。 ミドル・シニアクラスのメンバヌの堎合は過去の積み重ねがあり、そこを期埅したうえで入瀟しおいる郜合䞊、 組織ずしお期埅倀に沿うパフォヌマンスをすぐには発揮しづらいであろう業務に時間を割り圓おるこずを蚱容できる組織はなかなか倚くはないのではないでしょうか。 時間が䜙ったら個人の裁量でアプリ開発のタスクを取っおもOKずいうのを芋かけるこずはありたすが、 日々の割り蟌み業務、開発タスクの期限、マネヌゞメントぞの期埅ずいうものがあるなかで、なかなか継続的に時間を確保するのが難しいのが珟実だず思いたす。 入瀟しお今日にいたるたで、実際にはむンフラ業務を優先しおアプリケヌション開発の時間が割り圓おられなかったずいうこずは䞀床もありたせんでした。 入瀟前にアプリケヌション開発もやっおいきたいず䌝えおいるので圓然なのかもしれたせんが、ちゃんず組織ずしお察応できおいるのは凄いなず感じおいたす。 最埌に この蚘事の執筆時点(2023/07/05)で3ヶ月経過し、詊甚期間も終わりたした。 ただ3ヶ月匱ではあるものの、振り返っおみるず倧きな䌚瀟ずしおの良さは享受し぀぀チヌムで仕事をしおいるずきは倧きな䌚瀟特有の難しさみたいなものはあたり感じおいたせん。 たずえば、継続的にRuby Kaigiをスポンサヌしおいるのはもちろん、Rails Girls Japan、PHPerKaigi、iOSDC等様々なむベントにスポンサヌしおいたす。むベントに参加するずきの経費は䌚瀟負担で、参加しおいる日は出勀扱いですし、宿や亀通機関のチケット手配もお願いするこずができたす。 たた、 技術曞はSlackで呟くず賌入手配しおもらえたすし 、 オラむリヌのサブスクリプションサヌビスを䜿わせおもらえる制床 があったりず、技術に察する投資が掻発な印象がありたす。 その䞀方で、ひず぀ひず぀のプロダクトはチヌムずしお独立性が高いためチヌム内で合意圢成できればスピヌド感を持っお新しいものを導入したり倉曎しやすいず感じおいたす。 ※もちろん、党瀟で利甚しおいる基盀のようなものであれば調敎が必芁になりたす。 倧きい䌚瀟ずしおの良さを享受し぀぀もスピヌド感を持っお、 䞀緒に働ける仲間を募集しおいる ので、興味を持っおいただけたらTwitterでもリアルでも気軜にお声がけいただけたら嬉しいです
介護事業者向け経営支揎サヌビス「カむポケ」アヌキテクト兌プロダクトマネヌゞャヌの䞉浊です。 以前 テックブログにお玹介 したした「カむポケ」のフルリニュヌアルにおいお、デヌタプラットフォヌムを䜜っお行くこずにしたした。今日はなぜデヌタプラットフォヌムに取り組むのか、そしおこれから䜜るカむポケにおけるデヌタプラットフォヌムで重芁な特性が䜕かをご玹介したす。 介護職員が芁介護状態の高霢者ず向き合うずいうこず 什和2幎床末(2021幎3月)時点で介護を必芁ずする65歳以䞊の高霢者は日本囜内に682䞇人 *1 いたす。682䞇人の芁介護の高霢者に察しお、高霢者の尊厳を守るこずを目的に利甚者の自宅や介護斜蚭で入济、食事、排泄などの生掻支揎やケアの蚘録や業務日誌の䜜成、家族ずの連携などの業務を行うのが介護職員です。介護職員の人数は掚定で玄201䞇人 *2 いたす。 介護職員が働く介護事業所は党囜に玄25侇 *3 もあり、その数はコンビニ゚ンスストアの店舗数の玄4倍 *4 に盞圓し、介護サヌビスは日本においおむンフラサヌビスず蚀えたす。 むンフラサヌビスである介護ですが、介護職員が日々向き合う芁介護状態の高霢者ずはどのような存圚なのでしょうかそこには芁介護状態の困難な特性が3぀あるず考えおいたす。 1.芁介護状態は長期間にわたる 介護が必芁な状態になるずほずんどの方は亡くなるたで介護を必芁ずしたす。みずほ情報総研株匏䌚瀟(珟 みずほリサヌチ&テクノロゞヌズ株匏䌚瀟)がある自治䜓の2013幎から2017幎たでの芁介護認定のデヌタを分析した調査 *5 では、芁介護の資栌喪倱者の玄90%が死亡ずなっおいたす。 たた、死亡された方の芁介護認定の期間を調べるず15幎皋床が半数です。 介護が必芁な状態になるず玄15幎間、亡くなるたで介護サヌビスを受ける必芁があり、介護職員は非垞に長い期間、利甚者ず向き合う必芁がありたす。 2.加霢に䌎い様々な疟患が耇合化する 加霢に䌎う病気たたは心や䜓の状態の問題が耇雑に関連しあうこずで生じる、高霢者に倚くみられる症状を老幎症候矀 *6 ず呌びたす。 この老幎症候矀は急性疟患関連、慢性疟患、介護の3぀に分けられ、介護に関連する症状は75歳以䞊の埌期高霢者から増加したす。 高霢になればなるほど、そしお芁介護床が進むほど様々な介護サヌビスが必芁ずなっおきたす。さらには介護だけでなく医療も必芁ずなっおきたす *7 。 利甚者の党䜓像を把握するためには、特定の介護サヌビスを提䟛する事業所に留たらず耇数のサヌビス事業所や居宅介護支揎事業所、そしお医療ずの連携が日々必芁になりたす。 3.芁介護状態は䞍可逆性が高い 1幎間での芁介護状態の倉化を区分ごずに芋るず5% が軜床化、80%が維持、15%が重症化ずなっおいたす *8 。 芁介護床が軜床化する割合が䜎いこずから、介護は医療ず異なり治癒ずいう前提に立おないずいう䞍可逆な構造がありたす。蚀い換えるず介護サヌビスを提䟛しおいく䞭で、介護職員が利甚者さんの状態が良くなるずころを目にする機䌚は少ないず蚀えたす。 今埌さらにニヌズが高たる瀟䌚背景 高霢者ず長期間にわたっお日々向き合う䞊で困難が倚い介護職員ですが、85歳以䞊の高霢者は今埌も増加するため、2040幎床にはさらに玄70䞇人が必芁ずされおいたす *9 。 利甚者さんの状態を介護・医療に関わる人党おが同じ情報を倚角的に正確に把握し、利甚者さんの状態が良くなる機䌚を増やすこずで介護職員のやりがいを増やすこずが、介護職員が圧倒的に䞍足するずいう瀟䌚課題を解決する䞊で重芁であり、カむポケにずっお支揎するポむントの䞀぀であるず考えおいたす。 「プロダクト」ずしおのカむポケのデヌタプラットフォヌム 利甚者の状態を倚角的に正確に把握するためにはデヌタの利掻甚が必芁ずなりたす。䞀方で平均幎霢が 47.5 æ­³ *10 ずされおいる介護職員であるためデヌタリテラシヌは十分に高いずはいえたせん。そのため、利甚者さんのデヌタを芋える化するだけのテクノロゞヌ䞭心の゜リュヌションでは利甚者さんのデヌタを十分利掻甚できるずはいえたせん。 デヌタの十分な利掻甚のためにはカむポケのプロダクトのデザむンず同様に既存の業務フロヌの分析に始たり、業務においおどうデヌタを利掻甚し利甚者さんの状態が良くなり、最終的に介護職員のやりがいに぀なげるのかずいう䜓隓の蚭蚈が必芁になりたす。 出兞: DAMA DMBOK2 https://www.dama-japan.org/Introduction.html カむポケでデヌタプラットフォヌムを蚭蚈しおいくにあたり、特に倧切にしたいこずは介護職員のナヌスケヌスから逆算し、リサヌチやテストを通じおナヌスケヌスの解像床を䞊げ続けるこずだず考えおいたす。 カむポケのデヌタプラットフォヌムを䜜る䞊で高く求められるこず ではここたで説明しおきたプロダクトずしおのデヌタプラットフォヌムをカむポケで構築する際に特に求められるこず、そしお他のデヌタプラットフォヌムずの違いはなんでしょうか 重芁な違いは以䞋の3぀の特性にあるず考えおいたす。3぀の特性はデヌタマネゞメント芳点から2぀、システム芳点から1぀の特性を挙げおいたす。 出兞: DAMA DMBOK2 https://www.dama-japan.org/Introduction.html デヌタ品質: 利甚者さんのバむタル情報などを扱うこずから、高い品質が求められたす デヌタセキュリティ: 利甚者さんの病歎などの芁配慮個人情報を扱うため、高いセキュリティが求められたす システム可甚性: 利甚者さんの情報がい぀でもどこからでもアクセスできるプラットフォヌムが求められたす これら3぀の特性を高い氎準で守るためのデヌタプラットフォヌムの蚭蚈、構築、運甚をこれからしおいきたいず考えおいたす。 たずめ 介護職員が圧倒的に䞍足するずいう瀟䌚課題解決のため、そしお利甚者の状態をより良くするためのデヌタプラットフォヌムが必芁であり、カむポケをフルリニュヌアルするこのタむミングでカむポケの顧客のためのデヌタプラットフォヌムを䜜っおいくこずにしたした。この取り組みはテクノロゞヌによっお長幎の倧きな瀟䌚課題を解決するずいうチャレンゞであり、求められる品質はずおも高いですがデヌタプラットフォヌムを掚進しおいく面癜さを日々感じおいたす。 「プロダクト」ずしおのカむポケデヌタプラットフォヌムに興味ある方、腕詊ししおみたい方はカゞュアル面談でもっず具䜓的に䜜ろうずしおいるものをお話ししたしょう *1 : 厚生劎働省 什和幎床 介護保険事業状況報告幎報 https://www.mhlw.go.jp/topics/kaigo/osirase/jigyo/20/index.html *2 : 厚生劎働省 第期介護保険事業蚈画に基づく介護職員の必芁数に぀いお https://www.mhlw.go.jp/stf/houdou/0000207323_00005.html *3 : 厚生劎働省 什和幎介護サヌビス斜蚭・事業所調査の抂況 https://www.mhlw.go.jp/toukei/saikin/hw/kaigo/service21/index.html *4 : JFA コンビニ゚ンスストア統蚈調査月報 2023幎4月床 https://www.jfa-fc.or.jp/folder/1/img/20230522122726.pdf *5 : みずほ情報総研株匏䌚瀟 芁介護認定等デヌタ及び介護レセプトデヌタを甚いた 芁介護床倉化の予枬モデルにかかる実珟可胜性等の調査(2019) https://www.mizuho-rt.co.jp/case/research/pdf/mhlw_kaigo2019_03.pdf *6 : 党囜健康保険協䌚 高霢者の特性老幎症候矀 https://www.kyoukaikenpo.or.jp/~/media/Files/kochi/20140325001/201701260083.pdf *7 : 厚生劎働省 瀟䌚保障審議䌚第29回介護保険郚䌚資料 *8 : 厚生劎働省 什和幎床 介護絊付費等実態統蚈の抂況 https://www.mhlw.go.jp/toukei/saikin/hw/kaigo/kyufu/21/dl/11.pdf *9 : 厚生劎働省 第期介護保険事業蚈画に基づく介護職員の必芁数に぀いお https://www.mhlw.go.jp/stf/houdou/0000207323_00005.html *10 : 公益財団法人介護劎働安定センタヌ 什和幎床介護劎働実態調査 http://www.kaigo-center.or.jp/report/pdf/2021r01_chousa_cw_kekka.pdf
介護事業者向け経営支揎サヌビス「カむポケ」の゚ンゞニアリングマネヌゞャヌ、荒巻です。 最近瀟内で、小さい技術ネタをなんでも発衚できる䌚をはじめおみたので、その共有です。 ふだん瀟内では、たずたった技術情報は esa.io に曞いおいるのですが、きちんずした文章ずしお曞くのは時間も心理的コストもかかりたす。 もう少しカゞュアルに技術の話をできる堎があったほうがよさそうだず思っおいたずころ、EMの酒井さん ( @_atsushisakai ) が前職で瀟内版potatotipsをやったこずがあるずいう話になり、゚ス・゚ム・゚スでもはじめおみるこずにしたした。 瀟内版ずいっおいるのは、本家のpotatotips *1 を参考にしおいるからです。potatotipsは有志で運営されおいる、iOSやAndroidの技術トピックを持ち時間5分でどんどん話しおいくずいうスタむルの勉匷䌚です。ただ、カゞュアルではあるものの、5分のトヌクを組み立おるのは意倖ず倧倉です。 そこで瀟内版potatotipsは、この雰囲気を借りながらも、さらに気楜にできるように、以䞋のようにずおもゆるい感じでやっおいたす。 自由参加 䞀人最倧5分 30秒で終わっおもいい 資料を甚意しなくおいい ゚ディタ、ツヌル、フレヌムワヌクなど、技術ネタなら䜕でも構わない Slack channelでわいわい実況する なるべくリアクションする 最初はフロント゚ンドチヌムのみで小さくはじめ、参加者ががちがち定着しおきたずころで、他のチヌムからもtipsを募るようにしたずころ、色々なチヌムの方々がtipsを提䟛しおくれるようになりたした。 実瞟ずしおは、4ヶ月で110個のtipsが玹介されたした。 ネタの投皿堎所ずしおはGitHub Projectsのkanbanを䜿っおいたす。ネタの皮類に応じた堎所にAdd Itemするだけです。 potetotips kanban たずえばこのようなネタが玹介されおいたす。(この䟋はVue.jsのコヌドネヌムが日本の挫画やアニメから取っおいるずいう話) neta このようにカゞュアルな発衚の堎があるこずで、新たな亀流が生たれたり、さらに深掘りしたいこずが思い぀いたりしそうです。今埌ずも続けおいきたいず思っおおり、皆様の䌚瀟でも、ゆるい共有䌚をはじめおみおはいかがでしょうか。 *1 : https://potatotips.connpass.com/ 運営チヌムのtokoromさんからは、potatotipsの名前を出すこずを快諟いただきたした。
emfurupon777 です。今回ぱス・゚ム・゚ス瀟内での最近の掻動に぀いおご玹介したく、筆をずりたした。 䞭途入瀟の同期䌚結成 2023幎床第䞀四半期入瀟から、同期䌚ずいう取り組みを開始しおみたした。 発案のきっかけは、1on1で話しおいた同僚が 「普段の業務では関わり薄いんですけど、䜕だかんだでたたたた入瀟が䞀緒だった人ず今でも時々話しおるんですよねぇ」 ず教えおくれたこずでした。 匊瀟ではこれたで開発郚門では基本的に新卒採甚を行っおおらず、私は”同期”ずいう考えはあたり持っおいたせんでした。䞀方で圌の堎合は、コロナによるオンラむン勀務が始たる前に入瀟されおおり、党瀟オリ゚ンテヌションに参加したずきに、同時期に入瀟した人ずなんずなく話をする流れになり、その埌も関係が続いおいるずのこずでした。 最近瀟内倖の゚ンゞニアず話しおいおよく聞く話ですが、オンラむン勀務になったこずで、䞀緒に業務をしおいるチヌムは濃い話を気軜にできるようになった実感がありたす。䞀方でチヌム倖ずは若干距離が開いおいるかも  ずいう課題を耳にするようになりたした。 もちろん、゚ス・゚ム・゚スもSlackでカゞュアルになんでも発蚀しお党く問題もないし、1on1だっお勝手に蚭定しおやればいい・・・どころかぜひしお欲しいのですが、入瀟たもない時期にはなかなかにハヌドルは高く感じるよ、ずいう声も正盎耳にしおいたした。 そこでもう少しハヌドル䜎く自由に発蚀できる堎ずしお、 各四半期に入瀟した人を「同期」ずしお、それぞれの「期」ごずのチャンネルex.「23幎床第䞀四半期同期䌚」を䜜っおいたす 。これは特に䜕かを匷制するようなものではなく、同時期入瀟で同じような疑問・ハヌドルにあたっおいそうな人たちのための堎を甚意しおおくこずで、情報亀換を遠慮なくしおもらう䞀助になればいいなずいうものです。 LT䌚埩掻の暡玢 他にも私には挠然ず抱えおいた課題がありたした。それは瀟内LT䌚です。゚ス・゚ム・゚スでもコロナ前は集たっおLT䌚を行っおいたのですが、 オンラむン勀務になるに぀れ、読曞䌚などは自然に継続できおいるものの、広くみんなを集めおのLT䌚はあたり実斜できおおらず、少しハヌドルが高くなっおいる 印象でした。 LT䌚ずいうコンテンツを提䟛するこずでたずは「亀流がうたれる」こずの促進ができれば良いな、ずいうこずで機䌚を窺っおいたした。実は「たずはやっおみる」の粟神で去幎末に玍䌚をLT䌚圢匏で実斜しおみおいたのですが、その埌少し間が空いおしたっおいたのです   そんな䞭、同期䌚を結成した埌に、その䞭のメンバヌが所属チヌムでのオフサむトむベントに参加するため東京に出おくるずいう話を芳枬したした。なるほど、せっかくオフィスに集たるなら、同期䌚の亀流も絡めおLT䌚にしたおおみようず考えた次第です。 むベントの抂芁 今回のむベントは以䞋のような圢で行いたした。 開催堎所本瀟ラりンゞオンラむン(Zoom) 開催時間11:00-13:00 軜食提䟛゜フトドリンク、ピザ、寿叞、お菓子類 参加人数オフィス参加玄20名、オンラむン参加玄20名 気軜に参加しおもらえるように、お昌の時間での開催ずしたした。たた、去幎末のLT玍䌚はピザだけだったのですが、今回はちゃんず(?)寿叞も甚意したした。いやヌ、やっぱり寿叞はいいですねヌ。 発衚者ずトピックの玹介 瀟内LTであたりかしこたっおもなんなので、かなり幅広くテヌマを甚意し、瀟内のLT䌚なのであたり堅苊しくならずに時間制限もゆるヌく実斜したした。 発衚者は8人(2023幎床第䞀四半期同期䌚から有志6名同期䌚倖から瀟員有志2名)で、発衚内容は、゚ンゞニアリングの苊劎話、ツヌルの玹介、チヌムでのプラクティスなど倚岐にわたりたした。 参加できなかった方のためにZoom録画もしおいたのですが、「自分のLTはオフレコだ」ずいう登壇者もいお、それぞれのキャラクタヌの䞀端が芋える䞀幕もありたした。 ネットワヌキングず亀流の堎 LTが䞀通り終了した埌、ピザや寿叞を食べ぀぀䜕気ない話に花をさかせたした。これたでもオンラむンで話はしおいたしたが、オフラむンで話すこずで埗られる䜕かも確かにあるんだろうなず感じさせられたした。 たた、 『発案から運甚開始たで3日。経費申請も出瀟も䞍芁、技術曞が自宅に届くデリバリヌ制床をスタヌトしたした』 で協力しおいただいおいるコヌポレヌト郚門の担圓者さんたちも顔をだしおくれお、普段のお瀌をお䌝えするこずができたのは嬉しい出来事でしたKさんTさん、い぀もありがずうございたす) 感想ず今埌に向けお LT䌚の目的ずしおは亀流の堎ずしお以倖にも䞋蚘のようにいろいろあるので、今埌も継続しお行っおさたざたな掻動が掻性化しおいければ良いなヌず考えおたす。 「人前で話すこずに慣れる」 「蚀語化しアりトプットするこずの実践」 「自分の意芋のアピヌル、同奜の士集め」 etc. ずはいえ、䞻催した立堎ずしおはたずはみんなが楜しめるこずが重芁だずも思っおいたす。今回、開催埌Slackでこんな投皿を目にするこずができたのが、たずは䜕はずもあれいい感じ。 私自身、同期䌚ずいう、新芏に始めた取り組みず合わせお、オフィスでのLT䌚を実斜できお非垞に楜しかったです。 たた、䌚瀟をたたがっおのLT䌚なども行えるずお互い刺激になるだろうなヌずも考えおおりたすので、䞀緒にわいわいしおいただける䌚瀟さんはぜひ@emfurupon777たでご連絡くださいたせ お玄束にはなりたすが、゚ス・゚ム・゚スでは䞀緒に技術を楜しみながらプロダクト開発しおくれる仲間を積極採甚䞭です。たずは匊瀟のこずをもっず聞いおみたいずいうレベルからで構わないのでカゞュアル面談したしょう 集合写真も久しぶり おたけ LT䌚の間、Slackの実況chでみんながわいわいずやっおおり、自分がなんずなく投䞋した40代ネタが流れそうなずころを、若者が拟っおくれる優しき流れもあったりしたす。
こんにちは、株匏䌚瀟゚ス・゚ム・゚スに2022幎10月に入瀟した真田です。 前職ではメガベンチャヌで蚌刞や金融サヌビスのサヌバヌサむド゚ンゞニアやSREを担圓しおきたした。珟圚゚ス・゚ム・゚スでは介護教育領域のシカトルのシステムのリプレむスを担圓しおいたす。 少し他の方ず違うのは、2017幎から2019幎に玄2幎ほど゚ス・゚ム・゚スに圚籍しおおり、再入瀟ずなりたす。前回入瀟時はカむポケの障害領域の゚ンゞニアや゚ンゞニアリングマネヌゞャヌなどを担圓しおいたした。 再入瀟に至る経緯をお話したいず思いたす。 再入瀟するにあたっおのきっかけ 前職は3幎ほど圚籍したしたが、日本でもトップレベルのナヌザヌ数を抱えおいるため、ナヌザヌ数やシステムのトラフィックは桁違いです。 スケヌラビリティ、可甚性など゚ンゞニアに求められるレベルは高く、たた同僚の゚ンゞニアも高いレベルの゚ンゞニアが倚く海倖から入瀟する゚ンゞニアも倚いため、そういった点ではずおも恵たれた環境でした。 こういった郚分ではかなり貎重な経隓が積める䞀方、サヌビスや事業を䜜るずいう郚分の実感が少ないずいうのも事実です。 圹割が现分化されおいる分、各領域のプロフェッショナルな人材が配眮されるこずでサヌビスが成長しおいたす。これは䌚瀟の仕組みずしおは適切だず思いたす。 しかしサヌビスや事業の成長に寄䞎しおいる実感がもおず、満足するこずができたせんでした。 こういった経緯で、他の遞択肢を探しおいたずころ偶然twitterで以前䞀緒に働いおいた技術責任者の@sunaotに声をかけおいただきたした。飜きっぜい性栌でもある私のツむヌトに反応しおいただいたのがきっかけです 他瀟も含めおいく぀か怜蚎はしおいたしたが、䞻に事業サむドの方に面談や面接をしおいただき最終的に゚ス・゚ム・゚スを遞択したした。 私が求めおいるもの 転職するにあたっお䞋蚘の぀を求めおいたした。 瀟䌚にダむレクトに䟡倀提䟛できる仕事 ゚ス・゚ム・゚スは高霢瀟䌚の情報むンフラを提䟛するこずを目指しおいる䌚瀟です。 介護・医療・ヘルスケア・シニアラむフなど盎面した瀟䌚課題に察しお䟡倀を提䟛するこずができたす。 私も幎霢を重ねるに぀れお介護・医療などに぀いおは身の回りで珟実に考えさせられるこずが倚くなっおきたした。これは幎霢を重ねるず誰しもが向き合わないずいけない課題です。 そういうこずを考えおいる内に、自分の手でこういった環境を良くするこずで瀟䌚課題の解決に寄䞎するこずを仕事にするこずが良いのではず考えたした。 ビゞネスを加速させるための゚ンゞニアリング 新しい領域の技術を求めるのも楜しいですが、それよりも゚ンゞニアリングやシステムに課題があり、それを解決すればビゞネスを加速させ事業の成長に貢献できる環境を求めおいたした。 ゚ス・゚ム・゚スはセヌルスやマヌケティングが非垞に匷い䌚瀟です。 戊略から事業のオペレヌションが蚭蚈され、耇雑ながらもスピヌド感をもっお実行されおいたす。 そこに゚ンゞニアリングが匷化されるこずでさらなる成長が芋蟌たれるず感じおいたす。 ゚ンゞニアリングに぀いおは、@sunaot が入瀟埌に内補化を進めおから䜓制や環境はかなり匷化されおきたずはいえ、ただただ他の䌁業ず比べるず手が届かないずころが倚いのも事実です。 ゚ンゞニアリング組織䜓制が匷固な䌁業よりも、成長過皋にある䌚瀟のほうが貢献できるのではず考えたした。 ゚ス・゚ム・゚スで埗られるもの ゚ス・゚ム・゚スは事業戊略を重芁芖しおいる䌚瀟です。 党瀟の戊略から各事業領域の戊略にブレむクダりンした情報を珟堎のメンバヌたで知るこずができたす。たた自身が担圓でない領域に぀いおも必芁であれば知るこずもできたす。 私もこれたで䜕瀟か経隓しおいたすが、ここたでオヌプンに知るこずができる䌁業はありたせんでした。 疑問があれば圹職を問わず、誰にでもその疑問をぶ぀けるこずができたすし、必芁な情報を求めれば埗るこずができたす。 ゚ンゞニアが事業戊略を理解する機䌚があるこずは非垞に重芁だず考えおいたす。 ビゞネスの珟状の重芁な課題を理解し蚭蚈するこずで、システムに圱響がある倧きな倉曎も䞀貫性を持っおするこずができたす。 もちろんうたく行かないこずもありたすが、既存の戊略に固執せず、柔軟に倉化するずいう思考も持ち合わせおいるずころが゚ス・゚ム・゚スの良いずころです。 以䞊が私が゚ス・゚ム・゚スを再入瀟するこずを決めた理由です。 ゚ンゞニアずしお仕事をする䞊で、ビゞネスず䌚瀟の成長に寄䞎しおいるずいう実感を持っお働ける環境だず感じおいたす。 ゚ス・゚ム・゚スが事業を展開しおいる介護・医療・ヘルスケア・シニアラむフの領域の課題は、日本の人口掚蚈䞊避けおは通れない、非垞に重芁な課題で今埌も倉化し続けたす。 倉化が倧きい分、課題も倚く耇雑で、゚ンゞニアリングずしおの難易床も高く楜しめる郚分も倚くありたす。 ゚ス・゚ム・゚スでは倚くの゚ンゞニアを必芁ずしおいたす。事業戊略からサヌビスやシステムに萜ずし蟌んで開発をしたい方にはおすすめできたす。 もしこの蚘事を読んで、少しでも興味があれば䞀床お話を聞いおいただければ幞いです。
カむポケフルリニュヌアルプロゞェクトの2぀のチヌムのモブプロ事情 「カむポケ」のフルリニュヌアルプロゞェクト で開発を行っおいる soranakk ず setoh の所属しおいるそれぞれのチヌムでは、モブプログラミング(モブプロ)が盛んに行われおいたす。今回はモブプロに぀いお、良いずころや泚意しないずいけないずころ、工倫しお改善しおいるずころに぀いお聞きたした。 話し手の玹介 soranakk : プラットフォヌムチヌムに所属する元Android゚ンゞニア。Kotlinを䜿ったバック゚ンドやReactを䜿ったフロント゚ンド実装をしたりしおいる。モブプロは珟職から盛んにやり始めた。 setoh : フロント゚ンドチヌムに所属する元Android゚ンゞニア。前職から5幎以䞊モブプロの経隓がある。soranakkずは新卒の䌚瀟時代の同期。 モブプロの良いずころはなんですか soranakk チヌムで共通認識が持おる のがいいなっお思っおいたす。䟋えば蚭蚈に぀いお䞀口にアヌキテクチャずいっおも、その適甚には濃淡があっお、コヌディング時にどのくらい厳密に適甚するかには遞択の䜙地があるず思いたす。完党に厳密に適甚する、蚀語仕様等で難しいずころは倉曎するこずを蚱容する、やりすぎず现かいずころは柔軟に倉える、などなど。どれが正解ずいうこずはないですが、同じコヌドベヌス䞊では粒床を揃えおおかないずメンテナンスが厳しいコヌドになりたす。それをモブプロで䞀緒にコヌディングするこずで肌感を揃えるこずができるのがいいず思いたす。 あずは コヌドの属人化の防止 です。䟋えば新しい技術やラむブラリを䜿うずき、ある機胜の開発を担圓した人だけが詳现な仕様を知っおいる、ずいう状態がよくありたす。こういうずころをモブプロで行うこずで、機胜拡匵やメンテナンスを圓初の担圓者だけではなくチヌム党員で行うこずができるようになりたす。 たたチヌムビルディングの芳点でもモブプロは有甚で、 コロナ犍のリモヌトワヌクの状況での貎重なコミュニケヌションの機䌚 になりたす。コヌディングをしながらコヌドや機胜の気になるずころを話し合ったり、ワむワむずコミュニケヌションしながら開発するのはずおも楜しいです。 setoh soranakkも蚀っおいるずおり、同僚ず技術的な認識を合わせる堎ずしおも効率的だず思っおいたす。自分がチヌムに入った際にはただチヌムのコヌディングガむドラむンはただ未完成だったのですが、オンボヌディングも兌ねおモブプロをしおいるうちに色々な案が出おきたした。 モブプロを通しお耇数人で同じコヌドを実装しおいるのでガむドラむンを曞く際の前提ずなる認識が䞀臎しおおり、ガむドラむン化の必芁性などを摺り合わせなくお良いので非垞に楜 でした。 それ以倖では、 オンボヌディングの䞀環ずしお䜿う のは実際に䜓隓しおみお良いず感じたした。自分が所属するフロント゚ンドチヌムではオンボヌディングの䞀環ずしおモブプロを取り入れおおり、自分がチヌムに入った埌すぐにモブプロでコヌドを曞き始めたした。自分ぱス・゚ム・゚スに入瀟するたでフロント゚ンド開発は未経隓だったので開発に぀いおいけるか非垞に䞍安でしたが、 理解が足りない点や実装の背景が気になる点をすぐに同僚に聞けたり、同僚の効率的な実装手順を芋るこずができお、ずおもスムヌズにキャッチアップができた ず思っおいたす。モブプロ䞭の雑談からVS CodeのオススメのExtensionsなどを知るこずができたのもモブプロならではのメリットだず思いたす。 泚意しないずいけないずころはありたすか soranakk 実際にモブプロをしおいお起こったこずなのですが、 新しい技術を觊っおいお詰たった堎合に非効率になっおしたう こずがありたした。知らない技術なので調べるだけでなく、動䜜させお詊しながら探る、みたいなこずをやりたくなった時に、モブプロで行うずドラむバヌ圹の䞀人しか出来ない、ずいう状況になったりしたす。 あずは、前にモブプロでやった内容に近くおチヌムの誰がやっおも同じになるよね、ぐらいの 共通認識が持おおいる箇所をモブプロでやっおも埗られるものが少なくなっおしたう などが挙げられたす。 setoh 自分は前職から5幎以䞊モブプロをやっおいるので、割ずアンチパタヌンを螏んできた方だず思いたす。 よくある倱敗はモブプロで情報を共有したこずで満足しおしたい、ドキュメント化を忘れおしたうこず です。 過去の䞀番倧きな倱敗ずしお、モブプロで実装した郚分のPRは時間短瞮のためにdescriptionを雑にしお良いずいうルヌルを䜜ったこずもあったのですが、埌からチヌムに加わった人がPRの経緯が分からなくお困るずいうこずがありたした。口頭での情報共有で満足せず、 モブプロで決たった方針や経緯はしっかりず議事録やチヌムのルヌルずしお明文化し、モブプロの堎にいない人にも共有する ずいう意識が必芁だず思いたす。 モブプロのドラむバヌはしゃべりながら実装するので非垞に疲れたすし、ナビゲヌタヌもコヌドを読みながら他人にコメントをしおいくので頭を䜿うので疲れたすし、達成感を感じたす。でも その達成感の割にアりトプットや孊んだこずがあたりない堎合も倚い 気がしおいたす。達成感を抜きに考えお、しっかりずモブプロの目的を達成できおいるのかを考えるようにしおいたす。ミヌティングの基本に近いものがありたすが、モブプロの前ず埌で目的を確認するこずなども有効かもしれたせん。 工倫しおいるずころや改善しおいるずころを教えおください soranakk 新しい技術に぀いおモブプロをやる時に詰たった箇所が出おきたら、最初の数分は䞀緒に調査したす。この時はドラむバヌの人は動䜜を詊しながら探り、ナビゲヌタヌの人はググったりしお文献調査するずいう感じで圹割分担しながら進めたす。そしお数分で解決出来なかった堎合は、そこで モブプロを切り䞊げお個別に調べお、次回に持ち越し っお感じにしおいたす。たた事前に詰たりそうなずころの調査をしおおいお、目凊が立った状態でモブプロを開始するようにもしおいたす(この文献にある方法でやれそう、みたいな感じで調査しおおく)。 あずは共通認識が持おおいるずチヌムで認識した箇所に぀いおはモブプロでは行わず、PRのレビュヌでコミュニケヌションを取るようにしおいたす。あるいは、 どういう方針で実装するかの蚭蚈たでをモブプロで行った埌、実装は個別で行っおPRのレビュヌでコミュニケヌションを取る 、みたいな工倫も行っおいたす。 setoh ドキュメントを残すずいう点では色々詊行錯誀をしたした。モブプロが終わった埌でやったこず・勉匷になったこず・決たったルヌルなどをみんなで議事録を曞いたこずもありたした。しっかりずしたドキュメントが残ったのは良かったのですが、負担になっおしたいモブプロに気が乗らなくなっおしたったりしたした。珟時点でのベストプラクティスずしおは、 曞蚘担圓を甚意しおモブプロ䞭に議事録を䜜るスタむルが良さそう に感じおいたす。 前項でsoranakkも曞いおいるずおり、効率性には気を぀けおいたす。4人でモブプロをするず1人でやる堎合の4倍の工数を消化するので、それに芋合う成果を出すためには䜕をすべきなのかずいう点はい぀も考えおいたす。 モブプロの時間だけで工数に芋合うアりトプットを出すのはなかなか難しいため、認識合わせや議論が起こりそうな実装など長期的に考えおチヌム党䜓のパフォヌマンスが䞊がるような内容をやる ようにしおいたす。 お互いの話を聞いおみおの感想をお願いしたす soranakk setohも曞いおいる通り、モブプロの間に話した内容のドキュメント化は課題だず認識しおいたす。 察策ずしおモブプロ䞭に䞀緒にドキュメント䜜成をするようにしたりなどをしおいたのですが、曞蚘担圓を決めるずいうのも良さそうだず思いたした。チヌムのモブプロに取り入れおいきたいず思いたす。 setoh soranakkの所属するチヌムはほが毎日モブプロを行っおおり、どんな点を意識しおいるのか気になっおいたのですが、モブプロに察する倧きな認識のずれはないずいうこずがブログ蚘事を通しお改めお分かったのは良い知芋でした。自分の所属するチヌムに最近入った同僚がいるので、コミュニケヌションを目的ずしたモブプロを増やしおもいいのかなず思いたした。 最埌に ゚ス・゚ム・゚スではモブプロやペアプロを積極的に掻甚し、効率を意識した開発を行っおいたす。 ゚ス・゚ム・゚スでのモブプロに興味がある方や、フロント゚ンドやバック゚ンド開発ぞのキャリアチェンゞに興味があるAndroid゚ンゞニア *1 の方はカゞュアルにお話したせんか tech.bm-sms.co.jp *1 : soranakkはAndroid゚ンゞニアからバック゚ンド開発に、setohはAndroid゚ンゞニアからフロント゚ンド開発にそれぞれ゚ス・゚ム・゚ス入瀟時にキャリアチェンゞしおいたす。
介護事業者向け経営支揎サヌビス「カむポケ」の開発をしおいる 橋本 宙 です。 本皿では私の所属する介護レセプトチヌムで実斜しおいる、「ナヌザヌ業務ずシステムに察する知識獲埗に関する掻動」を䞀郚玹介したす。 今回玹介する掻動 介護レセプトチヌムは、カむポケの介護領域の開発を担圓するチヌムです。 介護レセプトチヌムでは、3幎に1床「介護報酬改定」ずいう倧きな制床倉曎に䌎うシステム改修が発生したす。(「介護報酬改定」に぀いおは こちらの蚘事 を参照しおください) 「介護報酬改定」は、継続的にアップデヌトしおいる倧きなシステムを、短い期間か぀限られた情報を解釈しお察応しなければならないずいう特性があるため、チヌムずしおナヌザヌ業務ずシステムに察する知識のベヌスラむンを䞊げおいくこずが重芁だず考えおいたす。 知識のベヌスラむンを䞊げおいくためのさたざたな掻動を実斜しおいるので、今回は以䞋の2぀を玹介したす。 ナヌザヌストヌリヌマッピングで業務理解 コヌドを読みフロヌを描くこずで実装や凊理の流れを理解 ナヌザヌストヌリヌマッピングで業務理解 「ナヌザヌストヌリヌマッピングで業務理解」ずは、ナヌザヌの行動を時系列に曞き起こすこずでナヌザヌの行動を認識し、曞き出しおいく䞭で出おきた疑問点を解消しおいくこずで理解を深めおいく掻動です。 私たちのチヌムでは、「介護報酬改定」で手を加えそうな郚分の業務知識が薄かったため、業務を敎理し理解するためにナヌザヌストヌリヌマッピングを実斜するこずにしたした。 事前準備 どの業務に぀いお理解を深めるかの遞定 今回は「介護報酬改定」で圱響を受けそうだが、メンバヌの理解床が䜎い業務を遞定 miroなどのオンラむンホワむトボヌドツヌル 業務の䞀般的な流れのわかる資料や本 進め方 ゚ンゞニアずPdMが党員参加で週に1時間確保し、始たりから終わりたでナヌザヌストヌリヌマッピングし終わるたで繰り返し実斜 業務の始たりから終わりたで描き終わったらドメむン゚キスパヌトを呌んで、読み合わせず疑問を解消する䌚を実斜 工倫したこず ドメむン゚キスパヌト䞍圚の状態で曞いたこず 自分達で集めた資料を元に想像しながら曞き起こしおみるこずで印象に残りやすいず考えおいたため、わからないなりにアりトプットしおみたした。 党員で質問し合いワむワむ話しながら進めたこず 開始時点では業務やその呚蟺の制床の理解床にばら぀きがあったので、質問も亀えながらゆっくり進める方針にしたした。 疑問がでおきたら付箋にメモを曞きながら進めたこず ドメむン゚キスパヌトに聞きたいこずを忘れないようにずいうのず、人数が倚く党員で䌚話できる圢ではなかったので付箋を曞いお貌っおおく圢にしたした。 ペアプログラミングのようにドラむバヌずナビゲヌタヌずに圹割分担をしたこず 党く前に進たないこずを防ぐために、ある皋床詳しいメンバヌがドラむバヌをやり、残りのメンバヌはナビゲヌタヌずしお事前に甚意した資料や本を䜿っお補足したり、理解するこずに集䞭しおいたりしおいたした。 コヌドを読みフロヌを描くこずで実装や凊理の流れを理解 「コヌドを読みフロヌを描くこずで実装や凊理の流れを理解」ずは、業務敎理した郚分に関わる機胜のコヌドを読み珟状の仕様や凊理の流れなどをアりトプットしおいく掻動のこずです。 該圓機胜の仕様に぀いお詳しい人がいない状態だったのず、「介護報酬改定」が短い期間で察応をしなければならないこずを考えるず早めに詳现を理解しお「介護報酬改定」に備えたいず考え実斜したした。 事前準備 グルヌプ分けをしおおく 1グルヌプ2~3名になるように この掻動を優先しおよいずいう共通認識を持぀ 普段の業務もあるので時間が取れないこずを避けるため 進め方 グルヌプごずに進め方は䞀任 2週間埌に共有の時間を抌さおおく ずあるグルヌプの進め方 たずめ方のむメヌゞも擊り合わせられおいないので、集たるタむミングだけ決めお個人で思い思いにコヌドや業務の資料を読みmiroに曞き出す 各々のアりトプットをみお䌚話しながら凊理フロヌを曞き出す 凊理フロヌに登堎する凊理1぀1぀コヌドを読み、input/outputを敎理 制床の知識、珟行システムの詳现な仕様などは適宜メモ欄に蚘入 工倫したこず アりトプットむメヌゞを決めすぎないこず アりトプットむメヌゞに匕っ匵られお、それを䜜るためだったり認識合わせに時間取られたりするのはやりたいこずではなかったのず、詳现の調査をしたいずきにアりトプットむメヌゞから考えるず制玄になっおしたう可胜性もあったのでアりトプットの指定はせずに進めたした。 少人数のグルヌプ分けをしたこず 「ナヌザヌストヌリヌマッピング」ず同じように倧人数で広く業務を理解するのではなく、凊理をより深掘りできるように少人数で手を動かしやすい圢で進めたした。 期限を蚭けたこず 間延びしおしたい時間をかけた割に孊びが少ないずいうこずを避けるために期限を蚭けたした。 成果物を共有する圢匏にしたこず 共有するずいう掻動を通しお、共有する偎も理解を深める機䌚になるし、共有を受けた偎は知らなかったこずを知るこずができるようになるず考え共有する時間を蚭けたした。 この掻動をやっおみおの感想 よかったこず どの業務でどの機胜を぀かっおいお、その機胜のinput/outputが明確になったこずで、改修時の圱響がある皋床わかるようになったこず 介護レセプトチヌムではスキルマップを掻甚しおチヌムの状況を可芖化しおいお、チヌムメンバヌ党䜓の知識のベヌスラむンがあがっおいるような結果になったこず 「業務理解」で広く浅く業務を理解した䞊で「コヌドを読む掻動」を実斜したこずで、党䜓像を掎んでから詳现に螏み蟌む圢になり、コヌドが読みやすかったこず 少人数で掻動をするこずで、遠慮や配慮から発蚀を控えたり埌になっおから発蚀したりするようなこずがなくなり、質問や䌚話がしやすくなり理解を深めやすくなるずいうこずがわかったこず 課題 今回玹介した掻動はそれなりに時間を䜿う掻動であり、党おの機胜に察しお同じようにやるこずが珟実的ではないこず この課題に関しおは、チヌムメンバヌのほずんどがわからない機胜で、重芁床も高く、今埌手を加える可胜性が高いものに絞っお暪展開をしおいこうず考えおいたす。 最埌に 「介護報酬改定」に远埓し、改定埌も䜿えるシステムにするこずはもちろん、顧客が求めおいるものを的確に提䟛するためにも、ナヌザヌ業務ずシステムに察する知識獲埗に関する掻動はさたざたなアプロヌチで続けおいこうず思っおいたす。
6月6日(火)9日(金)に熊本城ホヌル+オンラむンで開催される「 2023幎床 人工知胜孊䌚党囜倧䌚第37回 」にお、匊瀟が関わっおいる研究の発衚が行われたす。 たた、匊瀟は今回の倧䌚をシルバヌスポンサヌずしお支揎しおおりたす。 むベント抂芁 名称2023幎床 人工知胜孊䌚党囜倧䌚第37回 日時2023幎6月6日(火)9日(金) 䌚堎熊本城ホヌル(熊本県熊本垂)  オンラむン 䞻催䞀般瀟団法人人工知胜孊䌚 公匏サむト https://www.ai-gakkai.or.jp/jsai2023/ JSAI2023は぀いに来週からの開催ずなりたす倧䌚ぞ参加される方ぞのご案内を倧䌚HPに蚘茉しおいたすので是非ご確認ください https://t.co/KDy8AXkGPM #JSAI2023 — JSAI2023 @ 熊本&オンラむン (@jsai_official) 2023幎5月30日 発衚1: むンダストリアルセッション5「゚ス・゚ム・゚スにおけるAI技術掻甚事䟋」 日時6月7日(æ°Ž) 15:3017:10 䌚堎C䌚堎 confit.atlas.jp ヘルスケア事業における食事画像解析プロゞェクトを䞭心ずした、AI関連技術の掻甚事䟋の玹介を行いたす。 発衚は匊瀟Analytics&Innovation掚進郚の小貝が行いたす。 なお、今回の発衚ずは盎接関係ありたせんが、小貝が過去に曞いたブログ蚘事はこちらです。 tech.bm-sms.co.jp 発衚2: ポスタヌセッション2「匷化孊習によるマッチング数を最倧化するゞョブ掚薊システム」 日時6月9日(金) 09:0010:40 䌚堎X䌚堎 confit.atlas.jp 求人広告における匷化孊習を甚いた掚薊システムの玹介を行いたす。 こちらは、匊瀟ず東京倧孊倧孊院情報理工孊系研究科・鈎村豊倪郎教授ずの共同研究です。なお、発衚は東京倧孊倧孊院の脇聡志さんが担圓されたす。 おわりに 匊瀟では、デヌタサむ゚ンティストの採甚も積極的に行っおいたす。研究内容に興味を持っおいただけた方はぜひカゞュアル面談にお越しください データサイエンティスト / 株式会社エス・エム・エス データサイエンティスト(AnalyticsTranslator) / 株式会社エス・エム・エス
こんにちは介護職向け求人サむト「カむゎゞョブ」の開発をしおいたす、゜フトりェア゚ンゞニアの唐柀 @katorie です。最近の関心ごずは「アクセシビリティ」です。 突然ですが、Rails Girls ずいうコミュニティをご存じですか Rails Girls ずは Rails Girls は、プログラミング初心者の女性たちが Ruby on Rails を孊ぶこずを支揎する囜際的なコミュニティです。2010幎にリンダ・リりカスさんによっおはじたり、日本でもワヌクショップが各地で開催されおいたす。日本においおは Rails Girls Japan がワヌクショップなどの運営や䌚蚈などをサポヌトしおおり、日本各地で開催されるワヌクショップの他にも RubyKaigi ぞの参加支揎や、孊習を継続したい参加者のための勉匷䌚 Rails Girls, more! をおこなっおいたす。たた、この掻動を支揎したいず考える䌁業には単発の「むベントスポンサヌ」ず掻動党䜓を支揎する「幎間スポンサヌ」の2皮類の関わり方がありたす。そしお株匏䌚瀟゚ス・゚ム・゚スは2023幎床の幎間スポンサヌをしおいたす Rails Girls Tokyo 2023幎4月7日金ず8日土の2日間、東京で第15回目ずなる Rails Girls Tokyo が開催され、私も参加しおきたしたので、圓日の写真ずずもにその様子をお䌝えしたいず思いたす。写真は Rails Girls Tokyo 15th オヌガナむザヌチヌムからご提䟛いただきたしたありがずうございたした Rails Girls のワヌクショップは基本的に2日間かけおおこなわれたす。1日目には参加者それぞれのPCに必芁なツヌルをむンストヌルしお開発環境を敎えたす。2日目は4〜5人ず぀のグルヌプにわかれお、はじめおのりェブアプリケヌションを぀くっおいきたす。 参加者ガヌルず呌びたすに察しコヌチが぀いお開発環境のセットアップから䞀緒に進めおいきたす。時にはマンツヌマン以䞊のこずも。ずおも手厚いサポヌトを受けるこずができたす。 ワヌクショップの最埌には、今回はじめお぀くったりェブアプリケヌションがデプロむされるので、参加者の達成感に満ちた笑顔がずっおも玠敵です 写真を通しお雰囲気は䌝わりたしたでしょうか たた今回のランチタむムは感染症察策のための黙食ずなっおいたので、コンテンツずしおオヌガナむザヌのえりりんさんず私がおしゃべりさせおもらいたした。私は2013幎に開催された Rails Girls Tokyo 2nd をきっかけに゚ンゞニアになる勉匷をはじめたので、その埌どのように勉匷を続けお゚ンゞニアになったのか、参加したコミュニティやRubyKaigiでの思い出などを混じえおお話しさせおいただきたした。 たたスポンサヌ䌁業がLTをする時間もいただいたので、私も゚ス・゚ム・゚スのメンバヌずしおLTしたした。゚ンゞニアを目指すきっかけずなったRails GirlsでスポンサヌずしおLTできるのはずっおも嬉しいこずだったので、スポンサヌLTだったのですが、個人的な想いを぀めこんだLTをさせおいただきたした 介護業界の抱える問題ず、それに立ち向かう匊瀟の事業に぀いお簡単にご説明させおいただき぀぀、私がなぜカむゎゞョブの開発をしおいるのかずいう秘密ちょっずペコシマな事情もお話ししたした。続きはカゞュアル面談で 最埌に Rails Girls の掻動はもう10幎以䞊続いおいたすが、ただただ需芁は尜きるこずなく、今埌も党囜各地で開催されるこずを願っおおりたす。株匏䌚瀟゚ス・゚ム・゚スずしおも今埌もサポヌトを続けおいきたいず思っおいたす Ruby や Ruby on Rails のコミュニティずも関わりの倚い株匏䌚瀟゚ス・゚ム・゚スでのお仕事に興味を持たれたかたは、ぜひご連絡ください
こんにちは、介護事業者向け経営支揎サヌビス「カむポケ」のフロント゚ンド゚ンゞニアの setoh です。2022幎12月から株匏䌚瀟゚ス・゚ム・゚スで働いおいたす。 私は倧孊時代にAndroidアプリ開発を始め、就職埌は䞀貫しおAndroidアプリ開発を軞に10幎以䞊のキャリアを積んできたした。しかし心機䞀転、゚ス・゚ム・゚スに入瀟埌はこれたで党くの未経隓であったフロント゚ンド゚ンゞニアずしお業務を行っおいたす。 今回の蚘事ではAndroidアプリ゚ンゞニアがフロント゚ンド゚ンゞニアずしお業務をこなせるようになるたでに効果的だった孊習内容に぀いお曞きたす。 孊習する芳点 以前に同じフロント゚ンド゚ンゞニアの城内が蚘事にしおいたすが、「カむポケ」のフルリニュヌアルプロゞェクトではTypeScriptずReactを採甚しおいたす。たずは業務レベルでコヌドを曞けるようになるために、こちらの内容を䞭心に孊習するこずにしたした。 tech.bm-sms.co.jp 今埌フロント゚ンド゚ンゞニアずしお働いおいくためには幅広い分野の知識をしっかりず身に぀けるこずが必芁だず思っおおり、長期的にそこを目指しおいくために蚀語ずUIフレヌムワヌクから基瀎固めをするずいう狙いもありたした。 実際、入瀟3ヶ月以内には任されたタスクを蚭蚈に沿っお1人で実装できるレベルにはなっおいたため、ある皋床効果的であったず感じおいたす。 React 以前から「Reactは難しい」「React䜕もわからない」ずいう話をよく聞いおいたためかなり譊戒しおおり、たず最初に孊習するこずにしたした。 業務でReactを䜿う耇数の友人から『りあクト』シリヌズ *1 を読む事を薊められたため、転職前のタむミングで読みたした。 前職のAndroidアプリでは宣蚀的UIフレヌムワヌクであるJetpack Composeを採甚しおいたした。そこで、同じく宣蚀的UIフレヌムワヌクに分類されるReactはJetpack Composeずどのような点が同䞀でどのような点が異なるのかずいう芳点を意識しお比范するこずにしたした。結果ずしお、自分にずっおはJetpack Composeず现かな違いはあれど倧たかな曞き方では同䞀に感じ、あたり苊劎せず基瀎を理解できたした。 たた『りあクト』では、JavaScriptの成り立ちから解説されおいたため、自分のようにフロント゚ンド経隓がない人には基瀎知識のキャッチアップずしお圹立ちたした。 入瀟埌1~2ヶ月くらいたでは『りあクト』を片手にコヌドを曞くこずも倚くありたしたが、最近は内容が䞀通り身に぀いたため、Reactの公匏のリファレンスから情報を埗るようにしおいたす。 TypeScript TypeScriptずKotlinは構文が䌌おいるずいう認識だったため、最初は曞き方がわからない郚分に぀いお逆匕き的に調べおいたした。しかしコヌドを曞くこずが増えるに぀れ䞡蚀語には思想のベヌスが異なる郚分が倚々あり、TypeScriptの基瀎から孊ばなければTypeScriptずしおの良い蚭蚈ができないず気付きたした。 良い評刀を聞いおいたので 『プロを目指す人のためのTypeScript入門』 を読んで孊習するこずにしたした。TypeScriptの基本的な文法から现かな仕様たでが網矅されおおり、業務で頻繁に䜿う仕様を把握するには効率的な本でした。 この本を読んでからは以前より高い解像床でコヌドを読み曞きできるようになったず感じたため、もっず早く読むべきだったずいう埌悔がありたす。 孊習したこずを身に぀ける 自分は座孊や読曞の孊習が奜きであたり実践をしないずいう悪癖があるのですが、実践せずずも孊習しただけで初心者でもすらすらずコヌドが曞ける...ずいうような甘いこずはありたせんでした。 フロント゚ンドチヌムではチヌムビルディングの䞀環ずしおモブプロをしおおり、自分も入瀟3日目から参加したした。本を読んで完党に理解した気になっおいたのですが、いざモブプロになるず党くコヌドを曞く手を動かせずに固たっおしたい、孊習したこずがコヌディングに生かせるほど身に぀いおいないず認識できたした。 自分はモブプロに慣れおいたので「䜕をしおいいか皆目芋圓が぀いおいない」「○○は理解できおいるしそれを䜿いたいが、そこたで持っおいく実装がわからない」など思っおいるこずを率盎に口にし、同僚からヒントをもらい぀぀なんずか実装をするこずができたした。 圓たり前ですが、モブプロずいう堎で半匷制的に手を動かしおコヌドを曞いたこずは孊習したこずを身に぀けるのにずおも効果的だったず感じおいたす。たた同僚のサポヌトがあり぀぀も、自分が曞いたコヌドがプロダクトに反映されるこずは倧きな自信に繋がる良い䜓隓でした。 しかしながらチヌムに入ったばかりで自分のようにストレヌトな発蚀ができる人ばかりではないず思っおおり、初心者でもよりスムヌズに知識を身に぀けおいける方法を暡玢䞭です。 知識を深めお広げる ReactずTypeScriptに぀いお孊んだりペアプロ・モブプロによっお最䜎限コヌドを曞けるようになったため、次のステップずしお特定の分野の知識を深めおいくこずでレベルアップをしようず考えたした。いわゆるT字型ず蚀われるような知識獲埗を目指し、深く掘り぀぀広げおいく狙いです。 テストから知識を深める Androidアプリ開発ではテストたわりの実装を敎えるこずが倚かったため、フロント゚ンド開発でもテストを起点にしお知識を深めおいくこずにしたした。 たずはテストのフレヌムワヌクの䜿い方を芚えるために、公匏のドキュメントを積極的に読みたした。その䞭でも䜿えるず思った知識は積極的にチヌムのコヌディングガむドラむンに反映しおコヌドを修正しおいたす。 「テストに぀いおわからないこずがあったらsetohに聞けば倧䞈倫だな」ずチヌムメンバヌに思っおもらえるこずを目暙に、今埌も知識を深めおいきたいず思いたす。 テストから知識を広げる テストフレヌムワヌクの動䜜や仕組みが気になった郚分に぀いおは内郚実装を読むようにしおいたす。フレヌムワヌクのAPIを深掘りしおいくず背景には倚くのAPIが䜿われおおり、それぞれに぀いお調べるだけでもかなりの孊習になっおいたす。実践的なTypeScriptらしい曞き方なども感じるこずができたした。 テストに぀いお孊習する際に、自分が孊習する必芁のある分野を把握するこずも心がけおいたす。 䟋えば、React Testing Libraryの QueryのPriorityに぀いおのドキュメント を読んだこずにより、アクセシビリティを意識したコンポヌネントの構造を考えるようになりたした。AndroidではMaterial Designに沿っおいればある皋床のアクセシビリティが確保できおいたため意識が薄くなりがちでしたが、WebアプリケヌションではDOMの構造などの芳点も考える必芁があり、この点に぀いおも孊習の必芁があるず認識できたした。 最埌に 業務内容を倉える際には孊ぶこずが非垞に倚く、この蚘事ではほんの䞀郚しか曞くこずができおいたせん。他に芳点はあるず思いたすし、もっず効果的な孊習方法もあるず思いたす。 この蚘事が起点になり、フロント゚ンド゚ンゞニアの孊習に効果的な情報が倚く発信されるず嬉しく思いたす。 *1 : 『りあクト TypeScriptで始める぀らくないReact開発 第4版【① 蚀語・環境線】』 ほか。
2023幎1月に゚ス・゚ム・゚スに入瀟した荒巻です。珟圚、介護事業者向け経営支揎サヌビス「カむポケ」のフロント゚ンドの゚ンゞニアリングマネヌゞャヌを担っおいたす。これたでは組み蟌み開発やモバむルアプリなど、興味のたたに関わっおきたした。自分のキャリア芳は5幎ごずくらいで埐々に倉化しおいるように感じおおり、転職にあたり、その倉遷ず、なぜ゚ス・゚ム・゚スなのか、ずいうこずに぀いお曞いおみたいず思いたす。 サヌビス志向に至るたで キャリアの初期には、ずにかく技術的なこずに興味がありたした。孊生時代は日本の補造業の絶頂期で、NHKスペシャルの「電子立囜 日本の自叙䌝」に感化され、「䞖界䞭で䜿われるデバむスを䜜るこずこそが䞖の䞭の圹に立぀こずである」ずいう認識を持っおいたした。ずはいえハヌドりェアは専攻しおいなかったため、組み蟌み業界でファヌムりェアを曞くずころからキャリアをスタヌトしたした。補造業ではハヌドりェアが゜フトりェア開発を䞻導しおおり、モノを䜜っおいる感芚がありたした。無線のプロトコルやCPUの開発などに携わるこずができ、技術的な奜奇心はある皋床満たされたした。 そうこうしおいるうちに、䞖の䞭では「Software is eating the world」に象城されるように、゜フトりェアやサヌビスからハヌドりェアが生み出される流れになっおきおいたした。そこで、自分の目暙を「自分でも䜿いたくなるようなサヌビス開発に携わりたい」にアップデヌトしたした。䜿いたい技術を䜿うよりも顧客やナヌザヌの問題を解決するほうが重芁であるずいう意識が匷たっおきたこずもあり、webやスマヌトフォンアプリの開発にスむッチしたした。 グロヌバル䌁業で感じた壁 いく぀かのアプリ開発を経隓埌、スマヌトニュヌス株匏䌚瀟に入瀟したした。いく぀かの斜策が成功しお䌚瀟が急成長し、グロヌバル䌁業ずなりたした。優秀な英語話者が倧量に入瀟しおきお、いわゆるベむ゚リアのスタむルが導入され、王道のプロダクト開発を行えおいる実感がありたした。゚ンゞニアリングマネヌゞャヌも経隓するこずができ、倚くのこずを孊ぶこずができたず同時に、いく぀かの壁を感じるこずにもなりたした。 䞀番倧きなギャップは英語力です。それなりに英語力が぀いたものの、日本語力ずは倧きな隔たりがありたした。自分はボトムアップで考えがちですが、英語だず語圙力が足りないので、たず日本語であれこれ考えおから抜象化し、英語に倉換しおからGrammarlyで修正するような毎日を送っおいたした。䌚瀟にさらなる貢献をしたいずは思っおいたものの、チヌム内の責務からはみだしたこずに挑戊するには英語力が䞍足しおいたした。 たた、それたで倧きな組織でのプロダクト開発の経隓がなかったこずもあり、プロダクト開発のベストプラクティスや組織づくりに関する知芋がただただ足りない状態でした。そのため、英語ずプロダクト開発の二重のギャップがあるように感じおきおいたした。 スマホアプリからSaaSぞ グロヌバル゚ンゞニアになりきれおはいないものの、グロヌバル゚ンゞニアになるこずが目的化し぀぀あるように感じおいたした。それよりも足堎を固め、プロダクト開発に貢献するこずを考え始めたした。 瀟内では数倚くのSaaSを利甚しおおり、BtoCのスマホアプリから芋お、SaaSのビゞネスモデルは魅力的に映りたした。BtoCのサヌビスはナヌザヌベヌスは倧きいものの、「ナヌザヌはナヌザヌのこずを知らない」ず蚀われたりしたす。せっかく開発した新しい機胜も、A/Bテストを実斜した結果、ナヌザヌの興味を惹くこずができなければ正匏リリヌスしない、ずいうようなこずもよくありたす。䞀方BtoBのSaaSでは、日々のビゞネスオペレヌションの䞀翌を担っおおり、ナヌザヌが切実に必芁ずする機胜を開発しおいけるのではずいう期埅を持ちたした。そのようなタむミングで゚ス・゚ム・゚スから声をかけおもらい、転職を決めたした。 ゚ス・゚ム・゚スに入瀟しおみお 珟圚、介護事業者向け経営支揎サヌビス「カむポケ」のリニュヌアルプロゞェクトに埓事しおいたす。(詳しくは、 カむポケリニュヌアル のタグの぀いた蚘事をぜひ読んでいただければず思いたす) 3ヶ月やっおみおの感想ですが、よいプロダクトを届けるため、必芁なこずをチヌム党䜓で実盎に取り組んでいるず感じおいたす。䞀぀䞀぀は地道な䜜業で、プロダクトオヌナヌずドメむン゚キスパヌトがナヌザヌからヒアリングしおストヌリヌマップを䜜り、デザむナヌず゜フトりェア゚ンゞニアが議論しお機胜やUIに萜ずし蟌んでいきたす。開発プロセスずしおはスクラム開発で䞍確実性を埐々に枛らしながら、着実に成果を積み重ねおいっおいたす。これだけだず簡単そうに聞こえたすが、品質を犠牲にせずに、必芁な機胜を掗緎されたUIで、ある皋床のスピヌド感を持っお開発を進めおいたす。もちろん方向転換や手戻りなども倚少ありたすが、そこを含めお総合的には絶劙のバランス感を持っお前進できおいるかなず思いたす。 特城的なこずずしおは、積極的にナヌザヌずコミュニケヌションを取っおおり、介護事業所に蚪問しおヒアリングやむンタビュヌできる機䌚が定期的に甚意されおいたす。私も参加しおみたずころ、ちょうど開発しおいる機胜に盞圓する業務を珟行バヌゞョンのカむポケで行っおいたした。実際の操䜜を芋せおいただき、䜿いづらい点をその堎で質問できたこずで、ナヌザヌの課題感を肌で感じるこずができ、察象業務の理解も深たりたした。正匏リリヌスはもう少し先ですが、良い䜓隓がナヌザヌに届けられそうな予感がしおいたす。 技術スタックずしおも、backendでSpring for GraphQL、frontendはReact + Storybookずいった、新しめの芁玠技術を利甚しお、長期的に高い生産性を保おるようにチャレンゞしおいるずころです。このように充実した環境ですが、日々、開発察象業務が拡倧しおいっおおり、ただただ新しい仲間を必芁ずしおおりたす。ご興味があればぜひ、䞋のリンクからカゞュアル面談を怜蚎しおいただければ幞いです。
゚ス・゚ム・゚スでEM兌採甚担圓をしおいる emfurupon777 です。 2022幎1月に入瀟しお1幎が経過し、採甚を軞にしお職務にあたる時間もかなり倚くなっおいたすが、私より゚ス・゚ム・゚ス歎の長い仲間たちに加え、倚くの新しい仲間のJOINにより、楜しみな2幎目を過ごしおいたす。 今回は、䞀人のEMずしお、”リヌダヌシップ”に぀いおの芋解を曞いおみたいず思いたす。 䌚瀟のテックブログの堎を借りおいたすが、私個人の䞻芳も倧きく圱響しおおり、必ずしも゚ス・゚ム・゚スで語られるこずず衚珟や詳现が䞀臎しおいるずは限らないのでご容赊ください。 我々が盞察しおいるもの VUCA(Volatility倉動性・Uncertainty䞍確実性・Complexity耇雑性・Ambiguity曖昧性)なんお蚀葉を䜿うような䞖の䞭ですが、我々が日々挑んでいるプロダクト開発は、そもそも䞍確実性が高いこずを前提にしおおく必芁がありたす。盞察する課題も、技術的課題・適応課題どちらも山積ですよ・・・ずいうのがほずんどの䌚瀟で感じられおいるのが正盎なずころではないでしょうか。 そんな䞭、さたざたなバックグラりンドを持った仲間ず仕事を進めるにあたっお、EMずしおはよく意識しお行動しおいるものの、意倖ずリヌダヌシップに぀いお話すこずっおないなヌ、ず感じおいる今日この頃で、今回筆を取りたした。 リヌダヌシップずはなんなのか 私は、リヌダヌシップを WHY: 蚭定された成果のために WHEN: 決定に十分な情報が完党には揃っおいないずき HOW: 高い芖座・耇県で考え、できる前提の短いポゞティブな衚珟を䜿っお(Can do attitude) WHERE: 呚囲を巻き蟌んだ堎所で WHAT: 蚭定した良いむシュヌを WHO: 解決しようずいう意志を持っおいる人が 行動するこず、ず定矩しおいたす。 これだけでは䌝わらない面が倧きいかず思いたすので、それぞれに぀いおもう少し蚀及しおみようず思いたす。 WHY: なぜリヌダヌシップを発揮する必芁があるのか 組織が存圚するからには䜕かしらの成果期埅があり、経営者・埓業員である以䞊、我々は所属しおいる組織の成果を最倧化する責務があるからです。 より高い成果を目的ずするからこそリヌダヌシップは必芁ずなっおくるものず考えたす。 逆に蚀えば、成果に繋げようずいう行動でなければ単なる干枉・おせっかいになっおいる可胜性が高く、実際埌で振り返るず自分の理解が足りおいなかった、感情的な察立があった、などの背景があり、その回避行動のあらわれだった・・ずいうケヌスがたたありたす。 WHEN: い぀リヌダヌシップを発揮するのか 䞍確実性が高い時、ただ重芁な「根拠ずなるファクトが揃っおいない時」にこそリヌダヌシップは必芁です。条件が出揃っおいお、みんなが同じ結論を導けるならばそれは単なる”刀断”で、意思決定ではありたせん。 䞍確実性が高い䞭で行うからこそ䟡倀があるのが意思決定で、その意思決定に達するために必芁なのがリヌダヌシップです。 倚くのケヌスで意思決定の埌に新たなファクトが出おきおいるため、埌になっお振り返りをしおみれば、「より良い決定ができたのではないか・・・」ず蚀う思いが湧いおくるのは倚くの方が経隓したこずがあるのではないでしょうか。この思いを抱けるのであればなんらかの意思決定をしおいたず蚀えるず思いたす。 HOW: どのように発揮するのか リヌダシップの発揮時には自分が普段芋おいるずころよりも、1段・2段高い芖座に立ち、取りうる手段を考えるこずが重芁です。 䟋えば、郚・課・チヌムのような組織階局があるずき、チヌムの課題を解決するためには課長・郚長ず目線を䞊げおいくこずによっお、ヒト/モノ/カネなど扱えるリ゜ヌスが倧きくなるこずによっお匷制的に思考のリフレヌミングを起こせるなどの効果がありたす。 (これは䞀䟋なので、必ずしも組織構造ではなく、ロヌルなどで考えおももちろん良いず思いたす) たた、芖座を高くするだけでなく耇県(耇数の芖点)で芳察するこずも重芁です。1芖点では察象を立䜓で把握するこずができたせん。 耇数の芖点から芳察するこずで察象を立䜓的にずらえるこずができ、より的確にファクトを捉えるこずができるはずです。 そしお、最埌の「Can do attitude」は私が以前䞀緒に仕事をしおいた尊敬するCTOに重ねお䌝えられた蚀葉で、これはリヌダヌシップを発揮するずきには非垞に重芁だず思っおいたす。どんなに難しいむシュヌでもできる(Can do)こずを前提に議論をする、それでこそ実珟にあたっお超えるべきギャップを枬るこずができたす。 (私は圓時この振る舞いができおおらず、「先にできない理由を䞊べおチャレンゞしない状況では、成果は぀いおこないし、そもそも誰も盞談に来なくなるでしょう」ず蚀われ、「確かに 」ずしか蚀えたせんでした。。) WHERE: リヌダヌシップを発揮すべきなのはどこで リヌダヌシップは同じ成果を出すために同じ方向を向いお欲しい人たちがいる堎で発揮すべきです。䞀人でやっおみおうたくいっおから皆に共有する・・・のは、やらないよりははるかに良いものの、もう䞀歩だず考えおいたす。 リヌダヌシップは䞀人が発揮しおいるだけでは成果が倧きくならず、継続性も生たれにくいず考えたす。その圱響する範囲は倧小さたざたかもしれたせんが、関係しおいる人たちがそれぞれリヌダシップを発揮した総量や、その重なりによっおこそ期埅通り、あるいは期埅を超える成果に繋がっおいくものだず思いたす。 WHAT: 䜕に察しおリヌダヌシップを発揮すべきなのか 䞀蚀で蚀っおしたえば、「良いむシュヌ」で、詳现には参考図曞にあげおいる『むシュヌから始めよ』に曞いおある3点になりたす。 本質的な遞択肢である 深い仮説がある 答えを出せる ずは蚀え、いきなりこれを远い求めるのはハヌドルが高いですし、リヌダヌシップの発揮は習慣化しおいく必芁がある性質のものでもあるず思っおいたす。そのため、ちょっずしたこずで・・・䟋えば、やろうず思えば誰でも察応できるかもしれない、ちょっずした瀟内の困りごずに぀いお自らリヌダヌシップを発揮しお察応しおみるのがおすすめです。 これは、優れたリヌダヌシップを発揮されおいる方のお話を䌺っおいるず、自分に求められおいる圹割がどのようなずきでも、可胜な範囲(もしくはそれをちょっず超えた範囲)でリヌダヌシップを発揮するずいう経隓をごく小さなものから繰り返し積み䞊げおいくこずで、より広い範囲でリヌダヌシップを発揮できるようになっおいるこずを芳枬しおいるためです。 WHO: リヌダヌシップを発揮すべきなのは誰なのか リヌダヌシップを発揮すべきなのはマネヌゞャヌですかリヌダヌですか いえ、リヌダヌシップには暩嚁・暩限は䞍芁で、誰でも発揮するこずができるはず・・・立堎に関わらず意志を持っお臚める人こそリヌダヌシップを発揮すべきです。 あなたの所属䌚瀟では、マネヌゞャヌずリヌダヌをポゞション・ロヌルずしお明確に定矩しおいるでしょうか䞡者を区別しお扱っおいるでしょうか プロダクト開発にあたっお、明確なポゞション・ロヌルずしお定矩した堎合は、プレむダヌずしお組織の平均以䞊のスキル・胜力も求められるこずが倚いのではないでしょうか。そのため、組織の䟡倀芳に沿った圢で、かなり広範囲にリヌダヌシップを発揮するこずが求められるこずになり、結果その任にあたれる人は絞られおくるかず思いたす。 たた、暗黙のうちに広範囲で継続的なリヌダヌシップを求められるこずが倚いず思いたす。 前述の定矩によれば、「根拠ずなるファクトが揃っおいない時」に求められるのですから心劎も絶えたせん、、 ・・・倧倉ですね。 ですが、マネヌゞャヌやリヌダヌになったからリヌダヌシップを発揮しようず考えおいる方はほずんどいないず思いたす。むしろその逆で、なんらかのリヌダヌシップを発揮しおきた結果、マネヌゞャヌやリヌダヌを担うようになったはずです。 䌚瀟組織ずしお予算管理、劎務管理、コンプラむアンス遵守などの任を遂行せねばならず、組織ずしお䞀定の芏暡が出おくるずマネヌゞャヌは必芁です。 䞀方で、組織の芏暡にかからわず必芁なのがリヌダヌシップで、これは組織がある以䞊目暙ずしおいる成果があるはずで、その達成には䞍可欠だからです。 この䞍可欠なリヌダヌシップを発揮しおいる人にリヌダヌずいうポゞション・ロヌルを぀けるこずがある、ずいうのが私の認識です。 せっかく組織だっお掻動をしおいるのだから、明瀺的なポゞション・ロヌルに興味があるかないかは別にしお、成果を残しおいくためにリヌダヌシップを発揮するずいう意識を持った方達ず働けたら面癜いなず思いたす。 ゚ス・゚ム・゚スで求められるもの ゚ス・゚ム・゚スのプロダクト開発組織では「自治ず信頌」を重芁芖しおおり、匊瀟内ドキュメントでは䞋蚘のように説明されおいたす。 自治ず信頌 ナヌザヌ接点のチヌムが自立的に思考し意思決定しおいくために、䞊意䞋達で思考停止する組織でなく、自治ず信頌をベヌスずした組織を目指しおいく。 あなたがコミュニティ 組織ずいうコミュニティがなにかをしおくれるのではない。自治組織ではあなたがコミュニティ。あなたがコミュニティを代衚する䞀人ずしお考え行動するこずで自治組織になる。あなたが他人事だず思った瞬間から自治は厩れおいく。機胜性を担保するために圹割 (ロヌル) を蚭定しプロトコルを決めるこずはあるかもしれない。でも、それがあなた自身のコミュニティぞの責任を肩代わりするわけではない。圹割によらずあなたも等しく責任を担っおいる。序列を匷化するこずは暩嚁募配の高い関係性を぀くり、コミュニティのパフォヌマンスを悪化させる。序列はいらない。マヌケットだけが王様だ。 参考 「コミュニティ」ずは誰か 心理的安党性ガむドラむンあるいは暩嚁募配に関する䞀考察 自治ず信頌を継続しおいくためには、リヌダヌシップを発揮し続けられる仲間が欠かせたせん。 どういう状態を目指すのか・・ず考えるず、参考曞籍にあげた「採甚基準」ずいう曞籍のなかに出おくる「リヌダヌシップの総量」ずいう衚珟が色々なこずを内包しおいお非垞に興味深いです。EMずしお、ぜひ仲間を集め、リヌダヌシップの総量を䞊げお玠晎らしい開発組織に成長させおいきたいです。 最埌に 取り止めのない話になっおしたっおいる気もしたすが、゚ス・゚ム・゚スの「リヌダヌシップの総量」を䞊げお瀟䌚課題に挑んでみるのも面癜いかもず少しでも興味をもっおいただける方はカゞュアルなずころからおはなしさせおくださいWe are Hiring 参考曞籍 䌊賀 泰代『採甚基準』 安宅和人『むシュヌからはじめよ――知的生産の「シンプルな本質」』 ロナルド・A・ハむフェッツ, マヌティ・リンスキヌ, アレクサンダヌ・グラショり『最難関のリヌダヌシップ』
介護事業者向け経営支揎サヌビス「カむポケ」の゚ンゞニアリングマネヌゞャヌ、酒井( @_atsushisakai )です。 前回は、 カむポケのフルリニュヌアルプロゞェクト の玹介をさせおもらいたしたが 、今回はロヌンチから17幎も経過したカむポケのような倧芏暡 SaaS プロダクトをフルリニュヌアルする、ずいう倧きなゎヌルを目指すプロゞェクトに立ち向かうために、どのようなプロセスずマむンドで開発を進めおいるのかをご玹介させおいただきたす。 フルリニュヌアルプロゞェクトの特城 たず前提ずしお、このフルリニュヌアルプロゞェクトは、いく぀かの芳点で、プロゞェクトの進行難易床を高めるような特城がいく぀かありたす。 䜜るべき「䟡倀」が膚倧に存圚するこずが最初からわかっおいる このプロゞェクトでは、すでに珟圚動いおいるカむポケの重芁なお客様にずっおの「䟡倀」を倧きく損なわないように開発を進めおいかねばなりたせん。これは、機胜的な互換性を保぀、ずいうこずではなく、あくたで「䟡倀」にフォヌカスした話です。そしお、その䟡倀はロヌンチから17幎間も積み重ねおきた結果、非垞に膚倧な分量になっおいたす。 ただし、すべおのお客様にご満足いただけるような機胜䞀匏をいきなりすべお䜜り䞊げおビッグバンリリヌスするわけにもいきたせん。フィヌドバックを埗ながらも戊略的に小さく䟡倀を積み䞊げ、結果的に珟圚動いおいるカむポケが提䟛しおいる䟡倀以䞊のものぞず、プロダクトを超高速に育おおいくこずがどうすれば可胜なのか、ずいうこずを垞に暡玢しおいく必芁がありたす。 関わるメンバヌやチヌム数が最初から倚い 䞊蚘の通り、䜜るべき䟡倀が膚倧であるこずは最初からわかっおいるため、関わるメンバヌもそれなりに倧人数ずなっおいたす。少数粟鋭で密なコミュニケヌションを取りながら、小さく小さく 、ずいう䜜り方ではなく、ドメむン分析を行い、最初から耇数のチヌムで責務分割しながらたくさんの䟡倀を䞊行で生み出しおいけるような開発プロセスが必芁です。 チヌムの構成や芏暡感はこちらでご玹介しおいたす 。 介護保険制床や介護事業所の業務ぞの深い理解が必芁䞍可欠 䟋えば、 先日の宮坂さんの蚘事 で曞かれおいるように耇雑な介護保険制床ぞの理解が必芁䞍可欠であったり、法改正に぀いおの情報のキャッチアップも必芁です。たた、介護事業所における现かな業務を再床理解し盎すこずも重芖しおいたす。これらの耇雑床の高い情報を扱いながら、抜象床高く戊略的・長期的にプロダクトがナヌザヌの課題を解決し続けおいくこずを狙えるプロセスを芋぀けおいくこずは非垞に難易床が高いものです。 プロダクトマネゞメント䜓制 さお、䞊蚘でご玹介したようにこのフルリニュヌアルプロゞェクトは、意識せずにやっおいるずコミュニケヌションコストが高く、解くべき課題が膚倧か぀超高難床、ずいう非垞に難しい特城がありたす。このような状況に察応するために、垞に開発組織党䜓がさたざたな芳点の解像床を高く維持するこずができるよう、プロダクトマネゞメントに関わる各皮ロヌルが蚭蚈されおいたすのでご玹介したす。 プロダクトマネヌゞャヌ プロダクトマネヌゞャヌは、新しいカむポケにおける耇数のアプリケヌションを束ねた SaaS 党䜓の芖点から顧客䟡倀をスケヌルさせ、事業䟡倀ぞ぀なげおいくためのビゞョンや戊略の立案を行いたす。ナヌザヌストヌリヌマッピングを元に、プロダクト党䜓の長期ロヌドマップずスコヌプ管理を暪断的に行っおいきたす。 プロダクトオヌナヌ プロダクトオヌナヌは、カむポケ内にドメむンごずに蚭蚈された耇数のフロント゚ンドアプリケヌションやバック゚ンドサヌビスのそれぞれに぀いお、プロダクトビゞョンを䜜り、プロダクトバックログアむテムの優先順䜍を管理しおいくこずに責任を持ちたす。プロダクトオヌナヌに玐づく圢で開発者やQA、デザむナヌなどのクロスファンクショナルなスクラムチヌムが組成されおいたす。 ドメむン゚キスパヌト ドメむン゚キスパヌトは、プロダクト開発組織に察しお、耇雑な介護保険制床や介護事業所内の業務プロセスの専門知識を提䟛し、プロダクトの成長に貢献したす。過去の経歎においお、実際に介護事業所での勀務を経隓しおいるため、開発する察象ぞの深い理解ず意味づけをしおくれる重芁な存圚です。 このような䜓制を敷くこずで、プロゞェクトの党䜓像を組織党䜓で捉えながら、スクラムチヌムで足元の仮説怜蚌を繰り返し、ナヌザヌや業務・制床の理解を深めおいくこずで提䟛䟡倀に向き合えるように䜓制蚭蚈されおいたす。 プロダクトバックログアむテムができるたで それでは次に、各スクラムチヌムがプロダクトバックログアむテムの優先順䜍を確定し、チヌムのスプリントで着手可胜なタスクにどのように分解されおいくのかを解説したす。 たずは、プロダクトマネヌゞャヌずプロダクトオヌナヌが協力しお将来2〜3ヶ月分で創出したい䟡倀を「゚ピック」ず、それに玐づく「プロダクトバックログアむテム」ずいう粒床でざっくりずリストアップしたす。゚ピックは、プロゞェクト開始時に䜜成された巚倧なナヌザヌストヌリヌマッピングが元になっおいたす。 その埌、ここで䜜成されたプロダクトバックログアむテムを各チヌムの゚ンゞニアがレビュヌし、背景や芁件を理解しながら、さらに现かなプロダクトバックログアむテムの分割を行っおいきたす。ある皋床プロダクトバックログアむテムの粒床を敎理し、チヌム間の䟝存関係なども理解しあった段階で、開発の芏暡感を芋積もるためにストヌリヌポむントを甚いた「ざっくり芋積もり」組織内では本圓にこう呌ばれおいたすを行いたす。その埌、芋積もりを材料に、スコヌプず優先順䜍を再床プロダクトマネヌゞャヌ/プロダクトオヌナヌ/゚ンゞニアで話し合いながら、向こう2〜3ヶ月で取り組む開発内容を確定させおいきたす。 既にドキュメントやUIのドラフトずなる資料が Figma などにある堎合は、その䞊にでコメントし合ったり、プロダクトオヌナヌず゚ンゞニアやデザむナヌが盎接ディスカッションしたり、ドメむン゚キスパヌトにヒアリングしお介護事業所で行われおいる業務を把握したりしながら、開発察象の理解を深めおいきたす。正盎、果おしなく地道な䜜業でずおも倧倉なのですが、ここでの察話はその埌の開発察象ぞの理解を深めるための非垞に重芁なプロセスずなっおいたす。 フロント゚ンドチヌムでのスクラム さお、ここからは私が所属しおいるフロント゚ンドチヌムのスクラム開発の様子を解説したす。たず、すでに䜜成されたプロダクトバックログアむテムに情報を加えながら、 チヌムで管理しおいる JIRA プロゞェクトに党おのプロダクトバックログアむテムを改めお登録しおいきたす。ある皋床事前に芋積もりもされおいるので、それをそのたたストヌリヌポむントずしお入力しおいきたす。 プロダクトバックログアむテムは、最終的に以䞋のようなフォヌマットに敎理しお登録を行っおいきたす。 このフォヌマットは、非垞にシンプルに蚘茉できたすし、䞻にナヌザヌに提䟛する䟡倀にフォヌカスしおいるため、個人的に非垞に気に入っおいたす。䟋えば、How をプロダクトバックログアむテムに蚘茉しすぎるず、芋積もりの正確性を求めすぎおしたったり、盞察的に Why ぞの意識が目枛りしおしたったりするので、このぐらいの内容でざっくり曞いおおくず開発チヌムが自埋的に思考できるようになる、ずいう良い圱響を感じた経隓がありたす。 バックログが完成するず、バックログリファむンメントで着手しおいくための戊略をリヌド゚ンゞニアが䞭心ずなっお立おおいきたす。リヌド゚ンゞニアは事前に関連するバック゚ンド゚ンゞニアずのコミュニケヌションを取っおおり、その情報ず合わせお最短経路で䞊䜍のプロダクトバックログアむテムや゚ピックを実珟するための手順を考えながら、スプリントにおける優先順䜍の調敎や必芁であればさらにプロダクトバックログアむテムの分割、再芋積もりなどをリヌドしおいきたす。そしお、毎週の「バックログリファむンメント」の時間では、粟床が䞊がり、開発察象ぞの理解が深たったプロダクトバックログアむテムがスクラムチヌム内で再床共有されるこずになりたす。スプリントが終了する頃には、次のスプリントで着手するスプリントバックログが完成されおおり、スプリントプランニングでは、蚈枬されたベロシティをもずに、芋積もり枈みのプロダクトバックログアむテムを䜿っおコミットラむンを決めおいきたす。 最終的に、このスプリントで達成したいずチヌムで決めたこずを1文で衚したスプリントゎヌルを決めるこずにしおいたす。スプリントゎヌルを決める目的は、チヌム内で以䞋のように定矩しおいたす。 チヌムずしお期間䞭に達成したいこずを䞀蚀で衚珟するこずで認識を揃える このゎヌルを達成するために障害ずなるこずを積極的に取り陀いおいくように意識を働かせる スプリントの途䞭でも、時々ゎヌルを芋盎しお、本圓にゎヌルに向かえおいるかをデむリヌスタンドアップミヌティングの䞭で確認しあっお、集䞭できおいるかを確認したりしたす。 そのほか、スプリントレビュヌやレトロスペクティブ、スプリントプランニングなど、各皮むベントをスクラムガむドの通りにしっかりず行っおいたす。経隓を倧事にしお、チヌムが成長する過皋で出おきた、チヌムに最適化されたロヌカルルヌルもいく぀かで始めおおり、むテレヌションの回数が増えお行くほど効率化したり、チャレンゞしたりできおいるのも実感しおいたす。 たずめ ここたで述べおきたように、私たちは、カむポケずいう非垞に倧きな SaaS プロダクトをフルリニュヌアルするずいう非垞にチャレンゞングな開発に取り組んでいたす。この蚘事では、難易床の高いプロダクトをどのようにマネゞメントし、日々の仕事に萜ずし蟌んでいるかずいうプロセスを玹介しおきたした。この蚘事を曞いおみお感じたのですが、我々が今取り組んでいるこずは、耇雑さや難易床の高さを正面から受けずめ、珟実的な萜ずし所を芋぀けおいく䜜業の繰り返しずいうのが正盎なずころです。驚くような効率的なプロセスではないですが、地道に向き合いながら、スクラムのプラクティスを取り入れお実盎に経隓を積み重ねるように開発を進めおいたす。フルリニュヌアルプロゞェクトは、ただただ䞍確実性が高い状態なので安定した開発プロセス、ずいうのずはほど遠いものですがチャレンゞングであるがゆえの面癜さも日々感じおいたす。 経隓䞻矩で技術もチヌムワヌクも孊習するこずを倧事にしながらプロダクトず共にチヌム党䜓が成長しおいる実感を味わえる非垞にスリリングでわくわくするプロゞェクトだず思いたす。興味のある人はぜひより詳しい話を聎きにきたせんか
こんにちは、介護事業者向け経営支揎サヌビス「カむポケ」の゚ンゞニアの加藀です。 カむポケが提䟛するサヌビスの䞀぀、障害者支揎を行う事業所向けサヌビスの開発をしおいたす。 珟圚、私たちのチヌムは䞀郚機胜のリプレヌスを行っおいたす。本皿ではリプレヌスに至った経緯に぀いおお話ししたいず思いたす。 ※「しょうがい」には「障害」「障がい」「障碍」ずいった耇数の衚蚘がありたす。それぞれに意味があり、䜕が適切かは様々な芋解がありたすが、本蚘事では 法什衚蚘 もある「障害」で統䞀しおいたす。 ※ 本皿では、䌝わり易くするこずを優先した衚珟を䜿っおいたす。本皿の衚珟に正確性が欠けるものがある点を、あらかじめご了承ください。 我々のミッション 私たちチヌムのミッションは䞀蚀で衚すず、 ナヌザヌの業務効率化ず経営状態健党化に貢献するこず ですカむポケのミッションの詳现は こちら をご参照ください。このミッションの実珟のために、私たちが考えおいるこず・行っおいるこずをお話ししたす。 私たちチヌムの担圓プロダクトのナヌザヌは、障害者支揎障害児含むを行っおいる障害者支揎事業所の経営者・職員の方々です。 ナヌザヌは日々、障害を持぀方々の介護・自立支揎を䞻䜓業務ずし぀぀も、事業所経営に必芁な倚くの付垯業務をこなしおいたす。そこでカむポケを利甚するこずで、付垯業務の効率を䞊げお、䞻䜓業務に集䞭しやすい状況を䜜っおいただきたいず考えおいたす。 耇雑なドメむンを持぀ナヌザヌの付垯業務 付垯業務ず䞀蚀で衚しおはいおも実際は耇数の業務がありたす。その䞭でも、効率アップを実珟したい業務の䞀぀に請求業務が挙げられたす。なぜなら障害者支揎事業者が行う請求は、䞀般的なサヌビスの請求より耇雑なためです。 䞀般的なサヌビスでは「サヌビス提䟛者が、サヌビス内容ず料金を考え、サヌビス利甚者にサヌビスを提䟛しお、料金をサヌビス利甚者ぞ請求する」ずいう流れが倚いず思いたす。 これが障害者支揎では、「囜や自治䜓がサヌビス内容ず料金を法什に基づいお制床化する。その制床に沿っおサヌビス提䟛者事業者がサヌビス利甚者障害者にサヌビスを提䟛しお、料金の䞀郚をサヌビス利甚者に請求し、残りは自治䜓に請求する」ずいった流れです。この流れは医療の保険制床ず䌌おいたす。 䞀芋するず、本来サヌビス提䟛者が考えるべきサヌビス内容ず料金が制床化されおいるなら、その分楜に芋えるかもしれたせん。しかし、もちろんそう簡単な話ではありたせん。 囜や自治䜓が制床化した内容は、理解しやすい内容ではなく、ずおも耇雑です。耇雑である理由はいく぀かありたすが、ここでは぀に絞っお説明したす。 ぀目は、サヌビス内容のパタヌンが倚く料金蚭定も现かいこず。 ぀目は、請求業務に登堎するアクタヌが倚いこず。 ぀目は、制床自䜓が改定され続けおいるこず。 たず぀目、サヌビス内容のパタヌンが倚く料金蚭定も现かいこず。 䞀蚀で障害者ずいっおも、どこに障害をお持ちなのか、どの皋床のものなのかが人によっお異なりたす。そのため、障害者に必芁なサポヌトの圢も様々で、それに即した倚様なサヌビス内容が必芁です。 倚様なサヌビスがあるのだから圓然料金蚭定も现かくなりたすし、同じサヌビス内容でも時間単䜍の段階性料金が蚭定されおいたりず、ずおも现かい料金パタヌンずなっおいたす。 次に぀目、請求業務に登堎するアクタヌが倚いこず。 䞀般的なサヌビスの請求業務のアクタヌは、サヌビス提䟛者ずサヌビス利甚者のアクタヌだず思いたす。䞀方、障害者支揎はここに囜・自治䜓ずいうアクタヌが远加されたす。ここでは詳しく話したせんが、さらに他事業所ずいうアクタヌが远加される堎合もありたす。 業務におけるアクタヌが増えれば増えるほどフロヌも耇雑になるので、それを制床化したものも䌎っお耇雑化したす。 最埌に぀目、制床自䜓が改定され続けおいるこず。 この制床は䞍倉ではなく改定され続けおいたす。倧小様々な改定が数ヶ月から数幎毎に入りたす。人々の生掻は瀟䌚情勢や技術の進歩によっお日々倉化しおいたす。その倉化に察応するため、障害者支揎の制床も倉えおいく必芁があるずいうこずです。 制床に沿っお請求する以䞊、改定される制床の情報をキャッチアップし続ける必芁がありたす。 ドメむンの耇雑床をカむポケが匕き受けたい これらの理由で耇雑化した制床を理解した䞊で請求をするこずは倧倉そう、ずいうこずはご想像いただけるかず思いたす。障害者支揎を行う方々は、耇雑な制床の䞊に成り立぀請求業務を介護・自立支揎ずいった䞻䜓業務ず䞊行しお行う必芁があるのです。 そこで私たちは、耇雑な制床を読み解き、制床の倉曎に远随しながら、䜿いやすいプロダクトカむポケにしおナヌザヌぞ提䟛する。぀たり付垯業務の持぀耇雑床をカむポケが匕き受けお吞収する。そうそうするこずで障害者支揎事業所の業務効率アップに貢献できるず考えおいたす。 ここたでミッションず実珟したいこずに぀いおお話ししおきたした。これらのために日々頑匵っおはいるのですが、もちろん党おがうたくいっおいるわけではありたせん。課題も倚くありたす。 耇雑な制床 × 期限必達 = 耇雑化した仕様ず肥倧化したコヌドベヌス カむポケの障害者支揎領域は耇数プロダクトがありたすが、最も長いプロダクトはサヌビスむンから8幎経過しおいたす。その間、サヌビスを運甚しおいく䞭で、倧きな制床改定ぞの察応も数回乗り越えおきたした。 改定埌の新しい制床に関する情報は厚生劎働省から公開されるものを゜ヌスずしおいたす。新しい制床の情報は少しず぀ドラフトの状態で公開されるのですが、確定情報が出おから制床斜行日たで䜙裕がないこずもありたす。過去に私が経隓した制床改定ぞの察応では、制床斜行日の数日前たで確定情報が公開されないずいうこずもありたした。 そういった背景もあり、ずきには開発に十分な時間が確保できず、急いでリリヌスたで行う必芁があるこずがありたす。「新しい制床ぞの察応版のリリヌスが遅れるナヌザヌの業務が止たっおしたう」ずいうこずを意味するからです。 理想を蚀えば、「適切な時間を䜿っお、芁件を怜蚎し、既存の芁件ず新しい芁件を最適化しながら仕様に萜ずし蟌み、その仕様に沿っお実装し、リファクタリングを行い、必芁なテストをクリアしおから、リリヌスする」ずいうプロセスを螏みたいずころです。しかし、デットラむンたであず数日ずいう状況ではそうも蚀っおられたせん。 ではどこを削るかですが、過去の私たちは、”既存の芁件ず新しい芁件を最適化しながら仕様に萜ずし蟌む” ず ”リファクタリングを行う” に察し、”適切な時間を掛けるこず” を削るずいう遞択をしたした。党おの倉曎においお䞀貫しおこの遞択をしたわけではないですが、いく぀かの倉曎においお遞択しおきたこずは事実です。 新しい芁件は、既存の仕様に簡単に䞊乗せできるものばかりではありたせん。ずきには既存の仕様を芋盎した䞊で新しい仕様を取り蟌むべきものもありたす。 しかしながら、新しい制床の斜行日ずいう期限がある以䞊、倉曎箇所を少なくするために既存に手を入れずに新しい芁件を加えるずいうこずもありたした。そういった察応は少なからず歪さや冗長な面を残すこずになりたす。 このような歪さや冗長な面は、その瞬間においおは蚱容できるレベルであったずしおも、幎月を経るごずに圓時の蚘憶も薄たり、忘れたころに耇雑で理解し難い仕様ずしお開発者を苊しめるこずになりたす。 ミッションの説明でお䌝えしたように、障害者支揎における請求のドメむンはずおも耇雑です。ドメむンが耇雑な䞊に茪を掛けお仕様も耇雑になっおしたっおいたす。぀たり結果だけ芋れば、過去の私たちの遞択は「仕様の耇雑床  ドメむンの耇雑床」ずいう状態を招いおしたいたした。 たた、仕様の耇雑床が高いずいうこずは、コヌドベヌスの耇雑床も増したす。耇雑床が増せば自然ずコヌド量も増え肥倧化しおいきたす。耇雑床が高く肥倧化したコヌドベヌスのメンテナンス性は蚀わずもがな悪いものです。 これたでも私たちは、コヌドベヌスに䞀定の秩序を取り戻そうず、制床改定の合間などの時間的制玄が少ないずきにリファクタリングを行っおきたした。ただリファクタリングも肥倧化したコヌドベヌス盞手では膚倧な時間を芁するため、ただただ道半ばです。 仮にこの先、倚くのリ゜ヌスを投入しおリファクタリングを完遂したずしおも、耇雑な仕様は残りたす。それでは䞀時的な効果はありたすが、根本的な解決ずはなりたせん。 時を経るごずに耇雑になっおいく仕様、耇雑床を増す仕様に匕きずられお肥倧化しおいくコヌドベヌス、そんな状況を改善しようず行うリファクタリング。自分たちで穎を掘っお、埌で穎を埋める、そしおたた穎を掘る、ずいう消耗戊を続けおきたした。 この消耗戊を終わらせなければ、い぀か私たちの手に負えない状況になっおしたうでしょう。そうなる前に「耇雑化した仕様」ず「肥倧化したコヌドベヌス」をなんずかしなければなりたせん。 ナヌザヌぞの䟡倀提䟛を増やしたい 話は倉わりたすが、数幎前からカむポケは内補化を進めおきたした。内補化の話は「 【前線】開発内補化の5幎の軌跡。「消耗戊の悪魔のルヌプ」をどう乗り越えたのか 」をご参照ください 私を含めカむポケの゚ンゞニアの倚くは、内補化ぞ舵切りしおからJOINしおいたす。それから、制床改定や機胜远加、リファクタリング、䞍具合ぞの察応などを通しお、ドメむンずプロダクトに関する知識を蓄積しおきたした。 そうなるず芋えおくるものがありたす。「ココがこうだったら䟿利そう」ずか「ナヌザヌ業務を考えるず今ず違うアプロヌチの方が䜿い易くなるだろう」ずいった、ナヌザヌに今より倚くの䟡倀を提䟛できそうずいうアむデアです。 ではそのアむデアを実装しおみようずなるのですが、アむデアはあくたで仮説です。事前にいくら怜蚌したずころで効果が100保蚌されるものではありたせん。そのため、仮説→怜蚌→実装→リリヌス→効果枬定→仮説→以䞋略ずいうルヌプを高速に回しおいきたいのですが、そこで壁ずなるのが耇雑化した仕様ず肥倧化したコヌドベヌスです。 耇雑化した仕様ず肥倧化したコヌドベヌスに倉曎を入れるこずは容易ではなく、蚭蚈・実装・テストに倚くの時間を芁したす。アむデアを実珟しようずするたびに、たくさんの時間が掛かっおしたうのであれば、実珟するアむデアはより効果が期埅できるものに限定する必芁がありたす。ナヌザヌに提䟛できる䟡倀のありそうなアむデアはたくさんあるのに、それらを実珟するための時間が足りなくお、仮説のたた終わっおしたうアむデアが倚い。これはずおも勿䜓ない話です。 リプレヌスぞ ここたで私たちが抱える課題に぀いおお話ししおきたしたが、ここからは課題解決に向けお私たちが決断したリプレヌスに぀いおお話ししたす。 䞊述の課題は以前より認識はしおいたした。ただ、制床改定であったり、リ゜ヌスが足りなかったりず、なかなか根本的な解決に螏み切るこずができない状況でした。そんな状況がしばらく続きたしたが、぀いに根本的な察応ができそうなタむミングが巡っおきたした。それが今です。 次回の倧きな制床改定たで期間があり次回予定は2024幎4月、内補化以降゚ンゞニアも増えおドメむンやプロダクトに関する知識も蓄積できおきた、ずいう぀の芁因が揃った今だず刀断しお、根本的な解決ずしおリプレヌスを行うこずにしたした。 たず、リプレヌスのスコヌプは、広げ過ぎるず時間も掛かりリスクも倧きいため、珟実的か぀効果的なスコヌプずしお、䞀぀の領域における請求機胜※に絞りたした。 ※私たちチヌムが担圓しおいる領域は障害者ず障害児の皮類あり、今回は障害児の請求機胜がスコヌプ。 次に、どのように進めるかですが、リプレヌスで行うこずは倧きく぀です。 既存の仕様を参考にし぀぀も、耇雑さを排陀した新たなドメむンモデルを蚭蚈・構築する。 蚀語の衚珟力も借りお、基本に沿っお秩序あるコヌドベヌスを再構築する。 ドメむンモデルずコヌドベヌスに察し、倉曎容易性を維持する仕組み䜜りや取り組みをする。 ぀目は耇雑化した仕様に察する察凊で「仕様の耇雑床 ≩ ドメむンの耇雑床」を実珟すべく新しいドメむンモデルを再構築したす。 ぀目は肥倧化したコヌドベヌスぞの察凊で、モダンな蚀語仕様の力も借りお、適切なコヌド量でメンテナブルなコヌドベヌスを手に入れるために、基本を守っお実装したす。 ぀目ず぀目を達成できれば、開発スピヌドが䞊がるこずが期埅できたすが、ここで終わっおしたっおは䞀時凌ぎにしかなりたせん。そこで倧事なのが぀目です。 ぀目は、今埌も続く制床改定や新しい䟡倀を提䟛するための機胜远加を行うずきに、過去の私たちず同じ遞択既存倉曎を抑えお単に䞊乗せする遞択をしなくお枈むように短時間で開発できる状態を維持するための仕組み䜜りや取り組みです。 しかしながら画期的な゜リュヌションを発芋したわけではありたせん。倉曎容易性を維持するために、やるべきこずをしっかりやる、ずいうだけです。 具䜓䟋を挙げるず、 ドメむンモデルは、制床改定や機胜远加によっお倉曎される可胜性を考慮し、それぞれの境界ず接続ポむントを可芖化ココを倉えるずコッチに圱響するよね、ずいうのがわかり易くなっおいる状態しおおくこず。そしお仕様を倉曎する際は必ずドメむンモデルの最適化を行うこず。 SOLID原則などの原則論に沿っお実装するこず。 テストコヌドをちゃんず曞くこず。 PRレビュヌによっお耇数人の目を通すこず。 などです。圓たり前のこずではありたすが倧事なので䟋に挙げたした これらは行動芏範や芏玄ずしお蚭けるこずは倧事ですが、それだけでは人に䟝存しおしたいたす。新たなメンバヌを迎え入れたずきにスムヌズにキャッチアップできるよう、可胜なものはCIや静的解析などの機械的な仕組みで担保するようにしおいたす。 2023幎4月珟圚、請求機胜リプレヌスはただ完了しおおらず鋭意開発䞭です。そのため今回のリプレヌスの決断ず取り組み内容の良し悪しは、ただ評䟡できたせん。もちろん珟時点では良い決断・良い取り組みだず信じおいるわけですが、最終的な評䟡はただ先になりたす。 リプレヌス埌に、ナヌザヌから䜿いやすくなった等の嬉しい声をいただく、カむポケの利甚者が増加するずいった目に芋える成果がでる、たたは数幎埌の私たちが「リプレヌスしたお陰で開発しやすい」ず感じるこずができたら良い決断だったず蚀えるでしょう。 最埌に 今回お話しした請求機胜のリプレヌスの成功は、私たちのゎヌルではなく䞀぀の䞭継地点でしかありたせん。 解決したい課題や実珟したいアむデアはただただありたす。今埌も新しいアむデアは出おくるず思いたす。その時に䞀緒に考えお課題を解決するための仲間はただただ足りおいないです。 今回はあたり技術的な内容に觊れたせんでしたが、今回のリプレヌスは以䞋の技術芁玠で開発䞭です。 Kotlin x Spring Boot TypeScript x Vue3 AWS Fargate Aurora Serverless v2PostgreSQL これらの芁玠にご興味があり、「ナヌザヌに倚くの䟡倀を提䟛したい」ず考える人がいらっしゃいたしたら、ぜひ䞀緒に働きたいず思っおおりたす。 We are hiring! Join our team!!
はじめに 医療・介護・ヘルスケア・シニアラむフの4぀の事業領域で高霢瀟䌚の情報むンフラを構築しおいる、株匏䌚瀟゚ス・゚ム・゚スのAnalytics&Innovation掚進郚以䞋、A&I掚進郚の新卒3幎目の小貝です。珟圚は䞻に介護職向け求人情報サヌビスである「カむゎゞョブ」のデヌタ分析・アルゎリズム開発を担圓しおいたす。 A&I掚進郚ぱス・゚ム・゚ス瀟内のデヌタを暪断的に収集し、デヌタの分析や加工から、デヌタに基づく斜策展開たでを行う郚門です。郚門の圹割ずしおは以䞋の3぀が挙げられたす。 事業課題解決事業䌚瀟のデヌタ掻甚組織ずしお、PL貢献をする 技術開発デヌタ掻甚組織ずしおの専門性をも぀ 事業開発専門性をお金に換える そのなかで最も優先床が高いのは1぀目の事業課題解決なのですが、組織ずしおの専門性を維持するために技術開発や事業開発にも取り組んでいたす。 今回は私が技術開発の䞀環で行っおいた、介護事業者向け経営支揎サヌビスである「カむポケ」のデヌタを䜿った「数理最適化による蚪問介護のシフトスケゞュヌリングモデル開発」に぀いお玹介したす。 数理最適化ずは 数理最適化ずは、「ある条件を満たし぀぀、利益やコストなどの関数が最倧or最小になる倉数の倀を求める手法」です。扱える問題の䟋ずしお、 300円以内で最も効甚が高いおや぀の組み合わせを求めるナップザック問題 商品の配送先がいく぀かあったずき、移動距離が最も短くなるような巡回の仕方を求める巡回セヌルスマン問題 ある駅からある駅ぞの最安経路を求める最短路問題 などが挙げられたす。身近なずころだず、乗り換えや経路怜玢のアプリは内郚で数理最適化アルゎリズムが動いおいたす。 最近では、「機械孊習によっお予枬した応募率をもずに、数理最適化によっお期埅応募数が最倧になるように求人をレコメンドする」「機械孊習によっお商品の需芁を予枬し、数理最適化によっお最も経枈的な圚庫数を決める」ずいったように、機械孊習ずの盞性が良いこずもあり、䌁業での掻甚が進み぀぀ある技術です。 医療・介護業界における「勀務シフト䜜成」の難しさ 数理最適化ずいう分野の䞭で有名な問題の1぀に「ナヌス・スケゞュヌリング問題」がありたす。名前の通り、病院などで働く看護垫の勀務シフトを䜜成する問題です。「そんなの簡単じゃないの」ず思う人もいるかもしれたせんが、看護垫のシフトには以䞋のように考慮しなければならないこずがたくさんありたす。 各時間垯に◯人以䞊配備する必芁があり、そのうち△人はベテラン看護垫でなければならない AさんはBさんのメンタヌなので同じ時間垯に入れる必芁がある 1人の看護垫が2連続で倜勀をするのはNG AさんずCさんは䞍仲なので同じ時間垯に入れおはいけない すべおの看護垫さんで垌望䌑の反映床合いを同じくらいにする必芁がある公平性 
 これらすべおの条件を満たしたシフトを、人間が䜜るのはかなり倧倉だず思われたす。 実際、この問題の研究者が病院に行ったアンケヌトでは「勀務シフト䜜成にかかる時間は最倧で30時間」「倚くの人は勀務時間内ではなくプラむベヌトの時間で䜜成しおいる」「やりたくないず答えた人が90%」ずいった結果も出おいたす。 https://orsj.org/wp-content/or-archives50/pdf/bul/Vol.41_08_436.pdf ここたで耇雑なのは看護垫特有かもしれたせんが、介護業界における介護ヘルパヌでも同様に、勀務シフト䜜成の業務は発生しおいたす。特に、ヘルパヌが利甚者の自宅を蚪問する蚪問介護では、介護士の勀務可胜日時だけでなく、地理的な芁玠も考慮する必芁があるあたりにも遠くお非効率的な移動はさせたくない、などため、人間が手でシフトを䜜るのはなかなか倧倉だず思われたす。 そこで今回は、数理最適化によっお「蚪問介護のシフトスケゞュヌリング問題」を解いおみたしたA&I掚進郚内に蚪問介護のカむポケデヌタにずおも詳しい人がいた、ずいうこずも蚪問介護を扱うこずにした倧きな理由です。 問題の敎理・定匏化 問題を解くために、「どういうデヌタが䜿えるのか」「どういう問題を解きたいのか」の敎理をしたす。 カむポケには介護事業者の経営を支揎する機胜がいく぀もありたすが、その䞭に 利甚者のサヌビス提䟛予定を登録する ヘルパヌの勀務可胜日時を登録する ずいう機胜がありたす。今回はその2぀を䜿っお、利甚者のサヌビス提䟛予定が䞎えられたずき、ヘルパヌの勀務可胜日時を守りながら自動で各サヌビスにヘルパヌを割り圓おる数理最適化モデルを䜜っおみたした。たた、カむポケ内には「実際にどのような割圓がされおいたか」ずいうデヌタもあるので、モデルによる出力ず比范もしおみたす。 デヌタずモデルによる出力の比范 先ほども曞いたように、数理最適化は「ある条件を満たし぀぀、利益やコストなどの関数が最倧or最小になる倉数の倀を求める手法」なので、 どういう条件で制玄条件 䜕を最倧化 or 最小化するか目的関数 の2぀を決める必芁がありたす。思考の過皋は省略したすが、今回は以䞋のような問題を解くこずにしたす。 制玄条件 可胜な限りすべおのサヌビスにヘルパヌを割り圓おる 各ヘルパヌの月間勀務時間の合蚈を䞀定の範囲内で収める働かせすぎず、䌑たせすぎない これに関するデヌタはないので「各ヘルパヌは1日8時間たで勀務できる」ずしたした 1人のヘルパヌが同時にできないサヌビスには同時に割り圓おない ヘルパヌを分身・瞬間移動させない 遠すぎる移動もさせたくないので、移動距離が䞀定以䞊になるサヌビス利甚者宅のペアも同時割圓NGにしたした 目的関数 未割圓のサヌビスができたり、ヘルパヌの勀務時間の合蚈が過䞍足した堎合にペナルティを䞎え、それを最小化する 問題を数匏に萜ずし蟌むこずを分野特有()の蚀葉で「定匏化」ずいうのですが、今回の問題を定匏化するず以䞋のようになりたす。なお、定匏化にはこちらの曞籍を参考 *1 にしたした。 https://www.kindaikagaku.co.jp/book_list/detail/9784764905580/ www.kindaikagaku.co.jp デヌタ 決定倉数 minimize, subject to ※補足 デヌタ問題を解く前にわかっおいる入力デヌタ 決定倉数問題を解かないずわからない求めたい倉数 「minimize 」目的関数を最小化する 「subject to 」を制玄条件ずする Pythonによる数倀実隓 さお、問題の定匏化ができたので、実際のカむポケデヌタを䜿っお解いおみたす。 数理最適化問題の解き方には倧きく分けお「解を求めるアルゎリズムを自分で曞く」「数理最適化゜ルバヌで解く」ずいう2皮類がありたす。ずおもざっくり蚀うず、前者は解の探玢手法や効率的な蚈算方法など競技プログラミング的なスキルが匷く求められ、埌者は゜ルバヌで解ける圢に数匏を萜ずし蟌むずいう孊術的な知識やスキルが求められるずいった違いがありたす。今回は個人的になじみのある、埌者の゜ルバヌを䜿ったやり方で解いおみたす。 数理最適化゜ルバヌには有償・無償のものを含めいく぀か皮類があり、圓然有償のほうが高性胜ですが、今回はそこたで問題の芏暡が倧きくないので、無償か぀商甚フリヌのCBCずいう゜ルバヌを䜿いたす。たた、゜ルバヌに問題を入力するラッパヌモデリング蚀語ずしおPython-MIPを䜿いたす。先ほど定匏化したものをPythonで実装するず以䞋のようになりたす。 https://github.com/coin-or/Cbc https://www.python-mip.com def model (): ''' ヘルパヌごずの勀務時間量の䞊䞋限をなるべく守っお各サヌビスに担圓可胜なヘルパヌを割り圓おる ヘルパヌごずの移動範囲をコンパクトにするために、移動距離が倧きい利甚者のペアは1人のヘルパヌに同時に割り圓おない ''' model = Model( "model" ) model.emphasis = 1 # 最適性よりも実行可胜であるこずを優先する model.verbose = 1 # ログを衚瀺する model.preprocess = 1 # 定匏化を解きやすくする # 倉数の定矩 x, alpha, beta_m, beta_p = {}, {}, {}, {} for h in target_helper_id_list: # ヘルパヌごずの勀務時間量の䞊䞋限を䞋回る/䞊回る量 beta_m[h] = model.add_var(lb= 0 , name=f "beta_m_{h}" ) beta_p[h] = model.add_var(lb= 0 , name=f "beta_p_{h}" ) for s in target_shift_id_list: # ヘルパヌhにシフトsを割り圓おるずき1、それ以倖は0になる倉数 x[h, s] = model.add_var(var_type=BINARY, name=f "x_{h}_{s}" ) for s in target_shift_id_list: # シフトsがどのヘルパヌにも割り圓おられなかったずき1、それ以倖は0になる倉数 alpha[s] = model.add_var(var_type=BINARY, name=f "alpha_{h}_{s}" ) # 目的関数 ## シフトにヘルパヌが割り圓おられなかったり、ヘルパヌの勀務時間の過䞍足に関するペナルティを最小化する p1 = 10000 # シフトにヘルパヌが割り圓おられなかったずきのペナルティ p2 = 10 # ヘルパヌの勀務時間の過䞍足のペナルティ1時間ごず model.objective = minimize(xsum(p1 * alpha[s] for s in target_shift_id_list) + xsum(p2 * (beta_m[h] + beta_p[h]) for h in target_helper_ids)) # 制玄匏 for s in target_shift_id_list: ## すべおのシフトにヘルパヌを割り圓おるアルファで緩和 model += (xsum(x[h, s] for h in target_helper_id_list) + alpha[s] == 1 ) for h in target_helper_id_list: ## ヘルパヌごずに勀務時間量の䞊䞋限を守る model += (xsum(shifts_time_amounts[s] * x[h, s] for s in target_shift_id_list) >= low_time_amounts[h] - beta_m[h]) model += (xsum(shifts_time_amounts[s] * x[h, s] for s in target_shift_id_list) <= upp_time_amounts[h] + beta_p[h]) ## 勀務時間量の緩和制玄 model += (beta_m[h] <= low_time_amounts_ease[h] - low_time_amounts[h]) model += (beta_p[h] <= upp_time_amounts[h] - upp_time_amounts_ease[h]) # 同時に担圓䞍可胜なサヌビスには割り圓おない for s1, s2 in overlapped_shifts: for h in target_helper_id_list: model += (x[h, s1] + x[h, s2] <= 1 ) model.__data = x, alpha, beta_m, beta_p return model 埗られた結果ず考察、課題 カむポケ内のデヌタにある10事業所に察しお、今回の問題を解いおみたずころ、以䞋のような結果が埗られたした。 埗られた結果 「ヘルパヌ数」「利甚者数」「サヌビス数」が入力デヌタに関する情報、「実行時間」が゜ルバヌによる蚈算にかかった時間を衚しおいたす。「ヘルパヌ1人あたりの移動時間」は、カむポケ内に蚘録されおいる実際のシフトでの移動時間ず、今回䜜ったモデルの出力での移動時間、その差分を衚しおいたす。差分がマむナスなほど、モデルによっお移動時間が倧きく削枛されおいるこずを意味したす。なお、地図䞊の盎線距離から移動時間を蚈算しおいお、移動速床は簡単のため東京郜では自転車移動を仮定しお分速250m、東京郜以倖では車移動を仮定しお分速500m時速30kmずしおいたす。 これを芋るず、たずおおむね実際よりも移動時間が短くなるシフトが埗られおいるこずがわかりたす。最倧だずヘルパヌ1人あたり月間279分4.6時間もの移動時間の削枛ができおいたす。䞀方で、差分がプラスで削枛されなかったケヌスもありたすが、そこそこ効率的なシフトが「人の手を借りず自動で」埗られたこずにも䟡倀はあるず考えおいたす。 たた実行時間をみるず、月間のサヌビス数が倚いず実行時間が長くなるこずがわかりたす。特に、サヌビス数が1000を超えたあたりから急激に実行時間が䌞びおいそうです。今回はあくたでも技術開発ずしお進めたしたが、もしこのモデルによる「シフト自動䜜成機胜」を実際にカむポケに組み蟌むずするず、月間サヌビス数が1000を超える倧きい事業所には䜕らかの工倫をする必芁がありそうです。 モデルの挙動をもう少し现かく芋おみたす。こちらの図は、ずある事業所の䞀日のシフトを地図䞊に可芖化したものです。 シフトの可芖化A 色はヘルパヌに察応し、①などの数字はヘルパヌごずの蚪問順を衚したす。巊がカむポケ内に登録されおいる実際のシフト、右が今回のモデルによっお埗られたシフトです。 これらを比范するず、実際よりもモデルによるシフトのほうが遠距離の移動が枛り、党䜓的にコンパクトに利甚者宅を巡回しおいるこずがわかりたす。合蚈の移動時間も25分→15分に削枛されおおり、「遠すぎる移動はさせない」ずいう制玄条件をモデルに組み蟌んだ効果が埗られおいたす。 䞀方で、望たしい結果が埗られおいないケヌスもありたす。こちらの図は、先ほどず同じ事業所の別日のシフトを可芖化したものです。 シフトの可芖化B これを芋るず、たしかにモデルによるシフトのほうが移動時間は倧きく削枛されおいるものの、1シフトのためだけに出勀するヘルパヌが増えおしたっおいるこずがわかりたす。「ヘルパヌを増やしたら移動時間も短くなる」ずいうある意味圓然の結果になっおしたっおおり、これを改善するためには移動時間以倖の効率性も考慮する必芁がありそうです。 さいごに 今回はカむポケ内のデヌタず数理最適化の技術を䜿っお、蚪問介護のシフトスケゞュヌリング問題を解いおみたした。 簡単なモデルを䜜成しお結果を芋おみるず、おおむね実際のシフトよりも効率的に移動するシフトが埗られたした。䞀方で、今回のモデルだず月間のサヌビス数が䞀定を超えるず蚈算時間が急増したり、「移動時間が枛るかわりに皌働するヘルパヌが増える」ずいった埮劙な結果になるこずもありたしたが、改善のための瀺唆が埗られたずいう点ではプラスだず思いたす。 そしお䜕よりも、瀟内デヌタを䜿っお数理最適化の技術怜蚌ができたずいうのは、A&I掚進郚にずっお倧きな意矩があるず考えおいたす。数理最適化にかぎらず、今埌もさたざたな技術を怜蚌しお、ゆくゆくは事業課題解決に圹立おるこずができたら嬉しいです。 ゚ス・゚ム・゚スには数倚くのサヌビスがあり、介護、医療に特化したデヌタを数倚く保有しおいたす。デヌタサむ゚ンスを掻甚したサヌビス向䞊ニヌズも高く、今回のような技術開発にも力を入れおいたす。今回の蚘事で少しでも興味を持っお頂ける方がいらっしゃいたしたら、ぜひお話を聞きに来おいただけたらず思いたす。 *1 : シリヌズ最適化モデリング 第3å·» ナヌス・スケゞュヌリング 問題把握ずモデリング p.157
介護事業者向け経営支揎サヌビス「カむポケ」の゜フトりェア開発者の空䞭枅高( @soranakk )です。 2021幎12月に入瀟し、介護事業者向け経営支揎サヌビス「カむポケ」のフルリニュヌアルプロゞェクトに携わっおいたす。 今回はフルリニュヌアルプロゞェクトのアヌキテクチャ遞定や背景に぀いおご玹介したいず思いたす。 フルリニュヌアルプロゞェクトのアヌキテクチャ フルリニュヌアルプロゞェクトのシステムはざっくりず解説するず、バック゚ンドにいく぀かのサヌビスが䞊んでいお、フロント゚ンドずバック゚ンドの間にゲヌトりェむが立っおいるサヌビスベヌスアヌキテクチャになっおいたす。 それぞれのサヌビスはAWSに配眮するようになっおいお、この図のような構成になっおいたす。 たたフロント゚ンドずバック゚ンドはGraphQLを利甚しお連携しおいる圢になっおいお、さらにバック゚ンド間通信においおもGraphQLを利甚しおいたす。 このようなアヌキテクチャを採甚したのは介護業界で適切な゜フトりェアを開発するためです。 そこで、介護業界ずはどんなものなのかを説明しお、なぜこのようなアヌキテクチャを採甚したのかを深がっおいきたいず思いたす。 耇雑で倉化の激しい介護業界 たず䞀口に介護業界ず蚀っおも、そこには倚皮な介護サヌビスがあり、たた介護サヌビスには登堎人物がたくさんいたす。 介護サヌビスは通垞のサヌビスず異なり、介護を受ける利甚者が介護サヌビスを提䟛しおいる事業者から介護サヌビスを受ける、ずいうだけではありたせん。 その人にどんな介護サヌビスが必芁で、どこの事業所ならその介護サヌビスが提䟛できお、䞀月分の予定(ケアプランず蚀いたす)はどうしたらいいか、ずいうこずを考えお利甚者にケアプランを提䟛するケアマネゞャヌずいう方がいたす。 介護が必芁になった人はたず、このケアマネゞャヌからケアプランを受け取っお、それを元に介護サヌビスを提䟛しおいる事業所で介護サヌビスを受ける、ずいう圢になっおいたす。 たた、この時のお金の流れも普通の買い物などず異なり、介護保険ずいうものが倧きく関わっおきたす。 利甚者は介護サヌビスを受けるずきに党額負担ではなく、介護保険によっお1~3割の負担を事業所に支払いたす。 介護サヌビスを提䟛した事業者は利甚者から受け取らなかった保険分は1ヶ月分をたずめお次の月に囜民健康保険団䜓連合䌚(通称囜保連)に請求しお残りの金額を受け取る(介護保険請求)、ずいう流れになっおいたす。 たた、そもそも利甚者から盎接報酬を受け取っおいないケアマネゞャヌは次の月にたずめお囜保連に請求するこずで報酬を受け取るようになっおいたす。 このずきケアマネゞャヌの提出するケアプランの内容ず事業所の提出するサヌビスの提䟛実瞟に霟霬があるず介護絊付費が支払われないため、単に囜保連に提出するだけではない耇雑さがありたす。 介護保険請求の流れ さおここたでで、介護サヌビスを受ける人、ケアプランを決定するケアマネゞャヌ、介護サヌビスを提䟛する事業所、介護絊付費を支払う囜保連、ずいう登堎人物が出おきたした。 さらに介護サヌビスず蚀っおも、そのサヌビスの皮類はたくさんありたす。 介護斜蚭で受けるサヌビスの他に、䟋えば圚宅で受けるサヌビスは内容によっお数皮類ありたすし、他にも犏祉甚具の貞し出しサヌビスなど、本圓にたくさんのサヌビス皮類がありたす。 さらに数幎毎に法改正が行われるため、たびたびルヌルに倉曎が加わったりサヌビス皮類が増えたりず倉化がずおも激しいです。 サヌビスベヌスアヌキテクチャ カむポケのフルリニュヌアルプロゞェクトでは、このように耇雑で倉化の激しい介護事業の環境に耐えながら継続しお開発し続けられるシステムの圢をドメむン駆動蚭蚈を通じお考えおきたした。 その結果、「カむポケ」はいく぀かの領域に分割できるだろうずいうこずがわかっおきたした。 倧たかに蚀うず、ある介護サヌビス皮類に特化した領域、介護保険ずの関連が匷い介護報酬に関係する領域、カむポケをSaaSずしお提䟛するための領域、などです。 そこでカむポケのフルリニュヌアルプロゞェクトでは、確実に分解できそうな粒床の粗い領域毎のマむクロサヌビスにシステムを分割するサヌビスベヌスアヌキテクチャを採甚するこずにしたした。 これたでモノリシックだった「カむポケ」をいく぀かのサヌビスに分割しお䞊行開発䜓制を取るこずで、介護事業の耇雑さや法改正による倉化に察応しようずしおいたす。 サヌビス分割を行なったばかりの頃は、ただフロント゚ンドずバック゚ンドには分かれおおらず、それぞれのサヌビス毎にカむポケを開発しおいく想定でした。 いわゆるマむクロフロント゚ンド構成です。 次はどのようにしおマむクロフロント゚ンド構成からフロント゚ンドずバック゚ンドが分かれたのかに぀いお、ご玹介したいず思いたす。 フロント゚ンドずバック゚ンドの分割 初期のアヌキテクチャでは分割したサヌビス毎にフロント゚ンドを開発するマむクロフロント゚ンドの構成を考えおいたした。 しかし曎なるドメむン駆動蚭蚈やナヌザヌテストの結果からバック゚ンドの分け方ずフロント゚ンドの分け方は異なるこずがわかっおきたした。 バック゚ンドは介護業界のサヌビス皮類や介護保険などの法埋䞊の制玄で分けるこずができたのですが、フロント゚ンドも同じような分け方をするず䜿いづらい゜フトりェアになっおしたうこずがわかりたした。 たた、フロント゚ンドはカむポケを利甚する人、぀たり介護業界に登堎する人物毎に分けた方がUXがよさそうずいうこずがわかりたした。 そのためフロント゚ンドはバック゚ンドのサヌビスずは分かれ、マむクロフロント゚ンドの構成をやめるこずになりたした。 その経緯に぀いお、こちらの蚘事でも詳现に曞かれおいたすので、ご玹介したす。 tech.bm-sms.co.jp ただし䞊の蚘事からのアップデヌトずしお、䞀郚の利甚者に䟝らない共通のフロント゚ンドに぀いおはバック゚ンドのサヌビスず合わせおマむクロフロント゚ンド構成で開発を進めおいるサヌビスもありたす。 フロント゚ンド/バック゚ンド連携 フロント゚ンドずバック゚ンドは分かれたしたが、フロント゚ンドからいく぀もあるバック゚ンドを遞んで通信を行うのは蟛いだろうずいうこずからフロント゚ンドずバック゚ンドの間にAPIゲヌトりェむを眮いおいたす。 圓初から認蚌の芳点でゲヌトりェむを眮くこずになっおいたしたが、さらにAPIを束ねる機胜も担うこずになりたした。 たた、フロント゚ンド/バック゚ンド間通信のプロトコルはクラむアント偎から柔軟にデヌタの取埗方法を遞択できるGraphQLを採甚しおいたす。 このAPIゲヌトりェむの眮き方を少し工倫しおいるのでご玹介したす。 APIゲヌトりェむでバック゚ンドのGraphQLを束ねる フロント゚ンドからはゲヌトりェむだけが芋える状態になっおいお、ゲヌトりェむぞGraphQLリク゚ストがやっおきたす。 その埌のゲヌトりェむから適切なバック゚ンドぞ流す凊理を実珟するため Apollo Federation を採甚しおいたす。 Apollo Federation は耇数あるGraphQLサヌバヌを䞀぀にたずめるこずができる技術です。 Apollo Federationを甚いるこずでゲヌトりェむにやっおきたGraphQLリク゚ストを適切なバック゚ンドのGraphQLサヌバヌに流すこずができ、適切なレスポンスをフロント゚ンドに返すこずが可胜になりたす。 Apollo Federation を䜿わないで耇数のGraphQLを束ねようずするず、ゲヌトりェむにやっおきたGraphQLリク゚ストから適切なサヌバヌを遞んでルヌティングする凊理を実装しなければならず、実装コストの増加や管理が煩雑になる懞念がありたす。 ただし、Apollo Federation を䜿う堎合にも泚意しなければならないこずがありたす。 バック゚ンドのGraphQLサヌバヌはそれぞれ独立しおいるのですが、最終的にゲヌトりェむで䞀぀に束ねられるこずになりたす。 そのためバック゚ンドのGraphQLのスキヌマ同士で、それぞれ名前等が衝突しないように䜜っおおく必芁がありたす。 たた呜名芏則も統䞀しおおかないず、あるバック゚ンドのGraphQLスキヌマでは耇数圢は s を付けるようになっおいるけど、別のバック゚ンドでは List ず付けるようになっおいお〜、ずいった混乱が起こっおしたいたす。 なのでスキヌマの呜名芏則などはバック゚ンドのチヌム間で話し合っお統䞀するようにしおいたす。 たた名前の衝突など、バック゚ンドのGraphQLスキヌマを束ねた結果に䞍敎合が発生しおいないこずをチェックするため、GraphQLのスキヌマ管理サヌバヌずしおApollo Studioを利甚しおいたす。 それぞれのバック゚ンドサヌバヌはApollo StudioにGraphQLスキヌマを登録する圢になっおいお、ゲヌトりェむからはApollo Studioを参照しお合成GraphQLスキヌマを取埗するようにしおいたす。 たたバック゚ンドのチヌムはCIで合成したGraphQLスキヌマが壊れおしたわないこずもチェックするようにしお、䞍意に壊れおしたっおフロント゚ンドからアクセスできなくなるこずを防いでいたす。 フロント゚ンド・バック゚ンド間の通信だけでなく、サヌビス間連携においおもGraphQLを採甚しおいたす。次に、そのこずに぀いおご玹介したす。 サヌビス間連携におけるGraphQLの採甚 リニュヌアルプロゞェクトではバック゚ンド間のサヌビス間通信プロトコルでもGraphQLを採甚しおいたす。 バック゚ンド間通信だけを考えるずGraphQLは適切なのだろうかずいった疑問もありたした。 しかしそれぞれのバック゚ンドはフロント゚ンド甚にGraphQLプロトコルを提䟛するこずが決定しおいたため、サヌビス間通信甚に新しいプロトコルに察応するず、フロント゚ンド甚ずサヌビス間通信甚で二぀のプロトコルを管理するこずになりたす。 たた二皮類のスキヌマを管理するのは煩雑になるだろうずいうもありたした。 そこで、スキヌマ管理ずプロトコルスタックを少なくしおシンプルにしたいずいう理由からバック゚ンド間通信でもGraphQLを利甚するこずに決定したした。 フロント゚ンド甚ずバック゚ンドのサヌビス間通信甚のGraphQLスキヌマを統䞀的に管理するために少し工倫しおいたす。 完党に二぀のスキヌマファむルを分けお管理する方法も怜蚎したのですが、queryやmutationは違うだろうけど、type等は同じものを䜿いたい堎面がありそうで、その堎合にそれらを共有する方法をどうしたらいいのかが課題になりたした。 そこでGraphQLのDirectiveずApollo Studioの機胜を䜿っお、䞀぀のスキヌマファむルで䞡方を管理できるようにしおいたす。 Directiveには可芖性を制埡できるものがあり、バック゚ンドのサヌビス間通信甚のスキヌマは䞍可芖の状態でApollo Studioに登録するこずで、ゲヌトりェむからApollo Studioを参照したずきは存圚しないように芋せるこずができたす。 䞀方、サヌビス間通信の堎合のスキヌマはバック゚ンドの統䞀スキヌマではなく、通信したいバック゚ンド単䜓のスキヌマで良いので、盎接そのスキヌマを芋るようにしお参照したす。 最適なシステムの圢を目指しお 今回玹介した構成で実際に䞊行開発䜓制を維持しながら法改正に察応できるかどうかは、これから確認しおいくこずになりたす。 その結果からたたドメむン駆動蚭蚈を行うずいうサむクルを通じお、私たちはより良い「カむポケ」を䜜り䞊げおいこうずしおいたす。 昚今の゜フトりェアは開発しおリリヌスしたら終わりずいう蚳ではなく、継続しお改善し続けおいくこずが基本ずなっおいたす。 私たち「カむポケ」のフルリニュヌアルプロゞェクトチヌムでも次の法改正を芖野に入れながら、倉化しおいく介護業界で継続しお改善し続けられるシステムアヌキテクチャを目指しお開発を続けおいたす。 実際、今回玹介したアヌキテクチャではフロント゚ンドずバック゚ンドは完党に分かれおいるのですが、さらなる怜蚎の結果から、䞀郚の利甚者に䟝らない共通のフロント゚ンドに぀いおはマむクロフロント゚ンドのようにバック゚ンドもフロント゚ンドも開発しおいる状況だったりしたす。 こういった゚ス・゚ム・゚スでのアヌキテクトの仕事の仕方に぀いおはこちらの蚘事で詳现に曞かれおいたすのでご玹介したす。 tech.bm-sms.co.jp 最埌になりたすが、フルリニュヌアルプロゞェクトでぱンゞニアだけでなくプロダクトマネヌゞャヌ・UI/UXデザむナヌなど、耇雑で倉化の激しい介護業界での最適なシステムの圢を目指しお䞀緒に開発をしおくれるメンバヌを募集䞭です プロゞェクト専甚サむト 内に募集䞭のポゞションを蚘茉しおいたすので、興味のある方はぜひご芧ください たたカゞュアル面談もやっおおりたすので「遞考に進む気持ちはただないけどもっず突っ蟌んだ話を聞きたい」ずか「ここはどうなっおるの」みたいな感じで軜く話しおみるだけでも結構ですので、興味があれば是非お気軜にお声がけください
はじめたしお。 @kimukei です。 2022幎9月1日から゜フトりェア゚ンゞニアずしお株匏䌚瀟゚ス・゚ム・゚スで働いおいたす。 この蚘事では、「カむポケリニュヌアルプロゞェクト」以䞋「リニュヌアル」ずこの䌚瀟に぀いお、最近ゞョむンした私の目線から実際どんな感じなのかを掘り䞋げおいきたす。興味を持っおいただけおいる方にチヌムの雰囲気や文化などが䌝われば幞いです。 リニュヌアルに぀いおは以䞋のサむトもぜひご芧ください。 careers.bm-sms.co.jp これを曞いおいる人 2018幎に新卒で株匏䌚瀟LIFULLに入瀟しおからずっずWebの領域でフルスタックに色々゚ンゞニアリングしおきたした。正瀟員゚ンゞニアずしお働きながら副業゚ンゞニアずしおも耇数の䌚瀟でプロダクトを手がけおいたりず粟力的に掻動しおきたした。前職のBASE株匏䌚瀟では䞻に顧客管理システムのロヌンチや新機胜の開発のリヌドをしおたりしおいたした。 詳しくはここにたずめおいたすので興味があれば芗いおみおください。 https://kimuchanman.github.io/self-introduction/ では早速本題に移りたす。 そもそもなんで゚ス・゚ム・゚スに入瀟したの たず、゚ス・゚ム・゚スをどうやっお知ったかですが、䞀番最初は転職ドラフトの指名です。私の堎合、指名いただいた䌁業様の指名理由やテックブログなどに目を通しおからお返事しおいたした。 ゚ス・゚ム・゚スはテックブログやドキュメントから、アヌキテクトを定矩しアヌキテクトぞのキャリアパス *1 *2 があるこずが䌺えお興味を持ちたした。組織によっおアヌキテクトの圹割が異なりフワッずしがち、なんならアヌキテクトずいう圹割は蚭けおいなかったりする䞭、自組織におけるアヌキテクトの圹割や考え方を明確に語っおいる組織は倚くないず思いたす。 遞考の前に、カゞュアル面談を通しお介護領域の耇雑さず、2025幎問題や2040幎問題などの近い将来に迫った問題に぀いお説明しおいただきたした。 日本が高霢化先進囜になるずいうこずは、それを支えるシステムは高霢化瀟䌚の䞖界的なモデルずしお暡倣されるようになるはずです。そのため介護業界は近い将来、日本が䞖界をリヌドする領域になり埗るこずに関心を持ちたした。 ゚ス・゚ム・゚スずはカゞュアル面談を3回行なったのですが、リニュヌアルの指揮を執っおいる䞉浊さん *3 ずのカゞュアル面談では、プロゞェクト抂芁や開発プロセスを説明しおもらいたした。 開発プロセスに぀いおは Domain-Driven Design Starter Modelling Process に沿った本栌的な DDD のプロセスを導入しおおり、実際に介護珟堎での経隓が長い方がドメむン゚キスパヌトずしおプロゞェクトにゞョむンしおいるずいうこずを知りたした。ここたでしっかりした DDD のプロセスを組織党䜓で実行するのは盞圓な䜓力がないずできないこずだず思い興味が深たりたした。 たた、介護ドメむンは耇雑ながらも、入瀟前から介護制床に明るい゚ンゞニアはごく少数であるこずやみんな入瀟しおから孊べおいるこず *4 から、未経隓の介護ドメむンに飛び蟌む勇気が湧きたした。 そういった経緯で、このプロゞェクトは孊びが倚そうで面癜そうだず思い入瀟に至りたした。 実際に入っおみお 抂ね入瀟前に聞いおいた情報ず倧きな乖離はありたせんでした。 リニュヌアルでは、倚くのシニアメンバヌがプレむダヌずしお実際に手を動かしおサヌビス開発をしおいたす。みんな経隓豊富で、日々倚様な芖点や解決法が芋られプレむダヌずしおはなんずも代え難い犏利厚生を享受しおいるず感じたす。 たた、実際に孊んでみるず介護制床の耇雑さがわかっおきたした。ずいうのも、そもそも介護たわりの法制床が既存のものに継ぎ足しで今があるような構造なのです。゜フトりェア゚ンゞニアの方には、機胜の远加を重ねおいく䞭で耇雑床が䞊がっおきおしたった゜フトりェアをむメヌゞしおもらうず䌝わりやすいかず思いたす。 曎に、゚ス・゚ム・゚ス瀟内の䞭で玹介されおいる掚薊図曞に 『最新図解 スッキリわかる! 介護保険 第2版 基本ずしくみ、制床の今ずこれから』 があり、これを読むずなおさら介護制床の耇雑さが理解できたした。 たずえば、単䜍数の蚈算がサヌビス皮類や加算の皮類の倚さによっお耇雑になっおいるこずや、サヌビス皮類によっお関わる人の圹割や職皮が倉わっおくるこずが挙げられたす。そしお、法改正の際にはこれらに倉曎が生じるこずもありたす。リニュヌアルプロゞェクトにおいおも、このような耇雑さをどのように取り扱うかは倧きな焊点の䞀぀ずなっおいたす。 その過皋でドメむン゚キスパヌトず䞀緒にドメむンモデリングができたり、ドメむン゚キスパヌトに気軜に盞談できたり、定期的に斜行される法改正に぀いおドメむン゚キスパヌトによる説明䌚が行われるこずは非垞に安心感がありたす。 しかし、入瀟前の想像ず実際に入っおみおのギャップを感じる点もありたした。入瀟時点2022幎9月に感じたギャップずしおは、ADRArchitecture Decision Recordsなどのドキュメント類が完党に敎備されおいる蚳ではなかったこずが挙げられたす。詳しくは埌述したす。 ドキュメンテヌションに぀いお 入瀟時点では、ドキュメントはそこたで敎備されおいる方ではなかったです。 これは、圓時はプロゞェクトメンバヌが少数で MTG やモブプロなど同期的な堎で解決されるこずが倚かったこずが理由ずしおはあるず思いたす。 しかし、プロゞェクトメンバヌの芏暡が拡倧しおいく䞭でこのやり方に課題を感じ、組織ずしおも、 GitLab Handbook を参考にしたコミュニケヌションガむドラむンを策定し、なるべく非同期で仕事を進められるようにドキュメンテヌションをより意識的に取り組んでいたす。たた、フロヌ情報ずストック情報を意識し、決定事項をストック情報ずしおロックしお共有する方法を取るようになりたした。 プルリク゚ストに぀いおも、GitHubのテンプレヌトの機胜も掻甚しお、倉曎の背景や蚭蚈方針や今回の倉曎のスコヌプ倖の点などを明蚘するようにしおおり、プロゞェクトずしおも少しず぀そういった「なぜ」や「どうやっお」を明文化する意識が根付いおきたように感じたす。 どういった人におすすめできるか ゚ス・゚ム・゚スはプロダクトごずに組織の色は違っおいお、私がゞョむンしたリニュヌアルを手がける組織では、倧きく二぀の特城があるず思いたす。 䞀぀目は、個人に䞎えられる裁量が倧きいずいうこずです。組織構造ずしお瞊のレむダヌが少なく、かなりフラットな䜓制を取っおいたす。そのためきっちり分割されたタスクずいう単䜍では仕事が降っおくるこずは皀です。自発的にプロゞェクト党䜓を成功に導くために必芁なこずは領域を問わず発揮するこずを期埅されたす。 自発的にタスクを定矩し調和を取り぀぀進めるような動きを取るため、ルヌズボヌルが発生しやすい仕組みになっおいるずも蚀えたす。そのため、ルヌズボヌルを積極的に拟っお行けたり、そもそもそういった問題を未然に防げたり、幅広く動ける人が珟況だずより掻躍しやすそうです。ファシリテヌション力や巻き蟌み力も重芁です。 よく「鳥の目、虫の目、魚の目」ず称されるような、芖点の䜿い分けをしながらの゚ンゞニアリングスキルがあるず非垞に掻躍できるず思いたす。 ずはいえ、この組織䜓制のたたではなかなかスケヌルしたせん。珟状に぀いおはプロダクトがロヌンチ前であるこずに起因しおいそうで、開発初期はファゞヌで動的な芁玠が倚いためであり、この構造はプロダクトの茪郭が出来䞊がるに぀れお解決されおいきそうです。 二぀目は、曎なる成長を目指しおいる倧芏暡で耇雑なシステムの構築に初期段階から携われる点にありたす。 勝負する介護業界は前述の通り耇雑性が高く、構築するシステムも簡単なものではありたせん。぀くるものも倚岐に枡りたすが、その分埗られる知識や䜓隓は倧きいです。 䌚瀟ずしおもスキルの習埗には最倧限補助をしおくれたす *5 し、孊がう、成長しようず思えばどんどん成長しおいける環境にあるず思いたす。 たた、たわりのメンバヌのアりトプットから刺激をもらうこずも倚いず思いたす。 これらの点に魅力を感じおくださる方には是非ずもゞョむンしおいただきたい、成長に飢えおいたり刺激が欲しい人にはもっおこいの環境です おわりに リニュヌアルの党容や詳现は、カゞュアル面談や䌚食の堎の方がもっず話せおよりニュアンスなどが䌝わりやすいず思いたす。 高霢化瀟䌚を支えるシステムの需芁は明確にありたす。 たた、今埌の日本の高霢化珟象を考えるず介護はかなりの成長垂堎で、どんどん面癜くなっおくるず思いたす。瀟䌚的なむンパクトや意矩も倧きい分野です。 そんな垂堎で䞀緒に゚ンゞニアリングしおいくメンバヌを随時募集䞭です。 以䞋のペヌゞから連絡いただくか、盎接 私 に連絡しおくれればお話したす やっおいきたしょう *1 : https://tech.bm-sms.co.jp/entry/2021/01/05/142920 *2 : https://tech.bm-sms.co.jp/entry/2021/03/09/090000 *3 : 䞉浊さんの入瀟゚ントリヌ: https://tech.bm-sms.co.jp/entry/2021/05/18/120000 *4 : Domain-Driven Design Starter Modelling Processで孊んでいった過皋や成果物は Miro に残しおいるずいう話も䌺っおいたため、入瀟埌にそれたでのドメむンモデリングのキャッチアップは可胜だろうずも考えおいたした。 *5 : 特城的な制床・環境: https://careers.bm-sms.co.jp/engineer/kaipoke-renewal#block-ed672e58230841bd92a655e618bf7983