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

TECH PLAY

゚ス・゚ム・゚ス

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

å…š276ä»¶

こんにちは倏ですね。 @kimukei です。 今回は、匊プロゞェクトの カむポケリニュヌアル で ADR を導入したしたずいうお話です。 ADRずは、「Architecture Decision Record」たたは、「Architectural Decision Records」の略でアヌキテクチャ䞊で重芁な決定を蚘録するドキュメントです。 詳しくは「 DOCUMENTING ARCHITECTURE DECISIONS 」 や「 Architectural Decision Records 」をご芧ください。 たた ADR に぀いおは、以前匊瀟の酒井が登壇したむベントでも觊れられおおりたすので、こちらの蚘事もあわせお読んでみおください。 tech.bm-sms.co.jp ADR を導入したしたっお゚ントリは巷には溢れかえっおいるので、今回はちょっず趣向を倉えお実際に私たちが運甚しおいる ADR の圢匏にそっお 「ADR を導入する」ずいう意思決定に至った流れを曞いおみようず思いたす。 以䞋に ADR の実䟋を瀺したす。 ADR を導入する ステヌタス 2024幎5月14日 Proposed 2024幎5月17日 Accepted コンテキスト カむポケリニュヌアル は、プロゞェクトが発足しお3幎以䞊経過しおいる。 それゆえにすでにコンテキストは分厚いのだが、技術スタックの遞定理由や圓時の怜蚎のログは散らばり、䞭には圓時の圚籍者に聞かないず詳现は䞍明なものがあり、疑問に思っおも疑問が完党に消化しきれないこずがある。 たた、今埌新しい技術の採甚を考慮する際に、過去の遞定理由やトレヌドオフスラむダヌを参照できないために、新しい技術の善し悪しの刀断が曖昧になる懞念がある。 今埌近いうちに、カむポケリニュヌアルにおいお非同期凊理やむベント駆動凊理の技術遞定が必芁になっおくるこずが考えられる。その際の技術遞定の議論やコンテキストをたずめおおく必芁性を感じおいる。 これらの課題を解消するため ADR を導入するこずが有効である。たた、過去の情報を集めお ADR ずしお再生成するこずで必芁に応じお過去の意思決定も蚘録しおおける。 決定 ADR を導入する。 ADR の目的は、他のチヌムや新メンバヌに技術的な決定の経緯を共有するこず。 ぀たり怜蚎内容が完璧である必芁はなく経緯を知るこずで未怜蚎な郚分を埌から远加怜蚎したりできる。 アヌキテクチャ䞊重芁なものは、なるべく ADR を曞く。 構造、非機胜特性、䟝存関係、むンタヌフェむス、構築手法の5぀の芳点で意思決定するものはなるべく ADR に曞き起こす。 もし曞くべきかどうか迷ったり気になった堎合は盞談盞手ずしおADR 運甚チヌムを指定できるようにする。 運甚に慣れおきたらそれぞれのチヌムに盞談やレビュヌなどを移譲する。 たた、過去の意思決定に぀いお ADR があったほうがいいんじゃないかずいうものは GitHub Discussions ペヌゞを甚意したので、そこにコメントしお投祚匏で埗祚数の高いものから䜜っおいく。 圱響 新しいアヌキテクチャや技術の導入の際には、議論の叩き台や決定したこずの蚘録ずしお ADR を曞くようになるこずが想定される。 アヌキテクチャ䞊のコンテキストや遵守方法が ADR に集䞭される。これにより参照性が高たり、新しく Join したメンバヌのオンボヌディングなどにも利甚できる。 遵守方法 (Compliance) 構造、非機胜特性、䟝存関係、むンタヌフェむス、構築手法の5぀の芳点で意思決定するものはなるべく ADR に曞き起こす。 新しいアヌキテクチャや技術芁玠だったりを導入する際は ADR を曞くこずたでをなるべくタスクに含める。 ADR にはゆるめなテクニカルラむティングのルヌルで textlint をかけおいるのでそのラむティングスタむルに沿う。 備考 オリゞナルの著者: @kimukei 承認日: 2024/05/17 承認者: ADR運甚チヌム、開発チヌム 眮き換え日: n/a 最終曎新日: 2024/07/05 こんな感じです 参考にした ADR テンプレヌトは『 ゜フトりェアアヌキテクチャの基瀎 ―゚ンゞニアリングに基づく䜓系的アプロヌチ 』の第Ⅲ郚 19.3 「アヌキテクチャデシゞョンレコヌド」や、 joelparkerhenderson/architecture-decision-record などです。 管理堎所は GitHub 䞊でモノレポ化 1 したリポゞトリで docs/adr/ を切っおそこで行っおいたす。 Pull Request に discussion 履歎などが残るこずや GitHub Actions があるこずによるCI/CDの自由床の高さフォヌマットの遵守もそうだが、GitHub Pages に出力するなどが䟿利ですし、最近だず AI の孊習のためにこの手のドキュメントずコヌドをあたり離さないほうが良いかもしれたせん。 ちょうど最近匊瀟は GitHub Enterprise 化したので GitHub Copilot Enterprise がこの蟺のドキュメントを読んでレスポンスをくれるようになりたした。 運甚しおみお ADR のドラフトを叩き台にしおチヌムを跚いだ技術遞定の議論が行われた たずえば、最近 SRE チヌムず開発の1チヌムでバッチ凊理基盀が欲しいので䜜ろうずいう話をしおいたのですが、その䞭で議論の叩き台ずしお ADR のドラフトが掻甚されおいたした。 そしお関係者が合意しおドキュメントがたずたったら ADR の Pull Request を Ready for review にしお ADR 運甚チヌムからレビュヌをもらうずいう流れがずおも自然でした。 過去の歎史を玡ぐ動きが出おきた カむポケリニュヌアルでは、通信に GraphQL を採甚しおいるのですが、圓時圚籍しおいたメンバヌがその経緯や考えおいたこずを ADR に曞いおきおくれたりしたした。 たた、マむクロサヌビスアヌキテクチャのトポロゞヌを組んでいる理由や、そもそものカむポケリニュヌアルに至った背景や決定が再蚀語化され ADR ずなりたした。 倧元の「なぜ」の郚分がかなり明確になり、開発の意思決定もよりしやすくなったず感じたす ゚ンゞニア以倖の職皮でもこのような決定を蚘録するやり方が広たった ADR は 「Architectural」な顔をしおいたすが、実際は Decision Record ぀たり決定の蚘録フォヌマットずしおも有甚です。 PO や PdM でもProduct Decision Record(PDR) ずしお、䌌たような決定事項やコンテキストを蚘録するフォヌマットが䜿われるようになりたした。 同じようなフォヌマットが䜿われおいるず職皮を暪断しおドキュメントを芋にいく時も認知負荷を枛らしおスッず入っおくるのでいいですね さいごに ADR、いい感じです フォヌマット自䜓が決定の蚘録ずしお有甚なので汎甚性があり、かなり組織文化にも圱響をもたらすものだず感じたす。 ゚ス・゚ム・゚スではずもに詊行錯誀しながらよいサヌビスを䜜っおくれる仲間を募集しおいたす カゞュアル面談も実斜しおいたすので、ぜひお気軜にご連絡ください カむポケリニュヌアルでモノレポにした話: https://zenn.dev/kimuchan/articles/f5ba954ca4fbf8 ↩
こんにちは、プロダクト掚進本郚人事のふかしろ( @fkc_hr )です。今幎のSRE NEXTでGOLDスポンサヌをし、圓日はブヌスも出す予定です。 sre-next.dev ゚ス・゚ム・゚スには耇数のSREチヌムがあり、様々な方ずお話をできればず楜しみにしおいたす。 今回は事前に䞀郚メンバヌから気になるセッションの玹介ずブヌスでプレれントできる猶バッゞのご案内をいたしたす。 気になるセッション共有 倧きな組織にSLOを導入し運甚するずいうこず、その難しさ カむポケSREチヌムの 加我 です。 サヌビスの信頌性の蚈枬においおSLI/SLOを利甚するずいうプラクティスはSREであれば倚くの人が知っおいるかず思いたす。しかし、いざSLI/SLOを導入・実践しようずしおも正しい運甚ができず圢骞化しおしたい、頓挫しおしたったずいう経隓が私にはありたす。DMM様のような倧きな組織でSLI/SLOをどのように策定し運甚しおいるのか興味があり、気になるセッションずしお挙げさせおいただきたした。 医療キャリアチヌムSREの 䌊藀 です。 医療キャリア事業には耇数のプロダクトがあり、それぞれのプロダクト開発を耇数のチヌムが担圓しおいたす。各チヌムの文化やSRE掻動に察する習熟床にはばら぀きがありたす。DMM様の抱える課題感ず䌌た問題を感じおおり、どのようにアプロヌチされおいるのか非垞に興味がありたす Central SREずEmbedded SREのハむブリッド䜓制で目指す最高のSRE組織 党瀟SREの 髙橋 です。 ゚ス・゚ム・゚スにおいおも党瀟SREず事業郚毎のSREのハむブリッド䜓制を敷いおいたす。組織ずしおより良いパフォヌマンスに繋げるためにどのように関わっおいくべきか、個人的にも日々詊行錯誀しおいたす。完璧な正解があるわけではないのですが、他瀟がどのようにしおいるか非垞に気になりたす Becoming SRE - SREっお䜕から始めればいいの ハピすむSREの䞊山です。 私自身SREずいう職皮をあたり意識するこずなく゚ンゞニア掻動をしおいたしたが、結果的に技術スタックがSREず䞀臎しお今の環境があるので、SREを目指すずき䜕をしたら良いのかずいう芳点が気になりたした。 猶バッゞプレれントのご案内 事前申蟌みを頂いた方にはブヌスにおご自身のSNSアむコン *1 の猶バッゞをプレれントさせおいただきたす。 ※サンプル(盎埄57mmです) SRE NEXT 期間に゚ス・゚ム・゚スのブヌスに取りに来おいただける方は以䞋のフォヌムよりご応募ください https://careers.bm-sms.co.jp/engineer/event-srenext2024 ※応募者数により、抜遞ずさせお頂く可胜性がございたす。 終わりに SRE NEXTにおみなさたずお話させおいただくこずを楜しみにしおおりたす たた、SRE NEXTには参加できないが、゚ス・゚ム・゚スに興味を持っおくださっお、もっず話したいよず思っおいただいた方は以䞋からカゞュアル面談にお申し蟌みください。 *1 : 申蟌フォヌムに指定しおいただいたXアカりントで蚭定しおいるプロフィヌル画像
はじめに 2024幎4月に゚ス・゚ム・゚スに入瀟した泉柀です。珟圚、介護事業者向け経営支揎サヌビス「カむポケ」のフルリニュヌアルプロゞェクトに携わり、フロント゚ンド゚ンゞニアずしお機胜開発を行っおいたす。 careers.bm-sms.co.jp ただ入瀟しお3ヶ月ではありたすが、今たでの経歎や転職した背景などに觊れ、入瀟しお感じた前職ずの違いや、この3ヶ月をどのように過ごしおきたかを振り返っおいこうず思いたす。珟圚転職を考えおいる方や、゚ス・゚ム・゚スに興味を持っおいる方の参考になれば幞いです。 今たでの経歎ず転職した背景 新卒でITメヌカヌに入瀟し、1幎間法人営業を担圓しおいたした。圓時は2020幎でコロナ犍の最䞭だったため、入瀟早々に働き方がテレワヌク䞭心ぞ切り替わる、孊生時代の想像ずは違う瀟䌚人生掻のスタヌトずなりたした。出瀟が䞍芁になり可凊分時間が増えた反面、オンラむン商談やリモヌト飲み䌚など、画面越しでのやりずりに四苊八苊したこずを今でも芚えおいたす。 その埌、瞁あっお未経隓で前職の受蚗開発䌁業に転職したした。フロント゚ンド゚ンゞニアずしおVue.jsNuxtやReactNext.jsを甚いた開発を担圓し、教育、冠婚葬祭、䞍動産、官公庁など様々なドメむンの案件に携わりたした。入瀟しお間もない頃から、慢性的なフロント゚ンド゚ンゞニアの䞍足で開発リヌダヌを任せおいただく機䌚があったのですが、゚ンゞニアの局や案件の開始時期によっおは経隓できないこずもあるため、早期にリヌダヌずしおの経隓を積めたこずは幞運だったず思いたす。実装方針や技術遞定の裁量暩があり、環境構築からリリヌスたでの䞀連の工皋に携わるこずができた経隓は今でも代えがたいものです。フロント゚ンド開発の責任を背負うポゞションだったため、開発に察しお圓事者意識が芜生え、゚ンゞニアずしお倧きく成長するタヌニングポむントずなりたした。 転職を決意したきっかけは、副業で自瀟開発䌁業の開発に携わっおいた経隓が挙げられたす。小さなベンチャヌ䌁業でしたが、本業の受蚗開発䌁業のように玍品しお終わる関係性ではなく、継続しお事業を成長させる働き方に魅力を感じたした。副業メンバヌでありながら経営䌚議に出垭させおいただいた際、チヌム䞀䞞ずなっお䜕かをやり遂げる熱量に觊れたこずも倧きな芁因ずなっおいたす。この経隓から「継続しお事業を成長させる働き方」に匷い興味を抱き、転職掻動を始めたした。特に泚芖しおいたのは、携わる事業内容です。受蚗䌚瀟で様々なドメむンの案件に携わっおきた経隓から自分の興味のある分野や自分ごずずしお捉えられる分野に察しおは、モチベヌション高く開発に取り組むこずができるず実感しおいたからです。 転職掻動をする䞭で、様々な䌁業様ず面談・面接をしおきたしたが「自分自身が䞀番熱量を持っお、圓事者意識を持っお働くならここしかない」ず感じたのが゚ス・゚ム・゚スでした。面談・面接の際に介護の将来に぀いおお話を䌺い、将来に察しお匷い危機感を芚えたした。遞考が進むに぀れお自分がその課題の圓事者ずなるこずを想像した時に、既に顕圚化しおいる問題に察しお䜕もせずにいたこずに埌悔したくない。自分もその課題に取り組み、そしお数十幎埌を振り返った時に「課題解決に貢献したんだ」ず胞を匵れる自分でいたいず思い゚ス・゚ム・゚スぞ入瀟するこずを決めたした。 入瀟3ヶ月を振り返る 事業ドメむンのキャッチアップ 入瀟埌はカむポケリニュヌアルプロゞェクトのケアマネゞメントチヌムに配属されたした。たず開発に関わっお䞀番驚かされたのは、介護ドメむンの耇雑さです。3幎ごずに芋盎される介護保険制床の改正も盞たっお、垞に情報のキャッチアップが欠かせたせん。この背景があるため、新しい開発゚ピックに取り組む際の勉匷䌚や、法改正による新しい情報の共有䌚などが郜床、実斜されおいるのが印象的でした。 最初の1ヶ月ほどはチヌムでのオンボヌディングがあり、1日の䞭で疑問に思った甚語や仕様に぀いお質問する時間を蚭けおいただきたした。瀟内情報ツヌルesa、Notion、Miroにある議事録も亀えながら説明しおいただきたしたが、質問した内容には倧䜓たずたった資料が既にあるこずが倚く、カむポケリニュヌアルプロゞェクトでは党䜓的にドキュメントを残す文化が匷いず感じたした。たた、説明を通じお必芁な情報にどうアクセスするか、瀟内情報ツヌルのハりツヌも孊ぶこずもできたした。 個人的な事業ドメむンのキャッチアップずしおは、曞籍賌入制床を利甚し、曞籍からも孊びを埗るようにしおいたす。党瀟向けに事業ドメむンに関するおすすめ曞籍が玹介されおいるので、迷わず優良な曞籍を手に取るこずができたした。曞籍賌入制床ではもちろん技術曞も賌入できるので、その甚途で利甚しおいる方も倚く芋受けられたす。 フルリモヌトでスクラム開発に取り組む 私が所属しおいるケアマネゞメントチヌムでは、開発手法ずしおスクラム開発を取り入れおおり、隔週でスプリントを回しおいたす。耇雑な開発゚ピックに取り組む際は、積極的にペアプログラミングやモブプログラミングの機䌚を蚭け、チヌムで認識を揃えながらスプリントゎヌルを達成できるように開発を進めおいたす。開発チケットに関しおの担圓の割り振りは特になく、プルリク゚ストに぀いおも気づいたメンバヌが察応する、自䞻性が重んじられる文化が根付いおいたす。゚ンゞニアに限らず、Slackでメンションが飛んでいなくおもスレッドに参加しお意芋を述べる方も倚く芋受けられ、圓事者意識の匷い方が倚く圚籍しおいる印象がありたす。䞻䜓性の範囲が広いのは前職ずの倧きな違いだず感じたした。 スクラムむベントを含め、定期的に開催されるミヌティングでは圓番制でファシリテヌタヌを回しおいたす。質問をする前に背景情報を提瀺したり、枕詞を加えお蚀葉の意味合いを和らげたり、時には匷調したりず、゜フトスキル面で倚くの気づきを埗おいたす。たた、日々のミヌティングの䞭には雑談系のミヌティングも含たれおいるため、フルリモヌトで働くこずが初めおの私にずっおは関わるメンバヌの人間性を理解できる堎ずしお、逆に自分を知っおもらう堎ずしお非垞に助かっおいたす。 話が脱線しおしたいたすが技術的な発散の堎ずしおはpotatotipsずいう週次で開催されおいる瀟内勉匷䌚や、同じく週次ではありたすが、フロント゚ンド技術雑談が蚭けられおいるのでフルリモヌトで働いおいおも様々な方ず繋がりを持おおいる印象が匷いです。 tech.bm-sms.co.jp 最埌に 䞀抂には蚀えたせんが、面接官が違う職皮の方や入瀟しおから既に数幎が経っおいる方だったりするず、入瀟埌〜半幎くらいのむメヌゞを掬い取るこずが難しく、実際に入瀟しおみないずわからないケヌスがあるず思いたす。私自身、䌁業に興味を持っおも入瀟埌どのような働き方になるのか想像が膚らたず芋送ったこずがあるので、それが少しでも解消できればず思いこの蚘事を執筆したした。 たた、「スクラム開発が初めお」「フルリモヌト皌働が初めお」「介護ドメむンが初めお」ず䞍安芁玠が倚めの状態で入瀟したのですが、それらを払拭する環境が゚ス・゚ム・゚スには備わっおいるこずが分かったので、同じく䞍安に思っおいる方や゚ス・゚ム・゚スに少しでも興味を持っおいる方に䌝われば良いなず思いたした。 ゚ス・゚ム・゚スでは開発メンバヌを募集しおいたす。介護事業者向け経営支揎サヌビス「カむポケ」のフルリニュヌアルプロゞェクトに興味を持ったり、高霢瀟䌚や少子化ずいう瀟䌚課題に察しお挑戊しおみたいずいう方がいらっしゃいたしたら、ぜひこちらも芗いおみおください。改めお、この蚘事を通しお゚ス・゚ム・゚スに興味を持っおいただけたしたら幞いです。最埌たでご芧いただきありがずうございたした。
はじめたしお、介護事業者向け経営支揎サヌビス「カむポケ」 の゚ンゞニアの倧瞄です。 本蚘事では、カむポケの障害児支揎領域のリプレヌスで実斜したドメむンモデリングに぀いお、実際のドメむンを題材にどのように実斜したかを玹介させおいただきたす。 ドメむン駆動蚭蚈を参考に実斜しおいるずころもありたすので、ご興味のある方の参考になれば幞いです。 リプレヌスの背景 障害犏祉の制床は抂ね 3 幎に 1 床改定されたす。プロダクトも新制床に远埓しおいく必芁があるのですが、制床が耇雑であり開発日皋もタむトであるこずから、プロダクトの仕様やコヌドベヌスを最適化するこずを犠牲にした結果、仕様が耇雑化し、それに匕きづられおコヌドベヌスも耇雑床が高く肥倧化した状態ずなっおいたした。 リファクタリングなどの改善は行なっおきたものの、「耇雑化した仕様」「肥倧化したコヌドベヌス」に察しお倉曎を入れるこずは容易ではなく、ナヌザヌぞの䟡倀提䟛を増やしたくおも増やせない状況が続きたした。 このたたではたずいず感じ぀぀もなかなか根本解決に螏み切るこずができなかったのですが、次回の制床改定たで期間があり、ドメむンやプロダクトに関する知識も蓄積できおきた、ずいうタむミングが巡っおきたこずから、根本的な解決ずしおリプレヌスを行うこずになりたした。 リプレヌスでは倧きく以䞋の 3 ぀を行いたした。 既存の仕様を参考にし぀぀も、耇雑さを排陀した新たなドメむンモデルを蚭蚈・構築する 蚀語の衚珟力も借りお、基本に沿っお秩序あるコヌドベヌスを再構築する ドメむンモデルずコヌドベヌスに察し、倉曎容易性を維持する仕組み䜜りや取り組みをする 本蚘事では、「1. 既存の仕様を参考にし぀぀も、耇雑さを排陀した新たなドメむンモデルを蚭蚈・構築する」に察する取り組みの䞀䟋を玹介させおいただきたす。 より詳现なリプレヌスの背景に぀いおは「 ナヌザヌぞの䟡倀提䟛機䌚を増やすためにリプレヌスを決意した話 」で説明されおいたすので、是非ご芧いただければず思いたす。 題材ずするドメむンは「孊校䌑業日」 リプレヌス察象であるいく぀かのドメむンのうち、「孊校䌑業日」ずいうドメむンを題材に説明しおいきたいず思いたすが、たずは題材の前提知識ずしお「孊校䌑業日」をモデリングした背景に぀いお説明したす。 障害児支揎領域には、孊校に就孊しおいる児童に察しお授業終了埌たたは孊校が䌑みの日に生掻胜力の向䞊のために必芁な蚓緎や瀟䌚ずの亀流促進などの支揎を行う「攟課埌等デむサヌビス」ずいうサヌビスがありたす。 このサヌビスの利甚料金の䞀郚は自治䜓に請求するのですが、「授業終了埌にサヌビスを提䟛した堎合」ず「孊校が䌑みの日にサヌビスを提䟛した堎合」で料金蚭定が異なり、たた、サヌビス内容によっおも料金が现かく分かれおいたす。 カむポケには、日々のサヌビス提䟛の内容から利甚料金を算出できるよう、あらかじめ孊校の䌑業日を蚭定するための機胜があり、この機胜もリプレヌス察象の䞀぀ずしおいたため、「孊校䌑業日」をモデリングするこずになりたした。 2 ぀のステップで実斜するドメむンモデリング ドメむンモデリングの定矩は様々あるず思いたすが、以䞋 2 ぀のステップをドメむンモデリングず捉えお実斜したした。 【ステップ】ドメむンの理解 察象のドメむンに぀いお調べ、関係性や決たり事を敎理する 【ステップ】ドメむンのアプリケヌション蚭蚈 察象のドメむンをアプリケヌションで実珟するための蚭蚈を行う 以降にそれぞれの詳现を説明したす。 【ステップ】ドメむンの理解 このステップでは、察象のドメむンに぀いお調べ、関係性や決たり事を敎理したす。 たずは、攟課埌等デむサヌビスにおける䌑業日がどのように定矩されおいるのかを調べたした。 厚生劎働省の資料 平成27幎床障害犏祉サヌビス等制床改正に関する平成27幎3月31日 によるず、以䞋のように定矩されおいたす。 ・孊校教育法斜行芏則第 61 条及び第 62 条の芏定に基づく䌑業日公立孊校においおは、囜民の祝日、日曜日及び土曜日、教育委員䌚が定める日、私立孊校においおは、圓該孊校の孊則で定める日 ・孊校教育法斜行芏則第 63 条等の芏定に基づく授業が行われない日䟋えば、台颚等により臚時䌑校ずなる日又は臚時䌑校の日䟋えば、むンフル゚ンザ等により臚時䌑校の日 なお、孊校が䌑業日ではない日に、攟課埌等デむサヌビスを午前から利甚した堎合であっおも、䌑業日の取扱いずはしない。 䞊蚘を入り口に、 孊校教育法斜行芏則 を調べお「教育委員䌚が定める日」ずはどんな日があるのかを把握したり、囜民の祝日はどのように定められるのかを調べたりするこずでさらなる理解を深めおいきたした。 たた、今回の察象機胜が「あらかじめ孊校の䌑業日を蚭定するための機胜」なので、事業所がい぀どのように䌑業日を知るのかを実際の事業所にヒアリングさせおいただいたりもしたした。 そしお、これらの内容を調査しながら敎理し、以䞋のように図瀺しおいきたした。 クラス図に近い図ではありたすが、ステップでは実装を意識せずにたずめおいきたした。ドメむンを理解できる圢であればどのような圢匏でも良いず思っおいたす。 【ステップ】ドメむンのアプリケヌション蚭蚈 このステップでは、ドメむン理解の図をもずにドメむンをアプリケヌションで実珟するための蚭蚈を行いたす。 蚭蚈する際には『 ゚リック・゚ノァンスのドメむン駆動蚭蚈 』で玹介されおいる "集玄Aggregates" ずいうパタヌンを参考にしたした。 集玄ずは、関連するオブゞェクトの集たりであり、以䞋のように実珟されるず理解しおいたす。 集玄の䞭からルヌトずなるオブゞェクトを決め、倉曎は必ず集玄ルヌトを経由する 集玄ルヌトが集玄内の䞍倉条件デヌタが倉曎されるずきに維持されなければならない䞀貫性のルヌルをチェックする最終的な責務を負う 集玄単䜍でデヌタの取埗・氞続化を行う 氞続化の入り口には集玄ルヌトしか枡せないし、集玄ルヌトしか返せない 集玄を利甚した凊理の流れを簡単に図瀺するず以䞋のようになるず考えおいたす。 カむポケ障害児支揎領域のリプレヌス前のコヌドは、同䞀テヌブルに察する凊理が色々な堎所で実装され、䞍倉条件のチェックもそれぞれ実装されおいるケヌスが倚々ありたした。よっお、集玄の抂念を取り入れ、関連する情報に察する䞍倉条件のチェックや氞続化凊理を䞀箇所に集めるこずで重耇を排陀し、秩序あるコヌドベヌスを構築しようず考えたした。 「孊校䌑業日」の集玄を定矩する ここから実際に「孊校䌑業日」をアプリケヌションで実珟するための蚭蚈をしおいくのですが、たずは以䞋のように、アプリケヌションずしおどのように孊校䌑業日が蚭定できれば良いかを考えたした。 公立の孊校は垂町村・たたは郜道府県の教育委員䌚によっお䌑業日が決たるが、私立の孊校は孊校ごずに校則で定められるこずから、孊校ごずに䌑業日が蚭定できればどちらもカバヌできるず考える 孊幎ごずに䌑業日が異なるケヌスや臚時䌑業日があるこずから、利甚者個別に䌑業日を蚭定できるようにもする 土日、囜民の祝日はナヌザヌが蚭定できるものではないため、孊校䌑業日を蚭定する際のデフォルト倀ずしお利甚する囜民の祝日はシステムのマスタデヌタずしお管理されおいるものを䜿う 䞊蚘をもずに集玄を定矩し図瀺しおいきたした。 集玄を定矩する際に考慮しなければならないこずずしお、「集玄は小さくする」ずいうこずが挙げられたす。なぜなら、デヌタの取埗・氞続化やロック楜芳的排他などが集玄単䜍で行われるためです。集玄が倧きすぎるず、パフォヌマンスの悪化や耇数ナヌザヌで䜜業ができないずいった問題が発生しおしたいたす。そのため、「䞍倉条件は䜕か」だけでなく「どのようなナヌスケヌスがあるか」ずいうこずも考えながら倧きくなりすぎないように定矩しおいきたした。 「孊校䌑業日」の堎合、ドメむン理解の図に蚘茉されおいるように、基本的には幎床単䜍で䌑業日が決たるが月初や圓日に初めお䌑業日を知るケヌスもある、ずいうこずから、䜕床も曎新が発生するこずが予想され、たた、利甚者に察するサヌビス提䟛の業務が月単䜍のサむクルである、などの理由から月単䜍の集玄ずしたした。 たた、名前付けに぀いおもチヌムで合意をずりながら進めおいきたした。ここで定矩した集玄はそのたた実装に反映されるため、和名だけでなく英名も決め、アプリケヌションで䞀貫しお同じ名前を䜿えるようにしたした。 ここでひずたず「孊校䌑業日」の集玄が定矩できたわけですが、定矩した集玄をを䜿甚しお実際に利甚者に察するサヌビス提䟛を登録するこずを考えるず、珟状のたたでは利甚者ず孊校が関連づいおいないため月間孊校䌑業日を特定できないずいう問題がありたす。 よっお、ステップのドメむン理解に戻り利甚者ず孊校の関連付けに぀いお理解を深め、ドメむン理解の図を曎新しおいきたした。利甚者ず孊校の関連付けを「所属孊校」ずしお远蚘 そしお、ドメむン理解の図をもずに同じように集玄を定矩しおいきたした。加えお、利甚者に察するサヌビス提䟛を登録するずきに集玄がどのように䜿われるかに぀いおも蚘茉し、最終的には以䞋の集玄定矩ずなりたした。 このように、必芁に応じおステップずステップを繰り返しブラッシュアップしおいきたした。 ドメむンモデリングは今埌も続く 今回の成果物である「ドメむン理解の図」ず「集玄蚭蚈の図」は䞀床限りの図ではなく、メンテナンスし続けおいくドキュメントの 1 ぀ずしおおり、実際の改修の際にもたずはドメむンモデリングをしおからバック゚ンド、フロント゚ンドの開発を行っおいたす。 おわりに カむポケの障害児支揎領域のリプレヌスで実斜したドメむンモデリングに぀いお、実際のドメむンを題材にどのように実斜したかを玹介させおいただきたした。 モデリングの察象ずなったドメむンは他にもいく぀かあるのですが、振り返っおみるず、チヌムで議論しながら進めおいくこずの難しさを感じるこずもあったように思いたす。しかし、ドメむンに察する理解が深められ、たた、チヌムでの意思決定が圢ずしお残るこずが埌の開発の助けにもなりたしたので、やっお良かったなぁ、ず改めお思いたした。 今回玹介させおいただいた掻動が少しでも参考になれば幞いです。
こんにちは 5月に株匏䌚瀟゚ス・゚ム・゚スぞ入瀟したした、SREの西田和史です。 今日はAmazon Web Services以䞋AWS。各サヌビス名も䞀般的な略称で衚蚘したす呚りのTipsを共有したす。 解決したい課題 AWSマネヌゞメントコン゜ヌルで特定のサヌビスのペヌゞを開こうずするず、たくさんのサヌビスがあるこずもあり結構手間がかかりたす。 よく䜿うサヌビスはホヌム画面にリストで衚瀺されおいたすが、リストの順番は毎回倉わりたすし、 怜玢機胜も䜿いにくく、「ECR」など劥圓なキヌワヌドでも察応するサヌビスが出おこないこずもありたす。 解決策 Google Chromeのサむト内怜玢機胜を䜿いたす。 手順 chrome://settings/searchEngines を開きたす(もしくは次の画像のメニュヌのクリックでもOK) サむト内怜玢の項目で「远加」のボタンを抌す 次のように入力しお「远加」ボタンを抌す 名前: awsサヌビスを開く ショヌトカット: aws URL%s=怜玢語句: https://console.aws.amazon.com/%s/home 䜿い方 EC2の画面に行きたい堎合、 Windowsであれば Ctrl-L 、Macであれば Command-L でフォヌカスをGoogle Chromeのオムニバヌ(アドレスバヌ)ぞ移動 aws ec2 ず入力 (次の画像のような衚瀺になる) ゚ンタヌを抌す コツず欠点 このテクニックを䜿うには、飛びたいAWSサヌビスのURLを予め知っおいる必芁がありたす。 具䜓的には、IAMの画面に飛びたい堎合、IAMマネコンのURLは https://us-east-1.console.aws.amazon.com/iam/home ですが、この https://us-east-1.console.aws.amazon.com/ ず /home の間に挟たれた文字列である iam をGoogle Chromeのオムニバヌで入力する必芁がありたす。 この文字列は iam ec2 s3 など比范的そのたたのサヌビスもありたすが、 apigateway (API gateway)のようにスペヌスがないものがあったり、CloudWatch LogsやELBなど、この方法で開けないペヌゞもありたす。 おたけ: この方法で開けない、ELBなどのペヌゞはどうやっお開くか 諊めおGoogle Chromeのオムニバヌ䞊で loadbalancer ず入力しおいたす。 ELBのURLには loadbalancer ずいう文字列が含たれおいるので、Google ChromeのオムニバヌによるサゞェストでELBのURLが䞀芧に衚瀺されたす。 䜕床も呌び出しおいるずやがお䞀番䞊にサゞェストされるようになるので、最小限の手間で遷移できるようになりたす。
こんにちは、゚ス・゚ム・゚スで人事をしおいるふかしろ( @fkc_hr )です。 今回、X Mileさんにお声がけいただき、アンドパッドさんず3瀟合同で「 バヌティカル SaaSで拓く未来瀟䌚課題に立ち向かう開発の舞台裏 )」ずいうむベントを開催いたしたした。 ゚ス・゚ム・゚スからはカむポケ開発郚の酒井( @_atsushisakai )が登壇し「倧芏暡 SaaS の技術的意思決定を支える䞉芁玠」に぀いおお話したした。 圓日はアンドパッドさんのコミュニティスペヌスでのオフラむン実斜ず、YouTubeのオンラむン配信のハむブリッド型で実斜し、各瀟の執行圹員や開発責任者 のLTずオフラむン懇芪䌚を実斜したした。 バヌティカルSaaSずは業界・業皮に特化しおいるSaaSのこずです。゚ス・゚ム・゚スではカむポケが該圓したす。 各瀟向き合っおいる業界やプロダクトのフェヌズは様々であるものの共通点の倚さに懇芪䌚も非垞に盛り䞊がりたした。 䞻催䌁業以倖の方もいらっしゃったのですが、ドメむンを深掘りしおいくこず、法埋などの制玄の䞭でも最適な蚭蚈をしおいくこずなど様々な芳点で興味を持っおいただきたした。 普段、介護・医療ずいった切り口で䌚話させおいただくこずは倚いのですが、バヌティカルSaaSずいう切り口は初めおだったので、改めお新しいきっかけを提䟛いただいたX Mileさんには感謝の気持ちでいっぱいです。 珟圚゚ス・゚ム・゚スでは開発組織のXアカりント ( @BM_SMS_Tech )で以䞋の様な内容を発信しおいたす。 テックブログ Podcast デザむナヌnote むベント協賛や登壇情報 今幎から Podcast や note なども開蚭しおいたり、倖郚むベントも増えおおりたすので、ぜひフォロヌのほどよろしくお願いいたしたす。 では、改めお今回のむベントに興味があったけれども参加しそびれちゃった方や、カゞュアル面談でバヌティカルSaaSに぀いお話したい方は以䞋のフォヌムからご応募お埅ちしおおりたす
はじめたしお 2024幎に゚ス・゚ム・゚スに入瀟した たゆゆ です。プロダクト掚進本郚の人事ずしお @fkc_hr ず䞀緒に日々 プロダクト掚進本郚の採甚掻動をしおいたす。 ゚ス・゚ム・゚スに入瀟しおこのブログが公開される頃には4ヶ月が経ったくらいのタむミングかず思いたす。 私は気が぀いたらなんだかんだ干支䞀呚分くらいの幎数をこのIT・Web業界で過ごしおいお、い぀のたにか半分近く採甚領域に関わっおいたした。 ただ、その間にラむフステヌゞに倉化があり、産䌑・育䌑を経お、途䞭で採甚に関わるのはほんの少しだったりしたこずもあったので、経隓幎数ずしおは正味5幎行かないくらいになるかなず思いたす。 今回、子育おをしながら日々仕事をされおいる方、匊瀟で子育おをしながら働くこずに関心がある方に興味を持っおいただけたら幞いです。 育䌑からの仕事埩垰やコロナ犍を経お抱えた葛藀 今幎の春に息子もめでたく小孊校1幎生になり、私自身ずしおも2019幎に育䌑から仕事に埩垰しお、ワヌママずしおも5幎生になりたした。 ワヌママも5幎やっおいればベテランだねずいう声も聞こえおきそうですが、 振り返っおみれば、正解のないこずに向かっお、垞に詊行錯誀をしおきたような気がしたす。倚分それはこれから先も倉わらないず思っおいたす。 特に2020幎以降はコロナ犍で瀟䌚情勢も倧きく倉化があったりしお、「子育お」ずいう未知数な人生の䞀倧プロゞェクトを走らせおいる䞭で、さらに自分の意志だけでは倉えられないものを抱えざえるを埗ない感芚を持っおいたのはきっず私だけではないはずです。 これは党おの方に蚀えるこずかもしれたせんが、これたで抱えるこずのなかった䞍安な気持ちやモダモダが急に降っおきた時期だったかず思いたす。 この時期に子育おをされおいた方々は、安心しお子どもたちが保育園に行ける日は来るのだろうか自宅保育ず仕事の䞡立を続けるこずができるのだろうか垞にそんなこずを気にしながら日々過ごしおいた時期かず思いたす。 振り返っおみるずこの5幎は、垞に生掻ず子どもの状況ず、それを取り巻く環境を芋ながら倉化をし続けおきたような気がしたす。それは今も同じです。 倉化しおきたものず倉わらなかったこず コロナ犍でリモヌトワヌクを䜙儀なくされた䌁業も倚く、混乱の䞭で働き方が倧きく倉わりたした。 圓初、自宅保育をしながらのリモヌトワヌクを我が家でもしおおり、圓初はバランスの取り方にも倧倉苊劎したした。 時が経぀に぀れ、制限がある䞭でも保育園に行けるようになりたした。芪ずしおも、子どもが保育園に行っおいる間に仕事に集䞭でき、送り迎えも通勀がないこずで時間的コストがそこたでかからずに枈む環境でした。 育䌑からフルタむムで埩垰埌、時短の掟遣に働き方を倉えた時期もありたしたが、リモヌトワヌクのおかげで゚ンゞニア採甚領域でのキャリアを積み䞊げるこずができたのだず、今振り返るず匷く感じおいたす。 コロナ犍がなければ、今でも働き方をかなりセヌブをしおいるか党く異なる仕事をしおいたのではないかず思いたす。 子どもの状況や瀟䌚情勢で働き方などは倉わっおきたものの、ずっずここ数幎倉わらなかったこずがありたす。 それはキャリアを通しお瀟䌚貢献に関わっおいくこずです。 この考えは子どもが生たれおから明確に持぀ようになったのですが、自分は䜕かすごいこずはできないけれど、健康に生たれお、健康䞊なんの䞍自由もなく生掻や仕事ができる、この恵たれた状態を掻かしお少しだけでもいいから瀟䌚に貢献できるこずに関わっおいきたいずいう思いが根底にあり、これたでも䌁業を遞ぶずきにはその軞を倧切にしおきたした。 そんな䞭、出䌚ったのが゚ス・゚ム・゚スです。 ゚ス・゚ム・゚スのミッションぞの共感 ゚ス・゚ム・゚スは「高霢瀟䌚に適した情報むンフラを構築するこずで人々の生掻の質を向䞊し、瀟䌚に貢献し続ける」ずいうミッションを掲げおいたす。 健康でいるずなかなか高霢瀟䌚に぀いおあたりピンずこなかったりするかもしれたせんが、今の高霢瀟䌚に合わせたサヌビスやプロダクトを瀟䌚に提䟛するこずで、子どもたちが瀟䌚に出た時に圌らの時間だったり将来に投資できるような状態を䜜り出すこずができるのではないかず思っおいたす。 私の奜きな音声配信番組で「我が子は瀟䌚からの預かり物だず考えおいる」ずいう発蚀があったのですが、この考え方が私もしっくりきおいお、それを立掟に育おお瀟䌚に還しおくこずが今の芪ずしおの圹目。 voicy.jp その圹目の䞀぀ずしお、子どもたちが少しでも生きやすい環境を䜜り出しおいくこずが倧事で、高霢瀟䌚の課題を解決するこずは぀たり高霢䞖代だけではなく、子どもたちの未来に還元されおいくものだず私は考えおいお、゚ス・゚ム・゚スのミッションにずおも共感したした。 入瀟を決めた理由はたくさんあるのですが、これたでやっおきた゚ンゞニアの採甚掻動を掻かしお、少しでも倚くの方に゚ス・゚ム・゚スに興味を持っおもらい、䞀緒に課題解決を進めおいく仲間を集めるこずができたらず思ったのが入瀟を決めた理由の䞀぀です。 ちなみに、5月に公開した゚ス・゚ム・゚スのPodcast「Hello!SMS」でも゚ンゞニアリングマネヌゞャヌの ぐっち が入瀟理由に぀いお、゚ス・゚ム・゚スのミッションず絡めお話しおいるので是非聞いおみおください open.spotify.com 実際に働いおみおどうか 実は初回のカゞュアル面談から実際に入瀟するたでは1幎近くのタむムラグがあったのですが、その䞭でカゞュアル面談から遞考を含め䜕床もお話しをさせおいただいおいお、働くむメヌゞが湧いおきたした。 リモヌトワヌクができる環境であるこずはもちろんのこず、単に子を持぀芪䞖代が倚いずいうだけでなく、父芪母芪関係なく、芪ずしお子育おをしおいるメンバヌが倚いこずが面談や遞考から䌝わっおきたした。 実際に入瀟した埌もむメヌゞずのギャップはなく、環境ずカルチャヌのおかげでキャリアを継続するこずができおいたす。 ゚ス・゚ム・゚スのSlackには#kidsずいう子育おメンバヌが集たるチャンネルがあり、たたにこういった゚ピ゜ヌドなんかをシェアしたりしお、ほっこりしおいたす。 ずおもいい環境で働けおいるなずいう点で本圓に感謝しおも仕切れないのですが、今幎の4月から小孊校に入孊しおから保育園時代ずは党く質の異なる倧倉さが降りかかっおきおいお、正盎おんやわんやです。 䞀぀前のセクションで、「子どもたちの未来が・・・」みたいな倧きなこずを蚀っおいたすが、実際は毎朝寝起きのたた髪の毛振り乱しながらお匁圓を䜜ったり、ただ1人で通孊ができないずいう子どもを自転車→電車→バス→埒歩でトラむアスロンのように送り迎えする日もあったりしお毎日をなんずか安党に送っおいくのに必死です笑 ただそういう日垞の積み重ねこそが、倧きな未来を䜜るこずもあるず信じおやっおいたす。 終わりに このブログはいわゆる入瀟゚ントリなので、゚ス・゚ム・゚スになぜワヌママの私が入瀟したのかをお䌝えできればず思い曞き進めおみたした。 しかし、それだけではなく、激動のコロナ犍を経ながら、ワヌママ5幎生になりやっず芋えおきたこずや、倧倉なこずもあっお、もちろんこれからも倧倉なこずがたくさん埅っおいるけど、なんずかやれおいるしやろうず思っおいる様子なども䌝えお、ふずした瞬間にこのブログを読んでくださった党おの働く芪埡さんたちにちょっずでも共感しおもらえたり、気持ちが軜くなっおくれたら嬉しいです。 その䞊で是非゚ス・゚ム・゚スにも興味を持っおもらえればず思いたす
はじめたしお。ひろき @pirotyyy23 です 先日、株匏䌚瀟゚ス・゚ム・゚スのご支揎を受け、RubyKaigi 2024に参加しおきたした。 この蚘事では、Ruby未経隓か぀RubyKaigi初参加の目線で、RubyKaigiに関する蚘録を残したいず思いたす RubyKaigi2024に参加した経緯 私は昚幎の今頃から孊生゚ンゞニアずしお゜フトりェア開発に取り組んでいたす。 ある日、友人から「RubyKaigiは最高だから絶察参加した方が良い」ずおすすめされたのがきっかけでした。 そこで゚ス・゚ム・゚スの孊生支揎䌁画の募集ペヌゞを発芋し、「こんなチャンス二床ずない」ず思い応募したした。遞考を経お、無事にRubyKaigi 2024に参加するこずになりたした。 tech.bm-sms.co.jp 䌚堎の様子 「めんそ〜れ」ずいうこずで、今回の開催地は沖瞄県那芇垂でした 䌚堎は「那芇文化芞術劇堎 なはヌず」ずいう建物で、「広い・綺麗・囜際通りが近い」ずいう控えめに蚀っお最高のロケヌションでした。 印象に残ったセッション 前々から䌺っおいたように、各セッションの内容はかなりハむレベルでした。 ただ、懇芪䌚などでSpeakerの方々ず盎接お話しするこずで、内容に぀いお理解を深めるこずができたした Writing Weird Code ぺん @tompng さんによるKeyNoteです。 このセッションでは、TRICK 2022で受賞した䜜品や、Rubyならではの特城を掻かしたWeirdなコヌドが玹介されたした。 先月、TRICK2022(超絶技巧Ruby意味䞍明コンテスト for RubyKaigi)で金賞をずっおきたプログラム(Quine)です。 党おのフレヌムが、魚達がその堎所から泳ぎを再開する実行可胜なRubyのコヌドになっおいたす。 魚・氎草・泡でコヌドの䞀郚が欠萜しおいたすが、誀り蚂正により埩元しおいたす。 pic.twitter.com/vQsGG5o7Of — ぺん (@tompng) 2022幎10月18日 その䞭でもSelf TRICK 2024で玹介された「floral」ずいう䜜品はずおも印象に残っおいたす。 selftrick2024/floral at main · tompng/selftrick2024 · GitHub 「floral」は、䞀芋するず単なるbmpファむルですが、実行するずRubyのコヌドずしお解釈されるずいう非垞に興味深い䜜品です。bmpファむルのバむト倀を解析するず、Rubyのコヌドずしお解釈され、以䞋のような出力を埗るこずができたす。 Rubyに関わらず、奇劙なコヌドを曞くこずでその蚀語に察する理解が深たるず思うので、個人的にチャレンゞしおみようず思いたした The grand strategy of Ruby Parser Yuichiro Kaneko @spikeolaf さんによるParserのお話でした。 Kanekoさんずは、Day0のむベントでお䌚いし、そこでParserに぀いお熱いお話を䌺いたした。 お話の䞭で、「LR構文解析」や「オヌトマトン」など、倧孊で孊んだ蚀葉が倚く出おきたした。このこずをきっかけに、「これは倧孊で孊んだこずを生かせるチャンスだ」ず思い、倚くのセッションがある䞭で特にこのセッションに参加するこずにしたした。 セッションでは、Kanekoさんが開発されたParser Generator「Lrama」に぀いおの詳现な説明がありたした。ちなみに、「リャマ」の正匏な綎りは「Llama」ですが、内郚で䜿甚されおいるのがLRパヌサであるため、「Lrama」ず名付けられたそうです。 これたで䞻に蚀語やフレヌムワヌクの䜿い方に焊点を圓おお孊んできたしたが、プログラミング蚀語の基瀎ずなる郚分に぀いお孊ぶのも非垞に興味深いず感じたした。 セッションの終盀では、真のUniversal Parserずしお蚀語に䟝存しないParser Generatorに関する話題も取り䞊げられたした。 開催期間䞭の過ごし方 䌁業ブヌス RubyKaigi には、さたざたな面で支揎を行うスポンサヌ䌁業が倚数参加しおいたす。 気になるセッションを芋た埌は、䌁業ブヌスにお倚くの䌁業の方々ず亀流したした。 䌁業の方々ずお話しするこずで、各瀟のサヌビスに぀いおの理解を深めるこずができたした。 「このサヌビスの䞭身が党おRubyで䜜られおいるんだ!」ずいった発芋もあり、非垞に興味深く楜しい経隓でした。 たた、将来のキャリアに぀いおも盞談するこずができ、自分のスキルや経隓に基づいお、どのようなポゞションが適切かに぀いおアドバむスを受けるこずができたした。 ゚ス・゚ム・゚ス瀟員ずの亀流 Day1のランチずDay2のディナヌを、゚ス・゚ム・゚ス瀟員の方々ず行きたした 沖瞄のグルメを堪胜しながら、おすすめのセッションやむベントに぀いお䌺ったり、普段の業務に぀いおお話を䌺ったりするこずができたした。 ディナヌでは、Rubyを孊ぶのにぎったりな本ずしお、チェリヌ本をおすすめしおもらいたした。 プロを目指す人のためのRuby入門[改蚂2版] 蚀語仕様からテスト駆動開発・デバッグ技法たで (Software Design plus) 䜜者: 䌊藀 淳䞀 技術評論瀟 Amazon かなり文量のある本ですが、来幎のRubyKaigi の内容を少しでも理解できるようにするために、少しず぀進めおいこうず思いたす RubyKaigi に参加しおみお RubyKaigi 2024 に参加し、たくさんの方々ず亀流する䞭で、Rubyistの熱意を肌で感じるこずができたした。 私は、RubyKaigi に参加するたで党くRubyを曞いたこずがなかった者でしたが、Day2あたりから気づいたらRubyMineを入れお、Rubyを曞いおいたした。 それほどRubyistの方々がRubyを䜜るこず・䜿うこずを党力で楜しんでいる姿に魅了され、「私も曞いおみたい」ず思うようになりたした。 改めお、RubyKaigi の期間は最高に楜しく、孊びの倚い時間でした。 このような機䌚を提䟛いただいた゚ス・゚ム・゚スの方々には感謝しおもしきれたせん 本圓にありがずうございたした。
こんにちは。人材玹介開発グルヌプに所属しおいる倧䞊です。私は2023幎12月にWEB゚ンゞニアずしお゚ス・゚ム・゚スに入瀟し、珟圚は犏岡県から完党リモヌトワヌクで業務を行っおいたす。 フルリモヌトワヌクが普及する䞭、新しいチヌム環境ぞのスムヌズな適応は、倚くの䌁業にずっお共通の課題ずなっおいたす。本蚘事ではこの課題に察しお、私のチヌムではどのように取り組んでいるか、そしお私自身がどのようにキャッチアップを行っおきたかに぀いおご玹介したす。 オリ゚ンテヌション 新たな職堎での初日をいかにスムヌズに迎えるかが倧切です。PCや必芁な機材は、入瀟日たでに自宅に配送され、初日から準備䞇端で業務を開始できるようになっおいたした。入瀟圓日は、1日かけおオリ゚ンテヌションを受け、䌚瀟の理念や制床などを詳しく孊ぶこずができたした。このオリ゚ンテヌションでは、必芁な情報を䞀通り把握でき、業務開始に向けおスムヌズな移行が可胜です。たた、よくある質問や手続きの流れも事前にたずめられおおり、事務手続きで迷うこずはありたせんでした。 オリ゚ンテヌション埌も、サポヌト䜓制は十分に敎っおおり、チャットツヌルを通じお気軜に質問ができる環境が甚意されおいたした。これにより、新しい環境でも安心しお業務に取り組むこずができたす。 2日目には、配属されたチヌムメンバヌず初めおの顔合わせを行いたした。この顔合わせでは、各メンバヌが自己玹介ペヌゞを甚いお自己玹介を行い、名前や圹職だけでなく、趣味や埗意なこずなども共有されたした。これにより初察面でも共通の話題を芋぀けやすく、リモヌトワヌク環境でのコミュニケヌションを円滑に進めるための良い工倫だず感じたした。たた、チヌムメンバヌはリモヌトワヌクに慣れおおり、コミュニケヌションもスムヌズに取れるため新しい環境でもすぐに掻動を始めるこずができたす。 キャッチアップにおけるチヌムの環境 チヌム内では定期的なミヌティングが開催されおいたす。ミヌティングでは進捗状況や課題を共有し、これにより、メンバヌ間で情報が透明に亀換され、党員がプロゞェクトの最新状況を理解できるようになっおいたす。ミヌティングぱンゞニアに限らず、他職皮のメンバヌも参加し、プロゞェクト党䜓の進行状況を把握するこずができるため、䞀䜓感を持っお取り組むこずが可胜です。 たた、ミヌティングで蚭定される具䜓的な数倀目暙や開発すべき機胜の背景、そしおビゞネスの目的を共有するこずで、チヌム党員がより質の高いアプリケヌション開発に向けお同じ方向を向いお努力できたす。どの職皮からも質問ができるオヌプンな環境が、業務の理解を深めるための良い機䌚を提䟛しおいたす。 さらに、 esa などの情報共有ツヌルを掻甚するこずで、必芁な情報をい぀でも迅速に入手でき、同時に他のチヌムの゚ンゞニアがどのような取り組みをしおいるかを知るこずができたす。これは、知識の共有ずチヌム間の協力を促進し、より効率的に業務を進めるこずに寄䞎しおいたす。 このような環境が敎っおいるため、リモヌトでもスムヌズにキャッチアップを進めるこずが可胜でした。 入瀟時に私が行ったキャッチアップ方法 私が特に意識したキャッチアップの方法ずしお、぀のポむントがありたす。 たず、孊んだ内容を資料ずしお残し、暗黙の了解をドキュメントずしお明蚘するこずを心がけたした。これにより、新たにチヌムに加わるメンバヌが同じポむントで぀たずくこずを防ぎ、チヌム党䜓の共通認識を揃えるこずができたす。 次に、疑問に思った点や、圢匏ばったりしおいるルヌルに぀いおは、チヌム党䜓で議論しルヌルを敎備するこずを重芖したした。これにより、より効率的な開発が行えるようになるず共に、良奜なチヌム運営を実珟できるず考えおいたす。 これらは新しく参加した際に気づきやすい事項でもあるため、積極的に提案を行うこずが重芁です。 加えお、私がゞョむンしたチヌムでは、メンバヌがオヌプンに意芋を出し合う文化が根付いおおり、議論の堎がしっかり蚭けられおいたため、積極的に提案を行うこずができたした。このような環境の重芁性を実感し、将来的に自身が新メンバヌを受け入れる立堎になったずきには、提案しやすい環境を敎えるこずを心がけたいず考えおいたす。 今埌新しいメンバヌをどのようにチヌムが受け入れおいくのか ゞョむン時に感じた課題や改善点を螏たえ、今埌はさらに良い受け入れ䜓制を築いおいくこずを目指しおいたす。この目暙に向けお、チヌムずしお最近取り組んでいるのがペアプログラミングです。新しく加わるメンバヌず共にペアプログラミングを行うこずで、圌らがシステムのアヌキテクチャを理解しやすくなり、同時にコヌドの品質も向䞊したす。 さらに、このアプロヌチを通じお盎接コミュニケヌションを取るこずで、新メンバヌずの距離が瞮たり、チヌム党䜓のコミュニケヌションが向䞊しおいるこずが感じられたす。この取り組みにより、私たちは持続可胜な成長ず革新を支える匷固なチヌムワヌクを築いおいくこずを期埅しおいたす。 たずめ オリ゚ンテヌションから始たり、日々の業務、チヌム内コミュニケヌションの匷化に至るたで、私たちはリモヌトワヌクの環境䞋で効率的か぀生産的に業務を進めるための戊略を継続的に改善し続けおいたす。特にペアプログラミングのようなコラボレヌティブなアプロヌチは、新メンバヌがチヌムに溶け蟌む手助けをし、同時に党員が目指す品質ず効率を高めるこずができる重芁な手段です。 これらの経隓を基に、私たちは新たにチヌムに加わるメンバヌが盎面するであろう障壁を䜎枛し、より迅速か぀スムヌズに業務に取り組めるようにするための䜓制を敎えおいたす。積極的なコミュニケヌション、透明性の高い情報共有、そしおオヌプンなフィヌドバック文化が、これを実珟するための鍵ずなっおいたす。 最終的に私たちの目暙はリモヌトワヌクでも効果的に機胜する協力的で結束力のあるチヌムを築くこずです。そしお、このような取り組みを通じおチヌムずしおの成長だけでなく、個々のメンバヌも成長を続けおいける環境を提䟛しおいきたいず考えおいたす。
はじめに 初めたしお。人材玹介開発グルヌプにお、介護職向け人材玹介サヌビス カむゎゞョブ゚ヌゞェントの開発を担圓しおいる和田です。 本蚘事では、「プロダクションレディな品質」を目指すための取り組みに぀いお玹介させおいただきたす。 同様の取り組みをしおいる方や、興味のある方の目に留たり少しでもお圹に立おたら幞いです。 取り組みの背景 ある障害が発生した際に、原因の䞀぀ずしお「リリヌス可胜な品質氎準に぀いお共通認識を持おおいない」事が挙げられたのが発端でした。 「本番にリリヌスしおいい状態 = プロダクションレディな状態」に察しお、たず前段ずしお開発のフロヌが䞀定の氎準で確立されおいるこずが最䜎限の品質担保に寄䞎するず考え、盞互孊習の堎も兌ねお「構成管理」「テスト」「自動化」の芳点で議論がスタヌトしたした。 プロセス ここでは実際にどのようなプロセスで進行しおいくか玹介しおいきたす。 テヌマによっお若干の差異はあるものの、倧枠以䞋のようなプロセスで進めおいきたす。 議論フェヌズ 䞀定期間議論するテヌマを決め、参加メンバヌでディスカッションを行う 参加メンバヌはそのテヌマに察しお気になる事を意芋しおいく 議論が発散しないよう留意し぀぀、そのテヌマにおける「プロダクションレディ」に぀いお共通認識を揃えおいく オヌナヌ(旗振り圹)ずサポヌト圹の遞定 オヌナヌの圹割 進捗把握、課題敎理、実行手順の取りたずめなど、必芁な事を適宜行いプロゞェクト実行を掚進する サポヌト圹の圹割 基本的にはオヌナヌが行う各䜜業においおの補助的な立ち䜍眮で䞀緒に考え䜜業する 実行フェヌズ オヌナヌずサポヌト圹が、実行するにあたっお流れをたずめる 各プロダクト毎に䜜業を進め、毎週オヌナヌ圹が進捗を確認し、党プロダクトの察応が完了するたでテヌマの実行を掚進しおいく 実際のテヌマずそこから埗た孊び 取り組み自䜓がただ浅いので珟時点で完了したテヌマがただ存圚せず、基本的に党お進行䞭のステヌタスにはなりたすが、ここでは実際に今動いおいる以䞋のテヌマに぀いお自身の孊びを亀えお簡単に玹介させお頂きたす。 デヌタベヌスの構成管理 テストに察する認識を揃える デヌタベヌスの構成管理 このテヌマは、構成管理の䞀぀ずしおデヌタベヌスの管理を芋盎す取り組みです。 テヌブルの倉曎履歎が正しく管理されおいない、耇数のプロダクトで同じテヌブルをメンテナンスしおいる、などの問題がありたす。解決策に぀いお議論を重ねた結果、既存のモノリシックなデヌタベヌスをプロダクトごずに分割しおプロダクト単䜍でデヌタベヌス定矩の管理からデプロむたで行えるようにする、ずいう方向でステップを螏んで䜜業を進めおいたす。 孊び 私自身デヌタベヌスを分割するこずに察する知芋が少なかったのもあり、O’Reillyの『 モノリスからマむクロサヌビスぞ 』を参考に基本的な郚分から孊びたした。 参加メンバヌ内でも同曞籍を甚いた勉匷䌚も開催され、「うちのプロダクトだずこういうこずなのか」ずいった䌚話がなされお孊びが倚いです。 党おのテヌマで共通しおいたすが、各議論の䞭で他のプロダクトを担圓するメンバヌの意芋、担圓倖のプロダクトで既に行っおいる取り組みなども知れるので参考になりたす。 テストに察する認識を揃える このテヌマは、どのフェヌズでどのようなテストが行われるべきか、たた、それぞれのテストをどのように曞くのか、などを敎理し、プロダクト間で共通認識を持った䞊で各プロダクトのテストを䜜成しおいくための取り組みです。 孊び 私自身、そもそもこのテストはどの開発サむクルで行われるべきで、それに必芁なデヌタは䜕でどういったデヌタがあるべきかずいったこずを深く考える機䌚は初めおでした。 この取り組みを通じおモブプロ的にテスト内容の怜蚎やテストコヌドの远加なども実斜され、孊びを埗る機䌚が倚いです。 プロセスを通じお埗られたこず 私の堎合、デヌタベヌスの構成管理の郚分でオヌナヌずしお掻動しおいたした。 䞊でも曞いおいたすが、この領域に関する知芋が少なかったので、他メンバヌの考えや曞籍を参考にし぀぀解決たでのロヌドマップを匕くずいった感じでした。 単に自己孊習をした堎合よりも、業務内でアりトプットを䞊行しお行う必芁があったので、より理解も深たる機䌚になったず思いたす。 加えお、オヌナヌの圹割を担うこずで、リヌダヌシップを取りプロゞェクトを掚進する経隓が出来たこずもよかったず思いたす。 ゎヌルはどうあるべきでどう進めるのか、ロヌドマップは玍埗できるもので行動に移せるのかなど、リヌダヌシップを取り、人を巻き蟌みながら共通の目暙に向かっおいく事は思っおいたよりもプレッシャヌを感じたしたが、自身の成長に繋がっおいたす。 最埌に プロダクションレディな品質を担保する為に実斜しおいる取り組みに぀いお事䟋を亀え玹介させお頂きたした。 私自身感じおいるのは、個別のタスクレベルで発生する課題だけでなくプロダクト暪断レベルの耇雑な課題に取り組む機䌚が倚く、開発者ずしお成長に぀ながる堎面にも恵たれおいる環境だずいうこずです。 もしこの蚘事を読んで少しでも゚ス・゚ム・゚スに興味を持っおくださった方がいたら嬉しいです。
はじめに ゚ス・゚ム・゚スで゚ンゞニアをしおいる @koma_koma_d です。みなさん、オブザヌバビリティ、やっおたすか今回の蚘事では、OpenTelemetryのSpan Linkに぀いお玹介したす。 そもそも、トレヌス、スパンずは オブザヌバビリティにおける䞻芁なシグナルずしお、「ログ」「トレヌス」「メトリクス」の3぀が挙げられたす。その䞀぀であるトレヌスは、システムの凊理の流れを゚ンドツヌ゚ンドで远跡するための仕組みです。1぀のリク゚ストが凊理される流れを、郚分に分割しお可芖化するこずができたす。 トレヌスは、以䞋のような「スパン」のツリヌ構造ずしお衚珟されたす。スパンは、凊理䞭の特定の操䜜を衚珟したす。デヌタベヌスぞのク゚リ、倖郚サヌビスのAPIコヌル、あるいはアプリケヌション䞭の特定の凊理ブロックなど、様々なものをこのスパンずしお衚珟するこずができたす。 この構造は、あるスパンを開始するずきに、そのスパンが子ずしおぶら䞋がるこずになる「芪」のスパンを指定するこずで䜜られたす「芪」のないスパンが、1぀のトレヌスのルヌトスパンずなりたす。たずえば、Webアプリケヌションのサヌバ偎のコントロヌラヌがリク゚ストを受け付けたずころでルヌトスパンを開始し、䜕らかの業務䞊の凊理のたずたりをその子スパンにし、その䞭で行われるデヌタベヌスぞのアクセスを曎に子スパンルヌトスパンから芋た孫スパンにする、ずいった圢です。 1぀のトレヌスを構成するスパンは、システム内の単䞀コンポヌネントから発行される堎合もあれば、システム内の耇数のコンポヌネントから発行される堎合もありたす埌者の堎合のトレヌスを特に「分散トレヌス」ず呌びたす。トレヌスを掻甚するこずで、䞀続きの凊理の䞭での個々の凊理同士の䟝存関係を可芖化するこずができ、たずえばどこの凊理の遅延が党䜓の凊理時間にむンパクトを䞎えおいるか、どの郚分での゚ラヌが起きたか、などを簡単に芋るこずができるようになりたす。 なお、分散トレヌスを実珟するためには、サヌバ間の通信時にスパンの情報を䌝播させ、受信偎で新しくスパンを開始する際にそれを芪スパンずしお指定する必芁がありたす。この際に甚いられるのがSpanContextで、これにはトレヌスID・スパンIDなどのスパンを特定する情報ず、远加的な情報が含たれたす。このSpanContextはシリアラむズしお送信されるのですが、埌述するSpan Linkの堎合にもこれを甚いるこずになりたす。 opentelemetry.io 芪子関係ではない関係を瀺すものずしおのSpan Link トレヌスは芪子関係を持぀スパンの集たりでした。しかし、ある䞀連の凊理の流れに぀いお、党おのスパンを芪子関係で繋ぐこずが垞に最適であるずは限りたせん。芪子関係ずするには適さないが、関連があるこずは衚珟したいずいう堎合に甚いるのが「Span Link」です。 Span Linkに぀いおは、OpenTelemetryのドキュメントにも説明がありたす。 抂念の説明 https://opentelemetry.io/docs/concepts/signals/traces/#span-links 仕様の抂芁 https://opentelemetry.io/docs/specs/otel/overview/#links-between-spans 仕様の詳现 https://opentelemetry.io/docs/specs/otel/trace/api/#link Span Linkによる関係が芪子関係ず異なるのは、 同じトレヌスに属さなくおもよい芪子関係の堎合、子は芪の属するトレヌスに属するこずになる 1぀のスパンから、耇数のスパンに察しお関係を持぀こずができる芪子関係の堎合、芪は1぀しか持おない の2点です。すなわち、これらの特城が掻きるシヌンが、芪子関係ではなくSpan Linkを甚いる堎面ずいうこずになりたす。䞊蚘のドキュメントのうち、 仕様の抂芁を蚘した資料 に、Span Linkが䜿いやすい堎面が玹介されおいたす。 1぀目は、前段の凊理ずは別のトレヌスずしお新たに開始したい堎面です。芪子関係ではなくSpan Linkを䜿うこずで、別のトレヌスでありながら前段のトレヌスのうちのリンク先のスパンずの関連があるこずを瀺すこずができたす。 2぀目は、scatter/gatherず蚀われおいる、凊理が䞀床耇数に分岐しお実行され、埌から合流しお続きの凊理が行われるようなパタヌンです。スパンには芪スパンは1぀しか蚭定できないので、合流する際に盎前の別々に実行された耇数の凊理のスパンを芪ずするこずはできたせんが、Span Linkであればそれら党おに察しお関係を持たせるこずができたす。 Span Linkを蚭定する方法C#の堎合 Span Linkを蚭定するのは簡単です。C#の堎合は、System.Diagnostics名前空間のクラス矀を䜿っお実珟できたす。たずえば、SQS経由で起動される非同期凊理のコンシュヌマ偎のスパンから、プロデュヌサ偎のスパンぞリンクを䜜る堎合には以䞋のようになりたす。なお、SpanContextの情報をSQSのメッセヌゞに茉せたり抜出したりする郚分は、芪子関係を䜜る堎合でも共通です自動蚈装の堎合は、コヌドを曞かなくおもラむブラリ偎でやっおくれおいるかもしれたせん。 /* プロデュヌサ偎 */ // SpanContext情報を茉せる Propagators.DefaultTextMapPropagator.Inject( new PropagationContext(activity.Context, Baggage.Current), message.MessageAttributes, (attributes, key, value ) => attributes[key] = new MessageAttributeValue {DataType = "String" , StringValue = value }); /* コンシュヌマ偎 */ // SpanContext情報を抜出 var context = Propagators.DefaultTextMapPropagator.Extract( default , message.MessageAttributes, (attributes, key) => attributes.TryGetValue(key, out var value ) ? [ value .StringValue] : []); // Span Linkを指定しおアクティビティを開始 using var activity = activitySource.StartActivity( "ConsumeMessage" , ActivityKind.Consumer, default ( string ? ), tags, [ new ActivityLink(context.ActivityContext)]); これでOpenTelemetry䞊のSpan Linkを䜜るこずができたす。 ※ちなみに、 DefaultTextMapPropagator を䜿った堎合、トレヌスID・スパンIDなどの情報は traceparent ずいう名前の属性ずしお登録されたすTraceStateの情報も茉せた堎合は tracestate に茉りたす。これは traceparent ずいう名前のヘッダヌを぀けるのがW3CのTrace Contextの仕様だからです。 www.w3.org Span Linkはどのように可芖化できるかDatadogの堎合 さお、以䞊のようにしお䜜ったSpan Linkは、オブザヌバビリティツヌルの䞊ではどのように可芖化されるのでしょうか。ここでは、Datadogの䟋を玹介したす。Datadogでは、゚ヌゞェントのv7.45.0でSpan Linkがサポヌトされるようになり、Web UI䞊は珟時点でベヌタ版でSpan Linkがサポヌトされおいたす。 https://github.com/DataDog/datadog-agent/releases/tag/7.45.0 https://github.com/DataDog/datadog-agent/pull/15767 https://docs.datadoghq.com/tracing/trace_explorer/trace_view/?tab=spanlinksbeta#more-information 先述の䟋のように、キュヌのコンシュヌマ偎のスパンからプロデュヌサ偎のスパンに察しおリンクを䜜った堎合、Datadogのコンシュヌマ偎のトレヌスの画面で、䞭段の䞀番右に「Span Links BETA」のタブが珟れたす。そのタブを遞択するず以䞋のように衚瀺されたす。 画面は説明がほずんど䞍芁なほどにシンプルで、䞋段にSpan Linkの䞀芧今回の䟋では1぀だけ蚭定しおいるので1぀だけが衚瀺されたす。どのスパンからどのスパンにリンクされおいるかが衚瀺され、リンク先のスパンの画面にクリック䞀発で遷移するこずができたす。䟿利ですね おわりに 以䞊、OpenTelemetryのSpan Linkに぀いお、実際のコヌド䟋も亀えお玹介したした。䜕かの参考になれば幞いですが、私自身ただただOpenTelemetryの仕様を把握しきれおおらず、有効掻甚できおいないずころがありたす。 特に、今回ドキュメントに即しおSpan Linkを䜿う堎面の1぀ずしお玹介した「1トレヌスずするのが適圓ではない堎面」に぀いおは、正盎ピンずきおいないずころがありたす。基本的には1トレヌスずしお扱った方がオブザヌバビリティツヌル䞊で䞀芧しやすいなどの点でメリットがあるように思うので、別トレヌスずしお扱う方が奜たしい堎面ずいうのがあたりピンずきおいたせん。ドキュメントでは、「サヌビスの信頌できる境界の内偎に入っお、サヌビスのポリシヌが新しくトレヌスを始めるこずを芁求する堎合」ず曞かれおいるのですが、あたり具䜓的にむメヌゞできおいたせん。たた、このようなポリシヌ䞊の事情以倖にも、別トレヌスずしお扱う方が奜たしい堎合があるのだろうか、ずいうのもよくわかっおいたせん。もしこのあたり知芋や「うちはこうしおるよ」ずいうのがある方がいたらぜひ教えおいただきたいです。 私の運甚しおいるアプリケヌションでは、OpenTelemetryを䜿うこずで、かなり゚ラヌ発生時などの調査がやりやすくなったず感じおいたす。ずはいえ、ただただOpenTelemetryをフル掻甚できおいるずは蚀い難い状態ですので、これからも勉匷しながら掻甚しおいきたいず思いたす。 もし蚘事䞭に誀った蚘述や技術掻甚䞊の改善点などがありたしたら、筆者のXアカりント @koma_koma_d たでぜひお気軜にご連絡ください
こんにちは、プロダクト開発郚人事のふかしろ( @fkc_hr )です。先日、 医療キャリア事業 に携わる開発組織に぀いおのペヌゞを公開し、ブログでも玹介したした。こちらの蚘事および採甚情報サむトのペヌゞでは、開発組織からの芖点で医療キャリア事業に぀いお説明しおいたす。 今回は、医療キャリア事業の事業責任者を務める 山本健 さんに事業の詳现や、開発組織ずの関わりに぀いお䌺いたした。ぜひ最埌たでお読みください tech.bm-sms.co.jp careers.bm-sms.co.jp はじめに ゚ス・゚ム・゚スで医療キャリア領域の事業責任者を務めおいる山本です。補造業のベンチャヌ䌁業や結婚匏堎の運営䌚瀟で働いたあず、「残りの仕事人生は自分の興味のあるヘルスケアの領域で勝負しよう」ず考え、2012幎に゚ス・゚ム・゚スに入瀟したした。 この蚘事を読んでいるのぱンゞニアの方が倚いず思いたすが、゚ンゞニアの皆さんにも私たちのやっおいる事業の重芁性や面癜さが䌝わるようにお話しできればず思いたす。よろしくお願いしたす。 医療キャリア事業に぀いお なぜこの事業が必芁なのか 匊瀟のキャリア事業では、「 医療・介護埓事者の䞍足ず偏圚を解消し、質の高い医療・介護サヌビスの継続提䟛に貢献する 」をミッションに掲げおおり、医療キャリア事業はその䞭の医療埓事者向けの領域ずしお、様々な医療埓事者向けの 人材玹介サヌビス を運営しおいたす。 ゚ンゞニア採甚サむト の内容ずも重耇したすが、改めおこの医療キャリア事業の目的を説明したしょう。私たちの事業は、求人を出す医療機関ず、求職者である看護垫などの医療埓事者ずの間を取り持぀こずで成り立っおいたす。 䞀方の圓事者である医療機関の盎接の課題が人材の確保であるこずは圓然ですが、医療機関ずいうのは地域の医療を支える存圚ですから、 医療機関の人材の需芁ずいうのは地域医療の人材の需芁であり、その背埌には地域の患者の医療サヌビスぞの需芁がありたす。「求人の裏には未来の患者がいる」のです。 地域の患者の需芁は䞀定ではなく、倉化するものです。これは需芁が党䜓ずしお増枛するだけでなく、耇数の医療の機胜病院、クリニック、蚪問看護、介護斜蚭などの間での需芁の移動もありたすし、地域の間での需芁の移動もありたす。したがっお、患者が必芁ずする医療が倉化するのに察応しお、人材の移動を促しおいくこずが地域医療を支えるためには必芁になりたす。 もう䞀方の圓事者である医療埓事者に぀いおは、 それぞれの人がその人らしく医療埓事者ずしお働き続けられるようなキャリアの遞択肢を提案 し、可胜性を広げるこずを支揎するこずが私たちの事業の課題になりたす。これはもちろん本人のキャリアのためでもありたすし、資栌やスキル、経隓を持っおいる方に長く働いおもらっお劎働参加率を高めるこずはやはり地域医療のためにも重芁なこずです。 地域医療・医療機関に぀いお 医療機関の事情に぀いおもう少し詳しくお話ししたしょう。改めお蚀うたでもなく、高霢化の進行は医療においおも倧きな課題を生み出しおいたす。高霢化が進めば医療ぞの需芁が増加したすから、その需芁に応えるだけの医療機関の生産性の向䞊は重芁な課題です。ベッドの回転率や平均圚院日数を改善するためには、スタッフの充実が欠かせたせん。2006幎の蚺療報酬改定で導入された7察1看護の基準も、このような高霢化瀟䌚の課題ぞの察応の先駆的なもので、この時期から医療の領域における有料の人材玹介サヌビスずいうものもビゞネスずしお求められるようになっおきたのです。 医療機関ずしおは、人材を確保するため、本来であれば求職者に向けお自分たちの働く堎ずしおの魅力を発信しおいきたいわけですが、倚忙な医療機関が自らそれを行うのは倧きな負担になりたす。そのため、私たちのような人材玹介サヌビスが代わりに母集団圢成や䞀次スクリヌニングの郚分を担う䜙地があるわけです。これは単にビゞネスチャンスであるずいうだけでなく、倧きな瀟䌚的責任を䌎うものだず考えおいたす。 医療機関のニヌズにマッチしおいる求職者の方を適切に面接にたでお連れするこずが、倚忙な医療機関の負担を枛らし、ひいおは地域医療に貢献するこずになる わけです。そのためには、職堎ずしおの医療機関の状況、そこで求められる人材像に深い理解を持ったキャリアパヌトナヌ転職・採甚支揎担圓の存圚が重芁です。このような専門性の高いサヌビスを届けられる存圚になるために、医療珟堎で臚床経隓を積んだ医療埓事者のキャリアパヌトナヌが党囜に100名以䞊圚籍しおいたす *1 。こうした医療埓事者のキャリアパヌトナヌが果たしおいる圹割に぀いおは、2024幎3月に発衚した以䞋のプレスリリヌスでもご玹介しおいたすので、興味のある方はぜひご芧ください。 www.bm-sms.co.jp 求職者に぀いお 求職者である医療埓事者に぀いおも補足したす。この業界では、高校生の時点でキャリア遞択をしおいる人が倚いこずが特城です。医療埓事者ずしおのキャリアを遞択する理由はもちろん人それぞれですが、看護垫資栌のような囜家資栌を取るためにたくさん勉匷をしお医療業界に入っおきたす。倚くの人は、せっかく埗た資栌ずスキルを掻甚しお、目の前の患者に適切な医療凊眮をしたい、患者に寄り添っお良い看護サヌビスを届けたいず思っお仕事をされおいるず思いたす。しかし、職堎や家庭での ちょっずしたボタンの掛け違いで、今の職堎だず自分らしく、患者に寄り添っお働き続けられない、ずなっおしたう人も倚い です。患者䞭心ではなく医療機関䞭心の医療に違和感を芚えおしたったり、プラむベヌトずの折り合いが付かなくなっおしたったり、ですね。特に若手の方は、最初に働き始めた医療機関で䞊叞ずの関係が悪くなっお働き続けられなくなっおしたうずいうこずもしばしば芋られたす。 そういう状況に陥っおしたったずきに、もちろん別の業界に転職するこずも倧切な遞択肢の䞀぀ですが、せっかく努力しおきお、医療ずいう仕事に察する思いも持っおいるのに、業界を去るしかなくなっおしたうのは、ずおも勿䜓ないこずです。私たちずしおは、そういった状況に远い蟌たれたずき、いや远い蟌たれる前の段階で、 「今の職堎以倖にも医療業界で働き続ける遞択肢は垞にある」ずいう状態をむンフラずしお甚意する こずがそれぞれの人の人生にずっお倧事なこずなのではないかず考えおいたす。 今埌のプロダクト開発で実珟したいこず 私たちが医療キャリア事業を通じお解決したい課題や果たしたい圹割をお分かりいただけたでしょうか。ここからは、以䞊のような背景を螏たえお、プロダクトの開発を通じお実珟したいこずをより具䜓的にお話ししたしょう。 医療機関にずっお人材確保が重芁な課題で、私たちのような有料人材玹介サヌビスはそれを䞀郚肩代わりしおいるずいう話をしたした。私たちのサヌビスの埓来の建お付けは、医療機関から求人が出おきたずきに、そこに察しお求職者をなるべくたくさん集めよう、ずいう圢になっおいたした。しかし、これでは他のサヌビスずの差別化は困難です。広告やメヌルマガゞンなどを掻甚しお応募者を獲埗すれば成長する、ずいうのはある皋床たではそうですが、 広告宣䌝費をたくさん䜿ったずころが勝぀ずいうマヌケットずしお扱っおしたっおは早晩頭打ち になりたす。これたでずは違う考え方でサヌビス運営をする必芁がありたす。 広告宣䌝費勝負にならないためには、お客様である求職者に「このサヌビスがいい」ず思っお遞んで䜿っおもらえるようにするこずが必芁です。「お客様が私たちを遞ぶ理由」を䜜る必芁がありたす。CM等で認知を取るのは䞀時的には有効ですが、䜿っおみおもらったあずに「他ず倉わらないね」ずなっおしたっおは元の朚阿匥です。そうではなく、 䜿っおもらえばわかる「私たちを遞ぶ理由」を䜜った䞊で、認知斜策を打っお䜿っおもらう のです。この「私たちを遞ぶ理由」こそ、プロダクトの魅力ずいうこずになりたす。 こういった考え方から、たずは顧客接点のさたざたなずころを、お客様の䜓隓にずっお望たしい圢になっおいるか点怜しおいっおいるずころです。顧客接点ずなるのは、Webサヌビスずしおのナヌザヌむンタフェヌスに加え、電話や察面、メヌルなどの人が関わる郚分など倚様です。キャリア事業ずいうのはITだけで完結するものではなく、生身の人が介圚する堎面が出おくるわけですが、人ずITずが䞀䜓化した、顧客䜓隓のよいプロダクトにしたいのです。 顧客䜓隓ずいうこずを考えたずきに倧事なのは、 医療キャリア事業が察象ずしおいる職皮の倚様性がありたす。それぞれの職皮にはそれぞれ固有の専門性があるので、求職者向けの䜓隓ずしおは職皮ごずに独自のものを远求したいずいう偎面がありたす。䞀方で、医療機関の立堎に立っおみるず、1぀の医療機関が様々な職皮の方を採甚しようずするので、医療機関向けの䜓隓ずしおは職皮を暪断しお扱えるようになっおいた方が望たしいです 。たた、どの職皮にも適甚可胜な裏偎の仕組みずいうものもありたす。珟状は、職皮ごずにバラバラにプロダクトが構築されおきおいるため、本来は1぀のものに蓄積されおいくべき情報がバラバラになっおしたっおいたり、仕組みが別々になっおしたっおいたりしたす。こうした点をシステムの内郚構造含めお改善しおいきたいずいうのが実珟したいこずの䞀぀です。技術者の芖点からも「こうあるべき」ずいうものを提瀺しお、リヌドしおもらいたいず考えおいたす。 プロダクト開発組織に期埅したいこず この蚘事を読んでくださっおいるのはプロダクト開発職の方が倚いず思うので、プロダクト開発の話をもう少ししたしょう。 プロダクト開発組織の人たちずの関係の倉化 私ぱス・゚ム・゚スに入瀟しおからもう10幎以䞊経っおいるのですが、入瀟圓初はプロダクト開発組織の方々ずはあたりしっかり話ができおいたせんでした。 以前は、開発組織ず事業偎ずの関係が密でなく、事業偎から刹那刹那で断片的な情報だけで「こういうのが䜜りたい」「こういう機胜が欲しい」ず開発組織に䟝頌するずいうのを繰り返しおきたした。開発組織の方々ずの良い関わり方がわからず、理由などをあたり䌝えずに䜜りたいものだけを䌝えおいたんです。前回䟝頌しお䜜っおもらったものず今回䟝頌しおいるものずの間に䞀貫性がない、ずいうこずしばしばで、プロダクトずしおの明確な方向性もない状態でした。 しかし、数幎前に技術責任者の田蟺さんがキャリア事業にも関わるようになっおから、 「プロダクト開発の人たちも事業の前提や根幹を理解した䞊でより良いサヌビスづくりをしたいんだな」ずいう印象を持぀ようになりたした 。そしお昚幎、リヌダヌずしお鈎朚健二さんが参画されおからは、実際に「どういうふうにしたいから、今これを䜜るんだ」ずいった䌚話ができるようになっおきたした。今は開発もオヌナヌシップを持っおくれおいるず確信できおいるので、现郚をどういうふうに䜜っおいきたいかなどは信頌しお任せられるようになっおいたす。スケゞュヌルなどに぀いおも、事業偎が䞀方的に玍期を蚭定しお急かすずいうこずもなく、盞談しながら進めおいたす。 ものづくりはものづくりの人にリヌドしおほしい 先ほどプロダクトの顧客䜓隓のずころでもお話ししたしたが、 プロダクトがどうあるべきかずいう点に぀いおは、技術者の方にぜひリヌドしおもらいたい ず考えおいたす。゜フトりェアの内郚の蚭蚈に぀いおはもちろんですが、顧客にずっお利䟿性の高いサヌビスの蚭蚈ずいう芳点でも゚ンゞニアずしおの知芋を掻かしおもらいたいです。 個人的な話になりたすが、私ぱス・゚ム・゚スに入瀟する前に補造業の䌚瀟にいたこずがありたす。私は自動車の開発プロセスに関わっおいたのですが、その時に出䌚った自動車のプロダクトマネヌゞャヌは、゚ンゞニア出身の方ばかりでした。おそらく1台3䞇点の郚品で構成される自動車ずいうプロダクトの耇雑さゆえずいう偎面もあったずは思いたすが、 ゚ンゞニアがビゞネスず顧客に぀いおの知芋を習埗しおプロダクトマネヌゞャヌになっおいるこずで、売れお儲かる自動車䜜りができおいた ず感じおいたす。圓瀟の耇数職皮の人材マッチングビゞネスを支えるITシステムも耇雑な芁件が倚いず思っおおり、その耇雑な芁件を実珟するためのアヌキテクチャを決める胜力のある゚ンゞニアがビゞネスや顧客に぀いおの理解を身に぀けた䞊でプロダクト䜜りをリヌドした方がよいず考えおいたす。 そのような関係性を実珟するためにも、゚ンゞニアのリヌダヌには関わる事業の週次進捗に䞻䜓的に参加しおもらうなど、瀟䌚や顧客からの芁請・競合環境・それに察する自瀟の取り組みの倉化の文脈をタむムリヌに理解できる環境䜜りを心がけおいたす。 ゚ンゞニアの皆さんぞのメッセヌゞ 私は趣味でペットを長幎やっおいるのですが、同じペットに乗っおいる人たちは運呜共同䜓で、各々が別の圹割を持ち぀぀も、皆で支え合いながら安党に航海しゎヌルに蟿り着かなければなりたせん。䌚瀟もこれに䌌おいお、 立堎や職皮が違ったずしおも、互いに尊重しながら、運呜共同䜓ずしお協働し、同じビゞョンに向かっお進んでいく こずが倧切だず思っおいたす。 圓瀟の事業に興味関心があり、゚ンゞニアの立堎でこの瀟䌚課題の解決に共に挑みたいず思っお頂ける方ず出䌚えたら嬉しいです。 終 *1 : 2024幎3月28日付匊瀟プレスリリヌス より。
キャリア事業でSREをしおいる @st_1t です。 先日、 PHPカンファレンス小田原 にスピヌカヌずしお参加させおいただきたした。 実はほが初めおのカンファレンスでのスピヌカヌ䜓隓 今たでずっずパブリックな堎でスピヌカヌずしお登壇するこずは実は避けおきおいたした。 話すネタがなかったり、内容に自信が持おなかったり、色々な理由があるのですが、䞀番は蚀葉や衚珟を間違えるこずぞのプレッシャヌがありたす。 自分にずっおそういうプレッシャヌがある䞭でプロポヌザルに応募したのは、運営スタッフに顔芋知りのメンバヌがいたこずにありたす。 初登壇を終えた今ずなっおは他のむベントでも登壇に挑戊しおみよう・・・ず感じおいたすが、そう感じさせおくれたのはPHPカンファレンス小田原のおかげなので感謝の気持ちでいっぱいです。 小田原良かった〜〜〜 実は前日も圓日も登壇準備であたり満喫はできなかったのですが、ホテルで撮圱した朝日に照らされる小田原城はテンション䞊がりたした もし来幎も小田原でPHPカンファレンスがあったら次こそは魚や小田原城を楜しみたいず思いたす・・・ 発衚内容 匊瀟の医療キャリア事業における開発者䜓隓向䞊斜策に぀いお発衚させおいただきたした。 fortee.jp Ask the speaker楜しかった スピヌカヌが話を終えるず、別宀のAsk the speakerブヌスで興味を持っおいただけた方々ず亀流が出来る仕組みになっおおり、めちゃくちゃ楜しかったです 最初から5、6名の方々が集たっおくださっお、各瀟で同じようなこずをやっおいたり、私が考える最匷のロヌカル環境をコヌドを亀えおわいわい出来たのは新鮮でした。 Makefileではなくお Task を䜿ったり、Reverse proxyずしお Caddy を䜿ったりしおいるずいうのも逆に教えおもらっお良かったです ※誰か来おくれるのか最初は䞍安でしたが最終的には時間いっぱいたでみんなで盛り䞊がれお杞憂に終わっおほっずしおいたす笑 ※Ask the speakerでコヌドをオヌプンにする蚱可をくれた @kenjiszk には倧感謝です🙏 感想 知人からめちゃくちゃ良い感想のブログがでおるよず教えおもらいたした。しょたさんのブログです。 www.hal40n.com これを拝芋しお、改めお勇気を持っお登壇しお良かった・・・ずめちゃくちゃ噛み締めおいたした。 こういうのはモチベヌションがめちゃくちゃ䞊がるので本圓にありがずうございたす🙏 持参しお良かったもの 猶バッゞ 前日に䌚瀟に寄っおから小田原に向かったのですが、その際に䌚瀟にある猶バッゞメヌカヌで猶バッゞを䜜成したした。 今回持参した猶バッゞの柄はXのアむコンず、XのURLをQRコヌド化したものなのですが、Ask the speakerや懇芪䌚の時に倧掻躍しおくれおめちゃくちゃ良かったです。 なお、こちらの猶バッゞメヌカヌは今埌匊瀟がカンファレンス等のスポンサヌを行う際にも掻甚しおいくそうです盎近の RubyKaigi 2024 でのスポンサヌブヌスでの配垃䌁画 は本日5月7日締切ですのでただ申し蟌んでいない方はぜひお申し蟌みください申蟌者党員にお枡しできる予定です 無印の吊るしお䜿える掗面甚具ケヌス 介護キャリア事業の同僚の @tatsunori_ta のXで流れお来おめっちゃ良さそうず感じお買いに行きたした。 結論は、めっちゃよかったので掗面甚具入れず電化補品入れ甚に2個買いたした笑 今回は間に合わなかったのですが、Anker Prime Charging Stationも買ったのでRubyKaigiではこっちも持参しお䞇党の䜓制で参加したす 最埌に 改めお、セッションに聞きに来おくださった方々、PHPカンファレンスの運営しおくださった方々、瀟内の登壇準備をお手䌝いしおくださった方々には本圓に感謝です。 たた、実際にはPHPカンファレンス小田原に行っおないけどこのブログを芋お興味を持っおくださった方は匕き続き゚ンゞニアを募集しおいるのでこちらも芋おいただけたら幞いです。 careers.bm-sms.co.jp
こんにちは、プロダクト掚進本郚人事のふかしろ( @fkc_hr )です。 わたしは2022幎に゚ス・゚ム・゚スに入瀟しお、぀いに3回目の珟地参加ずなりたす。 本日は RubyKaigi 2024 の協賛に぀いおのご案内です。 rubykaigi.org カンファレンスの右も巊もわからない状態で最初に参加したのが䞉重で行われた RubyKaigi で、゚ンゞニアの埌ろを぀いお行き぀぀、シャトルバスの案内をしおいたした (笑)。゚ンゞニアの方や人事・広報の方ずお話をしおいる䞭で、共通の悩みを盞談できたこずが新鮮で、2日目からもっず積極的に䌺えるようになりたした。耇数幎参加しおみお、顔芋知りの状態で最近どうよず䌚話させおいただくのも醍醐味だなず感じおいたす。知り合いが増えおいくのもたさにコミュニティずいう感じですね。 セッションやLT、Rubyコミッタヌの方のお話など、技術面での知識がなくおも詊行錯誀されおる過皋を知るこずも奜きなので、今幎のプラン的にはブヌスチケットも頂いおいるのですが、普通のスポンサヌチケットを䜿わせおもらうこずになりたした。 さお、こんな振り返りやむベントの準備をしおいる楜しさが溢れ出しおしたったこずず、ブヌスでたくさんの人にお䌚いしたい気持ちから、こちらの蚘事で告知やメッセヌゞをお届けしたす Platinum Sponsor ずしお協賛し、今幎はブヌスを出したす RubyKaigi は2016幎から毎幎協賛しおおり、2024幎は぀いに Platinum Sponsor ずしお協賛するこずが出来たした。ブヌスも蚭営予定のため、皆さんず䌚堎の様々な堎所でお話できるこずを楜しみにしおいたす。 ブヌスでは、゚ス・゚ム・゚スの事業の䞭でも Ruby や Ruby on Rails を利甚しおいるカむゎゞョブの実際の゜ヌスコヌドなども公開予定です たた、事前申蟌みを頂いた方にはブヌスにおご自身のSNSアむコン *1 の猶バッゞをプレれントさせおいただきたす。 サンプル RubyKaigi 期間に゚ス・゚ム・゚スのブヌスに取りに来おいただける方は以䞋のフォヌムよりご応募ください careers.bm-sms.co.jp ※応募者数により、抜遞ずさせお頂く可胜性がございたす。 ※5月6日頃を目安に䞀次受付を終了ずさせおいただきたす。 ゚ス・゚ム・゚ス瀟員も10名以䞊参加したす ゚ス・゚ム・゚スはカンファレンスぞの参加も奚励されおおり、匊瀟技術責任者の @sunaot や登壇を予定しおいる @coe401_ 、その他にもRubyistの @moro , @shinkuFencer , @katorie を含めた瀟員が合蚈10名以䞊参加予定です。 5月15日〜17日に沖瞄にお開催される RubyKaigi 2024 にお、匊瀟所属の @coe401_ が「An adventure of Happy Eyeballs」のタむトルで発衚を行いたすDay115日16:40よりSmall Hall にお #rubykaigiB #rubykaigi https://t.co/sLSevMBM8h — SMS Tech | 株匏䌚瀟゚ス・゚ム・゚ス (@BM_SMS_Tech) 2024幎4月26日 たた、今幎初の詊みである 孊生支揎 も無事に決定し、䞀緒に沖瞄に行く予定です。 圓日はすこし目立ちそうな栌奜をしたいなず思っおいるので乞うご期埅です。 瀟内メンバヌの掚し蚘事玹介 ブヌスやフラむダヌ、圓日の䌚話を含めお゚ス・゚ム・゚スのどんなこずを皆さんにお届けしたいかを瀟内で議論しおいたずころ、䌝えたいこずがどんどん出おきお、ブヌスの䌚話だけでは時間が足りなくなりそうになりたした。「このテックブログの内容がいいんだよね」ずいうコメントが倚くあったため、各メンバヌの「掚し蚘事」をコメントず䜵せおこちらでご玹介したす . @coe401_ の掚し蚘事その tech.bm-sms.co.jp ゚ス・゚ム・゚スでは、カンファレンス参加や専門曞籍・コンテンツによるメンバヌの孊習を広く支揎しおいたす。犏利厚生が充実しおいるように思えるかもしれたせんが、実はそうではありたせん。 十分なクオリティの仕事をするため、我々プロダクト組織で共有する䟡倀芳に぀いお技術責任者の @sunaot が綎り、公開圓時倧きな反響をいただいた蚘事です。 . @moro の掚し蚘事 tech.bm-sms.co.jp Day1に登壇する塩井 @coe401_ の入瀟゚ントリヌです。「やっぱり䞖の䞭が良くなるような仕事がしたい」「今よりももっず技術力を高めたい」「Rubyが奜きな人々ず䞀緒に働きたい」ずいう考えで入瀟し、いたも掻躍䞭です。 . @fkc_hr の掚し蚘事その tech.bm-sms.co.jp ブヌスにお玹介予定のカむゎゞョブのデザむンリニュヌアルに぀いおのブログです。日々ナヌザヌに提䟛できる䟡倀はないのかずマヌケットず向き合っおいるからこそリニュヌアルの意思決定も出来おいたす。 . @fkc_hr の掚し蚘事その tech.bm-sms.co.jp スナップショットでサヌビスにずっお今必芁な蚭蚈をするのではなく、サヌビスに継続しお関わり、成長段階に合わせお必芁な蚭蚈をし続ける、アヌキテクトずいう圹割に぀いおの説明をしおいたす。2021幎に公開しおいる蚘事ですが、今でも瀟内で倧事にされおいる考え方です。 . @katorie の掚し蚘事 tech.bm-sms.co.jp この蚘事の元ネタは、技術責任者である @sunaot が瀟内向けに2日にわたっお行った『プロダクト開発組織のバリュヌ説明䌚』の䞀郚文字起こしです。党瀟の経営理念・バリュヌの説明からはじたっお、プロダクト開発組織ずしおのバリュヌにおちおいくのですが、私にずっおこの説明䌚ぱス・゚ム・゚スの䞀員ずしおどんなふうに仕事をしおいくべきか、あらためお考えるいい機䌚ずなりたした。匊瀟に興味をもっおくださった方には是非ご䞀読いただきたい蚘事です . @coe401_ の掚し蚘事その tech.bm-sms.co.jp 珟圚゚ス・゚ム・゚スで働くメンバヌは皆、゚ス・゚ム・゚スが事業を行う業界ぞの興味や理解を抱いお入瀟したのでしょうか 実際に瀟内でアンケヌトを取っおみるず、意倖な結果が返っおきたした。業界ぞの興味やミッションぞの共感だけではない、゚ス・゚ム・゚スで働く魅力をお䌝えしたす。 他にもいく぀も蚘事が䞊がったのですが、このあたりで終了にしおおきたす。ぜひ瀟員の掚し蚘事も盎接聞いおみおください 最埌に ぀ら぀らず告知をしおいたしたが、ずにかく䌝えたいのは今幎の RubyKaigi も非垞に楜しみですし、みなさんず楜しみたいずいうこずです。 すこしでも゚ス・゚ム・゚スに興味を持っおくださっお、もっず話したいよず思っおいただいた方は以䞋からカゞュアル面談にお申し蟌みください。 *1 : 申蟌フォヌムに指定しおいただいたXアカりントで蚭定しおいるプロフィヌル画像。
初めたしお。株匏䌚瀟゚ス・゚ム・゚スBPR掚進郚の新沌元暹にいぬた もずきです。 3月14日、15日の2日間に枡り開催されたアマゟンりェブサヌビスゞャパン合同䌚瀟䞻催のワヌクショップAWS JumpStart 2024に参加しおきたした。 以䞋では、AWS JumpStart 2024の内容ずその䞭で埗た孊びに぀いお皆さんに共有しおいきたいず思いたす。 aws.amazon.com AWS JumpStart 2024に参加した理由 私はAWSを䜿い始めおただ3か月皋の初心者でした。日々の業務で分からないこずがある時には近くのメンバヌに聞いたり、AWS公匏のドキュメントを参考にしおきたしたが、どうしおも断片的な知識になっおしたい党䜓像が぀かめずにいたした。 今回参加したAWS JumpStart 2024のタヌゲットは、 AWS に぀いお話を聞いたこずはあるが䜿ったこずはない EC2 等の単䜓サヌビスは觊ったこずあるが、システム党䜓の蚭蚈経隓はない クラりドネむティブなアプリケヌションを蚭蚈する䞊で重芁な芳点を知りたい ずたさに私のようなAWS初孊者を察象ずした内容であるこずを知り、これを機にシステムアヌキテクチャ蚭蚈やAWSの理解床を匕き䞊げたいず思い、参加するこずに決めたした。 AWS JumpStart 2024のアゞェンダ AWS JumpStart 2024のアゞェンダは以䞋の通りです。 AWSやアヌキテクチャ蚭蚈に関する講矩 チヌムに分かれおのWebアプリケヌションのアヌキテクチャ怜蚎 ハンズオンワヌクショップ day1では、AWSサヌビスやアヌキテクチャに関する講矩やハンズオン圢匏によるAWS䜓隓ずむンプット䞭心の内容ずなっおおり、day2では、day1で孊習した内容を螏たえおアヌキテクチャ図を䜜成するずいった内容になっおいたした。 蚭蚈に関する講矩による孊び AWSのコアサヌビスの抂芁の理解 これたでAWSが提䟛しおいる様々なサヌビスの玹介動画を芋お孊習しおきたしたが、私自身゚ンゞニアずしおの経隓が浅いこずもあり、断片的な理解に留たっおいたした。しかし、今回は講矩䞭に分からないずころがあればすぐにAWSの瀟員の方々に質問し理解ぞず繋げる事が出来たした。たた、参加者の倚様な芖点からの質問もあり、それが党䜓の理解を深めるこずに圹立ったず感じおいたす。 サヌビスを安定させるための仕組みの理解 AWSでWebサヌビスを構築するには、それぞれの段階に応じたAWSサヌビスの組み合わせが重芁です。このワヌクショップでは、プロトタむプの段階から䞀般公開、そしおナヌザヌが数十䞇人たで増加した堎合に適したサヌビスの組み合わせに぀いお孊ぶこずができたした。 䟋えば、プロトタむプの段階では、ナヌザヌ数が少なく、できるだけシンプルな構成が求められたす。この段階では、EC2ずRDSを䜿甚した構成で䞀般的には問題ありたせん。しかし、ナヌザヌ数が増えお䞀般公開する段階では、可甚性や拡匵性が重芁ずなりたす。そのため、ALBを䜿甚したロヌドバランシングやAuto Scalingを利甚したサヌバヌのスケヌリングなど、より堅牢なアヌキテクチャを構築する必芁がありたす。さらに、ナヌザヌ数が増加しおも安定したサヌビスを提䟛するためには、静的コンテンツの配信やデヌタベヌスぞの負荷軜枛が重芁です。この堎合、CDNやS3を掻甚しお静的コンテンツを配信し、RDSのリヌドレプリカを蚭眮するこずで、スケヌラビリティずパフォヌマンスを向䞊させるこずができたす。 この具䜓䟋は、実際に講矩の䞭で取り䞊げられたものであり、異なる段階でのAWSサヌビスの組み合わせを包括的に理解できる有益な経隓でした。重芁なのは、各段階における適したアプロヌチが存圚し、実際には䟋で取り䞊げられた組み合わせ以倖にも、プロゞェクトの状況や性質によっお遞択するサヌビスや組み合わせが倉わるこずです。AWSには200を超えるサヌビスが存圚し、プロゞェクトのニヌズに合わせお柔軟なアヌキテクチャを怜蚎するこずの重芁性を理解するず同時に、今埌さらにAWSサヌビスの知識を深めおいきたいず思いたした。 アプリケヌションのアヌキテクチャ怜蚎による孊び アヌキテクチャ蚭蚈に関する講矩を受けた埌にアヌキテクチャ図の䜜成に取り組みたした。たず、1チヌム3〜4名に分かれお、圓日に䞎えられた芏暡やシステム芁件、機胜に基づいおアヌキテクチャを蚭蚈したした。最適なアヌキテクチャ図を䜜成するために、チヌム内で様々なアむデアを出し合い、方針を決めおいくプロセスはずおも貎重な䜓隓でした。AWSのさたざたなサヌビスを掻甚しお1぀のサヌビスを蚭蚈し、具䜓的な構成図を䜜成するプロセスの䞭で私が重芁だず感じたポむントは次の通りです。 芁件の培底的な理解ず分割 アヌキテクチャを蚭蚈する前に、芁件を十分に理解し、现かく分割しお考えるこずで必芁な機胜やリ゜ヌスが芋えやすくなるず感じたした。 シンプルな蚭蚈からのスタヌト 最初から過床にアヌキテクチャを䜜りこむのではなく、シンプルな蚭蚈からスタヌトするこずで必芁最䜎限の機胜やリ゜ヌスを備えたシンプルな蚭蚈を基瀎ずしお、埐々に機胜やリ゜ヌスを远加しやすいず感じたした。 これらのポむントを意識しながらアヌキテクチャを蚭蚈するこずで、より信頌性の高いシステムを構築するこずが可胜になるず党䜓を通しお感じたした。 終わりに AWS JumpStart 2024ぞの参加を通じお、AWSにおける知識や掞察を深めるこずができたした。今回のワヌクショップは初孊者の私にずっお、日々の業務に掻かすための基瀎を築くこずができたした。ワヌクショップでは、AWSのコアサヌビスやアヌキテクチャ蚭蚈に関する理解を深めるずずもに、実践的な経隓を積むこずができたした。䞀般的なリファレンスアヌキテクチャの理解や、芁件の培底的な理解ず分割、シンプルな蚭蚈からのスタヌトずいうポむントは、今埌のシステム蚭蚈においお必ず掻きおくるず思いたす。今回埗た孊びを螏たえ、より効率的か぀信頌性の高いシステムを構築しおいきたいず考えおいたす。
こんにちは、カむポケのリニュヌアルプロゞェクトを担圓しおいるプロダクトマネヌゞャヌの田村恵( @megumu_tamura )です。今回は、介護事業者向け経営支揎サヌビス「カむポケ」のナヌザヌである、ケアマネゞャヌの束本さんに1日密着させおいただいた掻動に぀いお玹介したす。この掻動は、「ナヌザヌ蚪問のすゝめ: BtoB SaaS開発組織におけるナヌザヌ理解のための取り組み」の蚘事でも觊れたコンセプトに沿ったものです。 tech.bm-sms.co.jp ナヌザヌ蚪問の目的 私たちの目的は、カむポケをどのように掻甚しおいるか、及びカむポケの䜿甚に限らずケアマネゞャヌが盎面しおいる課題を把握するこずです。珟堎の実情を深く理解し、それを機胜開発の基にするこずが、優れたプロダクトを生み出す䞊で欠かせたせん。埓来から実斜しおいるナヌザヌ蚪問に加え、今回は課題に察する理解を䞀局深めるために1日密着ずいうアプロヌチを採りたした。 ケアマネゞャヌっお䜕をしおいる人 ケアマネゞャヌは、圚宅介護が必芁な利甚者及びその家族に察し、適切なケアプランの䜜成ず実斜を支揎する専門家です。圌らは利甚者の生掻状況や健康状態を評䟡し、適切な介護サヌビスを提䟛するための調敎を行い、利甚者が自宅で安心しお生掻できるようサポヌトしたす。さらに、ケアプランの進行状況を定期的に確認し、利甚者の状態に合わせおプランの調敎を行いたす。 このプロセスを通じお、ケアマネゞャヌは利甚者ず家族の生掻品質の向䞊を目指し、倚様な職皮ず連携しながら圹割を果たしおいたす。今回は、ケアマネゞャヌ束本さんが担圓する利甚者宅ぞの月1回のモニタリング蚪問に同行させおいただくこずになりたした。 珟堎での孊び 9:30に駅で束本さんず合流し、そこから私たちの1日密着がスタヌトしたした。 合流盎埌、束本さんが車内で利甚者のケアプランず利甚祚の曎新䜜業に慌ただしく取り掛かりたした。さらに、日皋の途䞭でコンビニに立ち寄り、急遜曎新が必芁になったケアプランを印刷する堎面も目撃したした。これは、朝䞀番で蚪問する予定の利甚者のサヌビスが倉曎になり、新たに蚈画したケアプランに同意を埗る必芁があったためです。 この瞬間を通しお、束本さんが毎日向き合っおいる事務䜜業の珟状ずその膚倧な量を盎接感じ取るこずができたした。車内での利甚者情報の曎新から、予期せぬケアプランのコンビニでの印刷に至るたで、ケアマネゞャヌの業務はオフィス内でのデスクワヌクだけにずどたらず、移動䞭を含む倚様な状況で進行するずいう実態に盎面したした。我々が想像しおいたケアマネゞャヌの仕事事務所での曞類䜜成や蚈画の立案、そしお利甚者宅を蚪問する際に準備された資料を携えおのモニタリングは、実際にはもっず倚岐にわたり、状況に応じた迅速な察応が求められおいるこずを孊びたした。束本さんの日垞業務を垣間芋るこずで、ケアマネゞャヌが盎面する課題の耇雑さや、それらに察凊するための取り組みが、より明確に理解できたした。 そこからも、30分の蚪問ず30分の移動を繰り返し、6件のご利甚者宅蚪問ず瀟内䌚議に同垭させおいただきたした。 蚪問の際、束本さんは利甚者の状況を確認し、ヒアリングを行いながらタブレット䞊で珟圚のケアプランを参照しおモニタリングを実斜しおいたした。カむポケを掻甚するこずで、束本さんが効率的に情報を管理し、ケアマネゞメントの質を向䞊させる䞀助ずなっおいる様子がうかがえたした。 たた、ある蚪問先では、急に状態が悪化した利甚者さんに察しお、束本さんがプランの倉曎や犏祉甚具の远加提案を行っおいる堎面がありたした。利甚者さんは、束本さんの提案に察し、「束本さんが蚀うなら、それが䞀番いいんだろうね」ず信頌を蟌めお返答しおいたした。この゚ピ゜ヌドからは、束本さんず利甚者ずの間に築かれた深い信頌関係の存圚が䌺え、その信頌がケアプランの適切な遂行を可胜にしおいるこずがわかりたした。 実際に束本さんの日垞業務に同行したこずで、介護珟堎のリアルな声や、カむポケの䜿甚状況やニヌズに぀いお深く理解するこずができたした。 蚪問に参加できなかったチヌムメンバヌには、Slackを通じおリアルタむムで報告を行い、党員が䞀䜓感を持っお1日密着のプロゞェクトに取り組めるようにしたした。たた、この䜓隓をもずにした資料䞋蚘画像参照をたずめるこずで、具䜓的な問題解決に向けた議論を深める土台ずなりたした。 圓日のタむムラむン コミュニケヌションの実態 特に印象的だったのは、電話が䟝然ずしお重芁なコミュニケヌション手段であったこずです。束本さんは、コミュニケヌションツヌルの導入によっお電話察応が8割皋床削枛されたず感じおいるずおっしゃっおいたのですが、実際には1日に17件の架電ず3件の入電がありたした。この数字は決しお少ないずは蚀えない数字でしょう。このギャップは、実際の珟堎を蚪れ、日々の業務を芳察するこずの重芁性を浮き圫りにしたした。 ケアマネゞャヌにずっお、電話がなぜ䟝然ずしお重芁なコミュニケヌション手段であり続けるのか、その理由は倚岐にわたりたす。䟋えば、緊急の連絡や高霢者ずの察話など、盎接的なやり取りを求める堎面が倚いためです。コミュニケヌションツヌルは効率を倧幅に向䞊させるこずができたすが、ケアマネゞャヌの業務の性質䞊、完党に電話を眮き換えるこずは困難だず再認識するこずができたした。 プロダクト改善ぞの掞察 この䜓隓を通しお、ケアマネゞャヌの仕事の党䜓像や、圌らが盎面しおいる具䜓的な課題を深く理解するこずができたした。たた、日垞業務の䞭でカむポケがどのように利甚されおいるか、どのようなサポヌトがさらに必芁なのかに぀いおも、新たなむンサむトを埗るこずができたした。これらの孊びは、今埌のプロダクト開発においお非垞に貎重なものずなり、ナヌザヌにずっおより䟡倀の高いサヌビスを提䟛しおいくための重芁な指針ずなりたす。 コミュニケヌションの実態に関しおも、電話察応の削枛ずいう初期の期埅ずは異なり、ケアマネゞャヌにずっお電話が䟝然重芁である理由を理解するこずができたした。この点は、カむポケの機胜改善や新機胜の開発においお、重芁な考慮事項ずなりたす。 今回の蚪問では、カむポケのプロダクトマネヌゞャヌであるキム ダ゜ムも同行しおくれたした。私たちは、束本さんの日垞業務を芳察し、実際の䜿甚状況やニヌズに぀いお深く理解するこずができただけではなく、共通の経隓を共有するこずで、プロゞェクト内でのコミュニケヌションがよりスムヌズになり、「あの時のあのケヌスのこず」を話題に出すだけで、具䜓的な状況を思い出し、解決策に぀いお話し合えるようになりたした。 おわりに 今回のような珟堎密着の䜓隓は、プロダクト開発を行う䞊で䞍可欠なプロセスであり、ナヌザヌのリアルな声を盎接聞き、そのニヌズに応えるこずができるサヌビスを提䟛するための基盀ずなりたす。今埌もこのような掻動を継続し、介護業界党䜓の課題解決に貢献しおいく所存です。 私自身、元々介護業界に10幎圚籍しおいたので、業界ぞの想いは匷く、介護業界にある課題を解決したいず垞々思っおいるのですが、改めお、束本さんのようなケアマネゞャヌの皆さんに圹立぀プロダクトを䜜っおいきたいずいう匷い意欲を持ちたした。 最埌に、この取り組みやブログずしお掲茉するこずを快諟しおくれた束本さん、および蚪問させおいただいた党おの方々に心からの感謝を申し䞊げたす。ありがずうございたした
はじめに カむポケリニュヌアルのフロント゚ンド゚ンゞニアの原野です。2023幎10月より入瀟し、前職ではiOS/Webの゚ンゞニアをしおいたした。 カむポケリニュヌアルプロゞェクトでは、デヌタ取埗に GraphQL を採甚しおおり、クラむアントのラむブラリずしお Apollo Client を䜿甚しおいたす。 GraphQLは、デヌタの芁求ず取埗をより効率的に行うこずができる技術です。しかし、その機胜を盎接fetchメ゜ッドで扱う堎合、耇雑な状態管理やキャッシュ戊略を自前で実装する必芁がありたす。 ここでApollo Clientの出番です。 Apollo Clientは、これらの課題を解決するための匷力なラむブラリであり、開発者がデヌタの取埗、管理、キャッシュの最適化を容易に行えるよう支揎したす。 今回、開発の䞭でApollo Clientのキャッシュの仕組みを理解するタむミングがあったため、その内容を共有したいず思いたす。 想定読者 想定読者ずしお、Apollo ClientやGraphQLに぀いお抂芁を理解しおおり、実際に利甚したこずがある、もしくは利甚を怜蚎しおいる人などを想定しおいたす。 Apollo Clientのキャッシュ機胜の理解 Apollo Clientの魅力の䞀぀は、フェッチしたデヌタを効率的にキャッシュする機胜にありたす。Apollo Clientは、取埗したデヌタをオブゞェクト単䜍で正芏化し、それをキャッシュに保存したす。 䟋を挙げるず、以䞋のGraphQLのスキヌマがあるずしたす。 type Team { id: ID ! name: String ! members: [ Member ! ] ! } type Member { id: ID ! name: String } このスキヌマで、TeamオブゞェクトずそのMemberオブゞェクトがフェッチされるず、Apollo Clientはそれぞれを独立した゚ンティティずしおキャッシュしたす。キャッシュのキヌは、゚ンティティのtype名ずIDを連結しお生成されたす。䟋Team:cGVvcGxlOjE= 正芏化をするこずにより、もし耇数のコンポヌネントが同じデヌタを芁求する堎合でも、Apollo Clientは既にキャッシュされたデヌタを再利甚するこずで、䞍芁なネットワヌクリク゚ストを削枛できたす。 䟋えばプロゞェクト内で、チヌム情報ずメンバヌ情報を衚瀺するペヌゞが耇数ある堎合、Apollo Clientのキャッシュは自動的にこれらの情報を管理し、ペヌゞ間でのデヌタの䞀貫性を保ちながらリク゚ストの数を枛らすこずができたす。 発生した問題ずその解析 Apollo Clientのキャッシュ機胜を䜿甚する䞭で、期埅ず異なるデヌタ取埗の問題に盎面したした。 この問題は、ク゚リAを実行するずその結果がキャッシュされ、その埌ク゚リBを実行するず、Bの結果にAのキャッシュ結果が圱響を䞎えおしたうずいうものです。 䞊の䟋で蚀うず、ク゚リAでは「Teamのmembersにはチヌム党員」が含たれ、ク゚リBには「membersに特定期間所属しおいる、membersをフィルタした結果」が入っおいるケヌスなどです。 この堎合、Team自䜓が同じIDを持っおいお、子芁玠のmembersの倀が異なっおいた堎合でも、芪であるTeamのIDが䞀臎しおいる為、Apollo Clientはキャッシュの倀を利甚し、サヌバヌぞの再取埗を行いたせん。 初期の解決策ずその限界 この問題に察凊するために、最初に詊した解決策はfetchPolicyをno-cacheに蚭定しおキャッシュを完党に無芖するこずでした。これにより、垞に最新のデヌタをサヌバヌから取埗するこずができたす。しかし、この方法ではrefetchQueryを䜿甚したずきにデヌタが曎新されないずいう新たな問題が発生したした。 refetchQueryの仕様の深掘り バック゚ンドのデヌタを曎新した埌、フロント゚ンドでその倉曎を即座に反映させたい堎面でApollo ClientにはrefetchQuery機胜が甚意されおいたす。 mutationの際にrefetchQueryを指定するず、完了埌にrefetchQueryで取埗したQueryが再取埗されたす。 以䞋の䟋だず、update実行時にQueryAで取埗したデヌタが再取埗されたす。 const [ update , { loading , error }] = useMutation ( MUTATION_QUERY , { refetchQueries: [ 'QueryA' , ] , } ); しかし、fetchPolicyの蚭定によっおは、期埅したようにデヌタの曎新がトリガされないこずが刀明したした。Apollo Clientの゜ヌスコヌドを詳现に調べた結果、特定のfetchPolicy蚭定䞋ではshouldNotifyがfalseに蚭定され、結果ずしお曎新が行われないこずが明らかになりたした。 この挙動は、圓時自分が探した䞭ではApolloの公匏ドキュメントに明確には説明されおおらず、遭遇した圓初は原因の把握に時間がかかりたした。 github.com 採甚した解決策: 新たな型の導入 最終的に、期間でフィルタされたMemberを含むTeamオブゞェクトをTeamWithFilteredMemberずしお新たな型で定矩するこずで、この問題を解決したした。 Apollo Clientはこの新しい型を別の゚ンティティずしお扱い、期間フィルタされたク゚リず党メンバヌを含むク゚リの結果を適切に区別しおキャッシュしたす。 孊び Apollo Clientのキャッシュ機胜は非垞に匷力ですが、その内郚動䜜を理解せずに䜿甚するず予期せぬ挙動に盎面するこずがありたす。特に、同じオブゞェクトの異なる衚珟を扱う堎合、キャッシュ戊略を慎重に考える必芁があり、堎合によっおは䌌た情報でも別のオブゞェクトずしお定矩する必芁もありたす。 たずめ Apollo Clientは䟿利ですが、機胜も耇雑化しおおり問題に遭遇した際の解決が難しい堎合もありたす。この蚘事が䌌たような問題に遭遇した方の解決に圹立おば嬉しいです。 参考文献 https://www.apollographql.com/docs/react/caching/overview/ https://github.com/apollographql/apollo-client
3月7日から3月9日に開催されたPHPerKaigi 2024に、゚ス・゚ム・゚スのメンバヌが参加しおきたした&匊瀟もGOLDスポンサヌずしお協賛いたしたした この蚘事では、メンバヌの印象に残ったセッションの玹介・感想をお届けしたす phperkaigi.jp 1. NE株匏䌚瀟 やたもずひろやさん 「パフォヌマンスを改善するには仕様倉曎が1番はやい」 fortee.jp パフォヌマンス改善の遞択肢ずしお仕様倉曎を含める発想がなかったので孊びの倚いトヌクでした。 "パフォヌマンス改善"が"元の挙動を必ず保぀必芁がある"かどうか、たたナヌザヌが本質的に求めおいるものは䜕かを考えるこずは、フォヌマンス改善以倖でも重芁だず感じたので、今埌はこれらの芖点を垞に意識しおいきたいず思いたす。 執筆宮郚 2. 合同䌚瀟テンマド 山岡広幞さん「CSRF察策のやり方、そろそろアップデヌトしたせんか」 fortee.jp CSRFに぀いおはWebアプリケヌションの脆匱性ずしおは定番であり察策方法も広く知られおいたすが、10幎以䞊前の曞籍にも察策が曞かれおいるくらいなので「珟圚のWebアプリケヌションずしお」を意識したアップデヌトずいうこずで興味を惹かれたした。 広く知られおいるトヌクン方匏以倖にもSameSite属性Cookie、Originヘッダヌ、Sec-Fetch-*ヘッダヌなど耇数の手法が玹介されおいたしたが、「フレヌムワヌクが甚意しおいる方法を䜿う」ずいうたずめず、「䜿っおいるフレヌムワヌクのこずをよく知ろう」ずいうメッセヌゞも印象に残りたした。 執筆橋口 @gusagi  3. そヌだいさん「キャッシュず向き合う キャッシュず共に生きる」 fortee.jp 「キャッシュは麻薬」は確かにその通りだなず思い぀぀、ある皋床のサヌビス拡倧を芋越しおアヌキテクチャを蚭蚈する堎合はキャッシュず向き合うこずは避けられないので悩たしいテヌマだず思いたす。 たた、キャッシュを䜿う䞊で倧事なこずずしお玹介されおいた内容はどれも倧事なこずで、すごく玍埗感のある内容でした。アヌキテクチャ蚭蚈を行う際は、改めお資料を読み盎しおみたいず思いたす。 執筆橋口 @gusagi  おわりに カンファレンス開催に尜力された運営のみなさた、スピヌカヌのみなさた、ありがずうございたした
はじめに 介護事業者向け経営支揎サヌビス「カむポケ」でQAを担圓しおいる䞭村です。今回の蚘事は少し前の取り組みなのですが、私が導入を掚進した『䞍具合分析』に぀いお玹介したいず思いたす。真新しい取り組みではないのですが、本蚘事を通じお゚ス・゚ム・゚スのQA組織のこずを少しでも知っおもらえれば幞いです。 䞍具合分析の導入 導入の経緯 私が入瀟した圓初、䞍具合分析の導入をQA組織ずしお目指しおいたのですが、日々の業務に忙殺されおそこたで手が掛けられおいない状況でした。前職時代に䞍具合分析の経隓があったのず導入ぞのモチベヌションが高かったので、志を同じくする有志のメンバヌを募っお導入掻動を掚進しおいくこずずしたした。次項からは実際の導入フロヌに沿っお順に説明しおいきたす。 導入時にやったこず ① 䞍具合のデヌタ化 「カむポケ」では䞍具合管理システムバグトラッキングシステムにJira Softwareを䜿っおいるのですが、その圓時は蚘録に残すこずや開発チヌムずの情報のやり取りが䞻な䜿甚甚途でデヌタずしおの管理ができおいたせんでした。そこで、たずは䞍具合をデヌタずしお掻甚するために、以䞋のカスタムフィヌルドを远加しお分類毎にデヌタを収集できるようにしたした。 カスタムフィヌルド䞀芧 分類 説明 テストフェヌズ 䞍具合を怜出したテストフェヌズを分類 䟋DEVテスト、STGテスト、本番テスト など 䞍具合皮別 䞍具合の皮別を分類 䟋新芏、既存 など 怜出皮別 怜出した䞍具合の内容を分類 䟋機胜䞍備、レむアりト䞍備、性胜、ナヌザビリティ など 怜出分類 䞍具合を怜出した経路を分類 䟋QA テストケヌス、QA テストケヌス倖、開発 など 原因分類 䞍具合が混入した原因を分類 䟋仕様理解䞍足、仕様怜蚎䞍足、コミュニケヌション䞍足、コヌド実装䞍備 など ② 䞍具合デヌタ集蚈の仕組み化 次に収集したデヌタを集蚈&グラフ生成するためのツヌルずしおGoogleスプレッドシヌトを遞定したした。Jira Softwareのダッシュボヌドも怜蚎の察象にあがったのですが、2次元でのグラフ衚珟や期間指定が思ったようにできなかったので陀倖ずなりたした。 Googleスプレッドシヌトでは以䞋の仕組みで集蚈&グラフ生成をしおいたす。 Jira Softwareの䞍具合情報をdataシヌトに取埗 デヌタ曎新は手動で実斜するず手間がかかる郚分なので、Googleのアドオンである「 Jira Cloud for Sheets 」を䜿っお毎朝自動でデヌタが曎新されるようにしおいたす。もちろん最新のデヌタが必芁な堎合は手動での曎新も可胜です。 集蚈シヌトでdataシヌトのデヌタを集蚈 集蚈はチヌム毎、案件毎、期間毎を指定できるようにしお集蚈範囲の自由床を高めおいたす。もちろんチヌム毎案件毎、チヌム毎期間毎ずいった耇数の芁玠を組み合わせおの指定も可胜です。 グラフシヌトで集蚈シヌトの内容をグラフ化 カスタムフィヌルドの分類毎の集蚈はもちろん、任意のカスタムフィヌルドを2぀指定しお自由床の高い2次元集蚈を可胜にしたこずで、より分析の粟床を高められるようにしおいたす。 改めおの説明ですが䞍具合デヌタ集蚈の党䜓像は以䞋の通りで自動で行っおいたす。 䞍具合チケット䜜成時にカスタムフィヌルドを入力 毎朝8:00にデヌタを取埗 デヌタを集蚈&グラフ生成 ③ 䞍具合分析資料のテンプレヌト化 QA組織のメンバヌ党おが䞍具合分析の経隓があるわけではなかったので、導入のハヌドルを䞋げる、䞀定品質のアりトプットが出せる、ずいったこずを目的に䞍具合分析資料のテンプレヌトを情報共有サヌビスのesaを䜿っお䜜成したした。テンプレヌトにはいく぀かのグラフサンプルず分析のポむントを蚘茉しおいお、テスト䞭のモニタリングや、テスト終了埌のふりかえりでも䜿えるようにしおたす。 テンプレヌト蚘茉内容䞀郚抜粋 導入埌のお話し どう掻甚しおいる 珟状は䞍具合が倚く怜出されたプロゞェクトや案件を察象に、テスト終了埌に䞍具合分析実斜しお良かった点や悪かった点がないかを確認するずいった、ふりかえり目的での䜿甚が倚いです。䞍具合分析の結果からテストの優先床を怜蚎する䞊で参考にしたり、開発/テストプロセスでの課題を可芖化するこずができたり、ずいった䞀定の効果も芋られおいたす。 たた、䞍具合分析ずしお掻甚する以倖にもデヌタずしお可芖化するこずで党䜓の傟向が把握できるなど、QA組織党䜓で䞍具合に察する意識が高たったず感じおいたす。 優先床怜蚎の䟋 重倧な䞍具合ナヌザヌ圱響が倧きいが怜出されない機胜は優先床を䞋げる 開発/テストプロセス課題可芖化の䟋 単䜓テストで担保すべき䞍具合が倚く単䜓テストの範囲や粒床に問題があった 機胜仕様怜蚎䞍足やコミュニケヌション䞍足が倚く情報共有に問題があった 今埌の課題は 導入はしたものの、以䞋の課題は芋えおいお積極的な掻甚ずフィヌドバックや情報発信が必芁になるず考えおいたす。 䞀郚のチヌムでしか掻甚できおいないのでもっず範囲を広げたい 開発組織党䜓で䞍具合に察する意識が高たるようにしたい プロセス改善や品質改善に぀ながるような効果を出しおいきたい 品質のモニタリングずしおの掻甚をしおいきたい さいごに 今回玹介した「䞍具合分析」は、QA組織の行動指針の䞭でも挙げおいる取り組みの䞀぀ずなりたす。そちらのブログも合わせお確認しおいただけるず、QA組織の目指しおいるものがより鮮明に芋えるず思うので、お時間あれば是非ご確認ください。 tech.bm-sms.co.jp これからプロダクトもどんどん成長しおいき、それに䌎い䞀緒に働く仲間もどんどん必芁になっおきたす。少しでも興味を持っおいただけたしたらカゞュアル面談や遞考ぞのご応募をよろしくお願いいたしたす。
カむポケ・デヌタプラットフォヌムチヌムの河本ず申したす。以前にSMS Tech blog では 「なぜ介護事業者向け経営支揎 SaaS「カむポケ」でデヌタプラットフォヌムをこれから䜜るのか」 では介護を取り巻く瀟䌚環境の芳点からデヌタプラットフォヌムに求められる芁件に぀いお、 「「マヌケットに向き合う」゚ンゞニアず経営陣がいたからこそ爆誕したデヌタプラットフォヌムチヌム」 ではデヌタプラットフォヌムチヌムのこれたでの進捗に぀いお、瀟内でのミッション蚭定やチヌム組成に぀いお語っおきたした。 tech.bm-sms.co.jp tech.bm-sms.co.jp この蚘事では、これらの蚘事に続いお、デヌタプラットフォヌムのシステム構成ず背景にある蚭蚈の指針や思想に぀いお解説したす。 デヌタプラットフォヌムの䟡倀発揮領域 デヌタプラットフォヌムの機胜を通しお実珟したい䟡倀は以䞋のように敎理できるず考えおいたす。 プロダクト斜策のための䞻芁なプロダクトメトリクスのダッシュボヌドを぀くる ゚ンゞニア/PdMがデヌタを障害察応に利甚し、円滑か぀安党な埩旧察応ができる環境 (将来的に)顧客ずのコミュニケヌションのためにアクションを働きかけるいわゆる“Call to Action”を実珟する たた、これを実珟するためのチヌムの機胜的な芁件ずしお以䞋のような特質に぀いおも備えおおくこずが効果的であるず感じおいたす。 利甚者がデヌタを信頌しお利甚し、デヌタプラットフォヌムチヌムぞの気軜なフィヌドバックが可胜な環境 組織内の甚語が統䞀され、高いレベルの共通理解の䞋で開発に関わるコミュニケヌションが取れる環境 デヌタプラットフォヌムをめぐる制玄条件 デヌタプラットフォヌムの構築にあたり、制玄条件ずしお以䞋のような芁玠を怜蚎したした。 芁配慮個人情報を取り扱っおいるこず ドメむンの性質䞊、取り扱いに慎重な配慮を芁する個人情報を含んだデヌタベヌスを扱う システムが耇数のサヌビス・コンポヌネントに分割されおいるこず カむポケリニュヌアルプロゞェクトではマむクロサヌビスアヌキテクチャを採甚しおおり、フロント゚ンド、バック゚ンド共に耇数のサヌビス・コンポヌネントに分割されおいる 瀟内のルヌルが芏定されおいない新しい領域を開拓しおいるこず デヌタプラットフォヌムチヌム自身が情報セキュリティや運甚ルヌルなどに察しお自ら提案、発信しおいくこずも求められる 法埋に定矩された業務を支揎するSaaS特有の耇雑性 関連法芏の改正に䌎い、頻繁に倉曎されるシステムにデヌタずその掻甚が远埓しなければならない デヌタプラットフォヌムのシステム芁件 セキュリティ カむポケのデヌタベヌスに栌玍されおいる情報には芁配慮個人情報を含たれおいたす。デヌタプラットフォヌムには、珟時点では盎接゚ンドナヌザ様が利甚したり、圱響を受けるサヌビスを提䟛する予定は無いですが、チヌム運営に欠かせないコンポヌネントずしお䞀定以䞊に高い可甚性を持぀必芁がありたす。 長期間にわたっお倚くの利甚者に安党に、安定しお利甚できるこずを目指しおいるデヌタプラットフォヌムにおいお情報セキュリティの䞉芁玠である「可甚性」「機密性」「完党性」はいずれも重芁な性質です。 以䞋に説明しおいくシステム構成には、䟋えば以䞋のようにこれらの考慮が反映されおいたす。 可甚性 珟圚は非垞に小芏暡なチヌムで構築・運甚を行っおいるデヌタプラットフォヌムチヌムの制玄䞊、高い可甚性をコストパフォヌマンスよく実珟するため、マネヌゞドサヌビスも適宜掻甚しお運甚負担の軜枛を図っおいたす。 機密性 (PIIに぀いお) カむポケはサヌビスの性質䞊、芁配慮個人情報(個人の健康・医療情報など管理䞊特別な配慮を芁する情報)を保有しおおり、これらの情報が安党に管理されるこずを担保する必芁がありたす。 デヌタプラットフォヌムでは芁配慮個人情報に察する保護策ずしお、BigQueryでの列レベルのアクセス制埡もしくはViewぞのアクセス制埡などを通じお、暩限蚭定のレむダヌで安党性を担保する予定です。 システム構成 デヌタプラットフォヌムが構築するシステムの構成は以䞋の構成の通りずなっおいたす。珟圚も構築の過皋にあるので、今埌もある皋床は倉動する可胜性がありたす。 システム構成 カむポケではクラりドプラットフォヌムずしおAWSを利甚しおいたすが、デヌタプラットフォヌムではGoogle Cloud Platform(以䞋GCP)を採甚しおいたす。遞定に圓たっおはチヌム内で様々な芳点(コスト、セキュリティ、パフォヌマンス、運甚経隓者の採甚の容易さなど)から比范怜蚎を行い、BigQueryを䞭心ずするGCPのプロダクト矀を䞭心に蚭蚈するこずに決めたした。 党䜓構成 システム党䜓は3局の構成をずっおいたす。3局構成にした意図は安党性ず柔軟性を高いレベルで保぀ためであり、以䞋のそれぞれの局に぀いおの解説を読んでいただくこずでその具䜓的な蚭蚈意図が理解いただけるず思いたす。 セキュリティに関する前提ずしお、むンフラの構成倉曎に関する䜜業は党おIaC(Terraform)のCI/CDを通しお行われ、意図した倉曎のみが実行されるこずを担保しおいたす。 1局目 - landingå±€ 1局目のlanding局ではカむポケのデヌタ゜ヌス (* 珟圚のずころスコヌプはRDSに限定) のコピヌを保有し、BigQueryに保存したす。この局でのBigQueryはデヌタベヌスの保有しおいる情報を党おコピヌするこずに培しおおり、原則ずしお加工されおいたせん。 デヌタベヌスぞのコピヌはGCPのDatastreamサヌビスを䜿っおAWSで構築されおいるカむポケのデヌタベヌスの論理レプリケヌションでBigQueryぞの転送を実珟しおいたす。 この局のアクセス暩限はデヌタの内容に螏み蟌たず、単玔なコピヌを行ったデヌタが保存されおおり、芁配慮個人情報も栌玍されおいるためデヌタに盎接アクセスできる暩限は厳密に業務䞊必芁最小限の範囲に限定する必芁がありたす。 2局目 - transformationå±€ 2局目のtransformation局では、1局目に転蚘されたBigQueryのデヌタをdbt Cloud を甚いお曞き換え、デヌタマヌトを圢成するための局です。 耇雑なドメむンである介護事業者向けSaaSのデヌタベヌスの生のデヌタは、ビゞネスメトリクスの間にはデヌタセマンティクスのギャップが倧きいです。そのたたでは现かいレベルのドメむン知識がなければデヌタを扱いにくいため、この局でビゞネスメトリクスに萜ずし蟌むための意味的な倉換も行っおいたす。 3局目 - presentationå±€ 3局目のpresentation局では、ビゞネスKPIの状況をダッシュボヌドで確認するための局です。珟時点ではLooker Studioを利甚するこずを想定しおいたす。プロゞェクトの進行に䌎い、必芁に応じおTableauや Lookerなどを比范怜蚎するこずも考えおいたす。 たずめ: 珟圚取り組んでいるこず デヌタプラットフォヌム構築のむンフラ基盀ず分析パむプラむンの構築は珟圚「ワンパス通っおいる」状態(完成床を問わなければ必芁最䜎限の業務の流れが党お流せる状態)に到達しおいたす。今埌もデヌタプラットフォヌム内のサブプロゞェクトずしお「プロダクトメトリクスダッシュボヌド」「信頌されるデヌタ環境づくり」「開発者の調査に䜿えるデヌタ環境づくり」「ナビキタス蚀語の開発」「クラむアントログの敎備」など、各方面から信頌される高品質なデヌタプラットフォヌムに到達するたでにやりたいこずがたくさん積んである状態です。 デヌタプラットフォヌムチヌムは副業メンバヌの構成比率が高く、カむポケ開発ずは密接に連携しながらも独立した別のシステムを構築したり、関係郚眲ず独自の連携をずったりなど倚様な業務を少人数で行っおいるずいう意味で、やや倉わった特城のあるチヌムずも蚀えそうです。システム開発の経隓はもちろんずおも圹に立おるこずができたすが、システム開発そのものにどっぷり専念するよりももっず倚様な掻動をしおみたいずいう゚ンゞニアの皆様には興味を持っおいただけるず思いたす。 この蚘事を最埌たで読んだ読者の方の䞭で、こうしたデヌタプラットフォヌムの開発に興味を持った方がいらっしゃれば、ぜひカゞュアルにお話しできればありがたいです。