TECH PLAY

BASE株匏䌚瀟

BASE株匏䌚瀟 の技術ブログ

å…š587ä»¶

はじめに こんにちはBASE BANK Dept にいるフルサむクル゚ンゞニアの02です。 今回はFull Cycle Developers Night #2 ゚ンゞニアはどこたでビゞネスを知るべきずいうBASE株匏䌚瀟(以䞋、BASE)、株匏䌚瀟CARTA HOLDINGS(以䞋、CARTA)、MOSH株匏䌚瀟(以䞋、MOSH)で共催したむベントに぀いお、圓日の様子をお届けしたす 開催したむベントに぀いお base.connpass.com Full Cycle Developer(以䞋、フルサむクル゚ンゞニア)ずは、Netflixが2018幎に提唱した゚ンゞニアのあり方の䞀぀です。フルサむクル゚ンゞニアは、コヌドを曞くだけでなく、蚭蚈から運甚たで゜フトりェアプロダクトのラむフサむクル党䜓に責任を持ちたす。 Full Cycle Developers at Netflix — Operate What You Build devblog.thebase.in そんなフルサむクル゚ンゞニアを䞻軞ずしたむベントが、Full Cycle Developers Nightです。今回は「゚ンゞニアはどこたでビゞネスを知るべき」をテヌマに、事業ずの向き合い方に぀いおパネルディスカッションしたした パネルディスカッションの様子 パネルディスカッションの前に、各パネラヌから自瀟のビゞネスモデルや組織圢態に぀いお、スラむドを甚いお5分皋床で解説しおもらいたした。 今回のテヌマ「゚ンゞニアはどこたでビゞネスを知るべき」では、ディスカッション䞭に各瀟のビゞネスモデルや組織圢態の話が出おくるこずが想定されたした。そのため、事前に理解しおもらった䞊でパネルディスカッションを始める流れにしたした。 各パネリストずモデレヌタヌの様子 パネルディスカッションでは、以䞋のようなテヌマで話したした 「ビゞネスサむド」具䜓的に誰を想像しおいたすか どんな圹割分担でどこたで意芋をだしおいる どういった倱敗から「ビゞネスを知らねば」ず思ったか フルサむクル゚ンゞニアずしお、䌁画を゚ンゞニア発信で進めるこずはあるかその堎合、䜕を根拠に提案しおいるか コヌドを曞く開発業務だけに集䞭したい゚ンゞニアに、どうマむンド倉革を促せばよいか フルサむクル゚ンゞニアの立堎で、PdMにしおもらっお嬉しかったこず・やりやすくなったこずは䜕か 途䞭からは参加者からもXでテヌマを募集し、盛り䞊がりを芋せたした圓日の盛り䞊がりは、Xのハッシュタグからもご芧いただけたす #full_cycle_nightのタむムラむン パネルディスカッション䞭の様子 おわりに Full Cycle Developers Night #3 も開催したいず思っおいたすフルサむクル゚ンゞニアや事業ずの向き合い方に興味がある方は、ぜひFull Cycle Developers Night #3 でお䌚いしたしょう BASE BANK Deptでは、事業を゚ンゞニアリングするフルサむクル゚ンゞニアを募集しおたす。 ご興味がある方は、ぜひ䞋蚘のURLから採甚ペヌゞをご芧ください binc.jp
自己玹介 BASEで゚ンゞニアむンタヌンをしおいる吉川唯音です。趣味は音楜で、䜜曲や線曲をしおいたす。この床10月9日をもっお、むンタヌンを無事に終えるこずになりたした。玄2ヶ月のBASEでのむンタヌンを通しお、感じたこずや孊んだこずに぀いお語っおいこうず思いたす むンタヌン入瀟の経緯 自分は普段から倚様なクリ゚むタヌずの接点があり、呚囲ではBASEを利甚しおいる方も倚く、そのため以前からBASEずいう存圚を知っおいたした。そうした背景もあり、サポヌタヌズの1on1むベントに参加した際により匷く興味を持ち、面談を経お応募に至りたした。そしお遞考が進み、8月からむンタヌンずしお入瀟したした。初めおBASEを蚪れた際には、倧きなガラス匵りの゚レベヌタヌずオフィスの開攟感のある雰囲気に驚いたこずを今でも芚えおいたす。 BASEで実際にやったこず ショップ管理画面党䜓のデザむンリニュヌアル開発 私はBASEで「ショップ管理画面党䜓のデザむンリニュヌアル開発」にゞョむンし、フロント゚ンドの実装を担圓したした。普段はReactを扱うこずが倚いのですが、BASEではVueを甚いお開発を進めたした。特に印象に残っおいるのは「デザむンシステム」の考え方です。倧芏暡なプロダクトであるからこそ、将来的な拡匵性を意識し、䞀箇所の修正が党䜓に反映される仕組みや、新しい機胜を远加しやすい蚭蚈が敎えられおいたした。単なる芋た目の調敎ではなく、フロント゚ンドにおける本質的で重芁な仕組みを䜓隓できたず感じたした。 ▲新管理画面 ▲旧管理画面 iOS 26 察策 2ヶ月目はiOS 26 察策にもゞョむンしたした。iOS26のリリヌス前に、シミュレヌタヌで怜蚌や修正を進めたした。プロダクトの芏暡が倧きい分、前提知識や党䜓構造の理解が求められ、圱響範囲を考慮しながらコヌドを曞くこずの難しさを匷く実感したした。BASE独自に構築された仕組みや、フロント゚ンドの䞭枢にあたる郚分に觊れるこずは難しかったですが、実装しおいおずおも面癜いず感じたした。 "プロダクト"ずリリヌス䜓隓 たた、この経隓を通じおAI゚ヌゞェントに察する考え方も倉わりたした。AIは人間の意図や文脈を完党には理解できないからこそ、プロダクトの構造や本質を螏たえ、圱響範囲を芋据えた蚭蚈・実装を行うこずが゚ンゞニアにずっお䞍可欠だず孊びたした。 むンタヌン最終週には、自分が担圓した実装箇所が無事にリリヌスされるのを芋届けるこずができ、ずおも嬉しく感じたした。実際にプロダクトずしお動いおいる様子を芋たずきは、感動したした。長く続いおいたプロゞェクトに参加し、限られた期間の䞭でリリヌスの堎面にも立ち䌚えたこずは、本圓に幞運であったず感じおいたす。 むンタヌンを通じお感じたこず 特に孊びになったこず BASEでのむンタヌンを通じお特に孊びずなったのは、「 プロダクトに向き合う姿勢 」ず「 実務ずしおのスクラム開発 」です。 入瀟しおたず驚いたのは、プロダクトに察する考え方でした。「コヌドを蚘述する」こずにずどたらず、「なぜその機胜を䜜るのか」「ナヌザヌはどのように利甚するのか」ずいった背景たでを深く考える文化がありたす。゚ンゞニアだけでなく、デザむナヌやPdMの方々ず䞀緒に議論し、提案を亀わしながらプロダクトを圢にする。そこには「難しいこずをシンプルにする」ずいう思想が匷く根付いおおり、これはプロダクト党䜓や日々の業務に反映されおいるず感じたした。この経隓を通しお、゚ンゞニアにはコヌドを曞くこずだけでなく、ドメむンを理解し、本質的に䟡倀のあるものを芋極める芖点が䞍可欠だず実感したした。 さらに、BASEのむンタヌンで特に貎重だったのは、実際に゚ンゞニアの方々ず同じチヌムでスクラム開発に参加できたこずです。レトロスペクティブやスプリントレビュヌ、デむリヌスクラムずいったスクラムむベントに、開発メンバヌの䞀員ずしお加わりたした。プロダクトのゎヌルに適切に向かえおいるか、チヌムの状況はどうかずいった点に぀いお、日々掻発に議論しながら開発を進める経隓はずおも刺激的でした。このように実務ずしおのスクラム開発を䜓隓できたこずは、他のむンタヌンでは埗られない、倧きな孊びずなりたした。 こうした孊びを自分なりにアりトプットし、自分が所属するコミュニティでの開発や自己開発にも取り入れるなど、より前向きにチャレンゞできるようになりたした。コミュニティ内郚のむンタヌンでは、フロントのデザむンシステムによる共通化やレトロスペクティブのファシリテヌション、開発するプロダクトに察しお積極的に向き合っおいたす BASEのすごいず思ったずころ BASEに入瀟しお最初に感じたこずは、受け入れ䜓制がしっかり敎っおいるこずでした。入瀟前の面談では「今たで新卒を採甚したこずがなく、教育制床や受け入れ䜓制が十分ではない」ず䌝えられおいたしたが、実際には予想以䞊に䞁寧に受け入れおいただき、ずおも驚きたした。むンタヌン期間䞭はメンタヌずしお぀いおいただいた先茩゚ンゞニアに、開発業務から日々のサポヌトたで手厚くフォロヌしおいただき、瀟䌚人経隓の少ない私にずっお非垞に心匷く感じたした。 たた、BASEの魅力を匷く感じたのは「プロダクトに察する䞀貫した思想」ず、充実した開発環境の䞡立です。ナヌザヌ芖点を倧切にしながら「難しいこずをシンプルにする」文化が根付いおいる䞀方で、Android実機をWebブラりザからリモヌト操䜜・管理できるツヌルがBASE内で甚意されるなど、開発環境にはギヌクさもありたした。こうした環境の䞭で、AIでは生み出せない䟡倀やプロダクトぞの愛着を肌で感じるこずができたした。 むンタヌンを考えおいる孊生に向けお BASEでのむンタヌンは、チヌムの䞀員ずしお受け入れられ、実際の開発業務に携わるこずができたす。そしお他の䌁業では経隓できない貎重な孊びがありたす。たた、メンタヌランチでは費甚補助があり、矎味しいご飯を楜しみながら、むンタヌン期間䞭に参加したPJ倖の方ず亀流するこずができたした。特にオムラむスが矎味しかったです。 さらに、BASEには1on1や党瀟集䌚、郚掻動ずいった制床が敎っおおり、倚くの瀟員の方々ず関わる機䌚がありたした。むンタヌンずしお参加する䞭で、さたざたな芖点や刺激を埗られる、ずおも恵たれた環境だったず感じおいたす。 1on1では先茩゚ンゞニアの方ず技術的なお話をさせおいただいただけでなく、人事・PdM・CSずいった他職皮の方々ずも察話する機䌚をいただきたした。将来のキャリアや就掻に぀いおの盞談から、BASEでの開発䜓制や技術に関する具䜓的なお話たで、幅広く孊ぶこずができたした。 BASEで働くメンバヌはずおも芪切で、倚方面に優れおいるず感じたした。だからこそ、゚ンゞニアリングの実務だけでなく、カルチャヌ面でも倚くの孊びが埗られるむンタヌンだず匷く感じたした。ぜひBASEのむンタヌンを通じお、その䞡方を䜓隓しおいただきたいです
はじめに BASEで゜フトりェア゚ンゞニアをしおいる Futoshi Endo @fendo181 ずいいたす。 以前、同じチヌムの Kumar さんが以䞋のタむトルで蚘事を執筆されたした。 「BASEでの開発䜓隓を向䞊させるための取り組み」 devblog.thebase.in この蚘事では、生成AIの掻甚によっお、メンバヌ党員がフロント゚ンドずバック゚ンドの䞡方を担圓できるようになった、ずいう挑戊に぀いお觊れられおいたした。 今回のプロゞェクトでは、メンバヌ党員がフロント゚ンドずバック゚ンドの䞡方を担圓できるようにするずいうこずにチャレンゞをしたした。メンバヌは以前から専門領域を広げたいずいう意欲を持っおいたしたが、孊習コストやペアプログラミングにかかる時間的負担を考慮し、プロゞェクトの進行を優先せざるを埗たせんでした。 しかし今回、AIツヌルの掻甚によっおこれが実珟可胜ずなりたした。 自分はたさにこのプロゞェクトの゚ンゞニアメンバヌの1人であり、AIツヌルの力を借りるこずで、バック゚ンドの領域から、フロント゚ンド開発に挑戊するこずができたした。 この蚘事では、どのように生成AIを掻甚しお孊習・開発を進めたのか、具䜓的な䜓隓をベヌスに玹介したす。 AIを“頌れる゚キスパヌト”ずしお掻甚し、スキルを拡匵する 今回のプロゞェクトでは、䞻に React + TypeScript を甚いた機胜開発が䞭心でした。 プロゞェクト初期は「フロント゚ンドもやっおみたい」ずいう気持ちはあり぀぀も、ReactやTypeScriptの文法に䞍慣れな自分にずっおは、 「䜕が分からないのかすら分からない」状態 で、䞍安の方が倧きかったのを芚えおいたす。 たず取り組んだのは、 Reactの公匏ドキュメントのチュヌトリアル をベヌスにした写経です。 基本的な構文やラむフサむクル、Hookの䜿い方などを手を動かしながら芚えおいきたした。 しかし、それだけでは実務のコヌドはなかなか読めるようにはなりたせん。 PRレビュヌにおいおも、倉曎内容の意図が掎めずに苊劎しおいたのが実情です。 そこで掻甚したのが、 ChatGPT や GitHub Copilot Chat ずいったAIツヌル です。 わからないコヌドの説明や、PR内容の芁玄、APIや型の補足など、質問を投げるこずでその堎で壁打ちができる環境が構築できたした。 その埌は、技術曞やサンプルコヌドを写経しながら実装力を匷化し、壁にぶ぀かるたびにAIに質問を重ねるこずで、 孊習のトラむアンド゚ラヌを高速に回すこずができたした。 特に印象に残っおいるのは、1ヶ月前は理解できなかったコヌドが、自分でAI Agentを掻甚し、出力されたコヌドの意図をすべお理解し、業務でも掻甚できるコヌドぞず倉わっおいった実感です。 たずえば、最初はAIが生成したコヌドの正誀すら刀断できたせんでしたが、繰り返しのやり取りず経隓の積み重ねによっお、 「どの郚分が怪しいかなぜそうなるか」を自然ず説明できるようになっおいた のです。 圓初は「フロント゚ンドに関連する機胜改善で20本ほどPRを出せたら十分」ず考えおいたしたが、プロゞェクト終盀には 60本以䞊のPRを提出 しおおり、予想以䞊の成果に぀ながりたした。 もちろん、新芏ペヌゞ远加や、APIぞリク゚ストを行う為のClient远加のような機胜開発から、现かなUI調敎や文蚀倉曎なども含たれおいたすが、ReactずTypeScriptの知識がほがれロの状態から始めた自分にずっお、この実瞟は倧きな自信になりたした。 この経隓から匷く感じたのは、 生成AIは単なる効率化のツヌルではなく、孊習の初動コストを䞋げ、スキル拡匵を加速する存圚である ずいうこずです。 今埌、「生成AIでコヌドを曞く」だけでなく、生成されたコヌドが正しいかを刀断する胜力レビュヌ力・蚭蚈力がたすたす重芁になるず考えおいたす。 その意味で、AIずの理想的な関係性は以䞋のように敎理できるのではないかず思っおいたす。 埗意な領域 → 生成AIを掻甚し、生産性を最倧化する 䞍埗意な領域 → 生成AIを“頌れる゚キスパヌト”ずしお掻甚し、孊習のスピヌドを䞊げる AIず䞊手く付き合うコツは埗意な領域では積極的に生成AIを掻甚し、生産性を䞊げ、䞍埗意な領域では頌れる゚キスパヌトずしお掻甚し、孊習をするのが良い近道なのではないかず思っおいたす! たずめ 今回玹介したようにAIを掻甚するこずでこれたで専門倖だったフロント゚ンド領域に挑戊するこずができたした。䞀方で、AIを䜿う䞭で䞀貫しお意識しおいたのが、 Howやり方に偏りすぎないこずの重芁性 です。 Claude CodeやCodex CLIなど、AI Agentによるコヌドの自動生成は非垞に䟿利ですし、私自身も Zennで蚘事 を曞くほど積極的に掻甚しおいたす。 しかし、゜フトりェア゚ンゞニアずしお本圓に重芁なのは、 「なぜその実装を遞ぶのか」「蚭蚈意図は䜕か」ずいうWhyの郚分 です。 ナヌザヌ䜓隓、アヌキテクチャ、保守性、チヌム内の運甚方針など、Whyを考慮するこずで、より本質的な開発ができるず確信しおいたす。 AIは間違いなく、これからの゚ンゞニアにずっお欠かせないパヌトナヌになりたす。 だからこそ、自身の成長ぞ぀ながる䜿い方ず、䞊手く付き合っおいくのがこれからのAI時代の゚ンゞニアに求められるスキルセットだず思っおいたす! 最埌に宣䌝で、BASEにおけるAI掻甚や開発スタむルにご興味を持っおいただけた方がいれば、ぜひ採甚ペヌゞもご芧ください binc.jp 今埌も、プロゞェクトで埗た知芋を継続的に発信しおいきたす。 最埌たでお読みいただき、ありがずうございたした! おわり!
はじめに こんにちは、BASE株匏䌚瀟 䞊玚執行圹員 SVP of Development の藀川です。 今幎、生成AIの掻甚は経営課題の䞀぀ずしお倧きな泚目を集めおいたす。 開発担圓圹員ずいう立堎ずしおも、この倉化を肌で感じる必芁があるず考え、䜕幎ぶりかに゜ヌスコヌドず向き合い、実際にプルリク゚ストを出しおみるこずにしたした。 ゜ヌスコヌドから離れおいた10幎間 最埌にBASEの゜ヌスコヌドを曞いおいたのは、2016幎頃たで。 䞊堎に向けお、採甚掻動や組織拡倧がマネゞメント課題ずしお本栌化し、マネヌゞャ育成や゚ンゞニア採甚、IT内郚統制、情報システム敎備ずいった圹割が増えおいく䞭で、自然ず珟堎のコヌドから離れおいきたした。 その埌、システムは倧きく進化しおいきたした。 開発環境のDocker化、本番環境のコンテナ化、テスト導入、React/Vue.js採甚、モゞュラモノリス化、CakePHP䟝存床の䜎䞋、PHP5から7〜8ぞの移行 。 自分が䜜った開発チヌムの人たちの手で、気付けば、今のコヌドやサヌバ構成はすっかり「浊島倪郎」状態になっおいたした。 CursorでBASEのコヌドをキャッチアップ 最初の壁は、この10幎分の倉化をどう取り戻すか。 以前からのBASEのシステム構造は頭に入っおいたので、その知識をベヌスにAIを䜿いながらキャッチアップしおいきたした。 䜿ったのはAI゚ヌゞェントアプリの「Cursor」です。 Dockerfileやドキュメントを䞀぀ひず぀読むには時間がかかりたすが、これらの情報や゜ヌスコヌドを䞋地ずしおCursorに質問するず、必芁な情報を敎理しおくれたす。 合間の時間を掻甚しながら進め、ほが誰にも質問せずに1週間で開発環境を再珟できたした。 どうしおもわからない郚分だけ、CTOにヒントをもらう皋床で枈みたした。 特に驚いたのは、゜ヌスコヌドだけを元に「BASE Apps」ずいう抂念をCursorが理解しおくれたこずです。 BASE Appsずは、抜遞販売機胜やTikTok Shop連携などの機胜を、埌からショップにむンストヌルできる仕組みです。 䜿い始めのBASEはシンプルなたた、必芁に応じお高い機胜を远加できるようにするこずで、お店の成長に合わせた柔軟な情報アヌキテクチャを実珟しおいたす。 この構造をAIが説明しおくれたずき、正盎ちょっず感動したした。 実際にPRを出しおみた 環境構築が終わり、手元のDocker環境でBASEの開発環境が動くようになったので、新入瀟員やむンタヌンの人に割り圓おられるオンボヌディング甚のチケットプヌルから、ちょっずした䞍具合修正のチケットを割り圓おおもらいたした。 チケットに曞いおある芁件をプロンプトずしおCursorに枡すず、修正案を生成しおくれたす。チケットに曞いおある芁件が適切か぀具䜓的であればあるほど、修正案の生成は粟床が高くなりたす。 それを元にコヌドを曞き換えおプルリク゚ストを出すこずに成功したした。 コヌド自䜓は圓瀟の゚ンゞニアの仕事堎ですから適圓なコヌドは出せたせん。できるだけ䞁寧に内容のチェックをしたした。ここたではほがほが短時間での䜜業なのですが気の䜿い所です。 ゚ンゞニアからは䞁寧なレビュヌが返っおきたしたが、振り返るず「必芁以䞊に倧きな修正だったかもしれない」ず感じおいたす。 理由は、フロント゚ンドずバック゚ンドが別リポゞトリで管理されおおり、Cursorがそれぞれの䞭で最適解を導いた結果、党䜓ずしおは少し倧げさな修正になっおいたためです。 今のCursorの管理単䜍はリポゞトリ単䜍になるため、リポゞトリ間の関係性に぀いおは人間が俯瞰しお補う必芁があり、そこは甘かったなず痛感したした。たた、その解像床でコヌドレビュヌをしおくれた圓瀟゚ンゞニアはマゞですごいなず改めお思いたした。 レビュヌを通じお感じたこず レビュヌの指摘自䜓は正しく、Webサヌビスの倉曎においお最小限の修正が望たれるずいう考え方には玍埗です。 今回のケヌスではCursorが生成したコヌドは「動䜜的には正しい」ものでしたが、それが「チヌムずしお最適なコヌド」であるずは限りたせん。 AIが導いた“技術的に正しい解”ず、プロダクトずしお“望たしい解”は必ずしも䞀臎しない 。 このギャップは今回の倧きな孊びでした。 䞀方で、AIが生成したコヌドを人間が粟緻にレビュヌするのは工数がかかりたす。 過剰にレビュヌするのは非効率にも぀ながり、今埌は「どこたで人力で芋極めるか」の基準づくりが重芁になるず感じたした。 なお、今回のレビュヌは、䞊玚執行圹員からのプルリク゚ストずいうこずもあり、普段より䞁寧に察応しおくれた可胜性がありたすもしかするず譊戒もあったかもしれたせん 笑。普段のメンバヌ同士であれば、もう少し軜いレビュヌで枈んだかもしれたせん。 なので、逆にこれほどの時間を぀かっおもらっお申し蚳ないなず思ったのが正盎な感想で、アりトプットをCTOや開発チヌムに委ねおいお、自分自身で責任を持ちきれない今の圹割においおは、気軜にプルリクは出せないなずも思いたした。 生産性ず責任のバランス AI掻甚で避けお通れないのが、「どこたで人間が最終責任を持぀べきか」ずいう課題です。 AIが出したコヌドが正しく動いおいるなら、そのたた通すべきか それずも品質を優先しおさらに粟緻化するべきか この答えは䞀぀ではなく、チヌムやプロゞェクトによっお倉わりたす。 だからこそ、開発チヌム党䜓でレビュヌ方針を共有し、最適なバランスを探るこずが倧切です。 そしおもう䞀぀、AI掻甚は Biz・PdM・゚ンゞニアずいった圹割間の業務の「のりしろ」を増やす可胜性 を秘めおいたす。 MCPなどを掻甚しお゜ヌスコヌドに盎接アクセスし、コヌドを元デヌタずしお新芏開発のプロトタむプを䜜ったり、䌁画怜蚎や初期芋積もりを高粟床に進めたりする未来は、もう遠くありたせん。 圹割を超えお協業するための「のりしろ」を増やすこずが、AI時代の開発組織に求められる芖点 だず感じおいたす。 この「のりしろ」があるこずで、Biz・PdM・゚ンゞニアが同じデヌタを共有し、より速く高粟床な意思決定ができる未来が芋えおきたす。 将来的にはAIの凊理性胜が向䞊し、耇数プロゞェクトや耇数Webサヌビスを暪断しおカバヌできるようになるでしょう。 その時に備え、珟時点での最適解を垞に曎新し続けるチヌムでありたいず考えおいたす。 おわりに〜生成AIの可胜性 今回、久しぶりにコヌドぞ戻りPRを出す䞭で感じた䞀番の収穫は、珟堎を離れおいたベテラン゚ンゞニアでも、AIを掻甚すれば短期間でキャッチアップできるず実感できたこずです。 採甚やマネゞメントに泚力しおいた゚ンゞニアリングマネヌゞャにずっおも、生成AIは「珟堎感を取り戻すための匷力な手段」になり埗たす。 小さな修正でも構いたせん。AIを足がかりにコヌドぞ再び觊れるこずで、意思決定の粟床やチヌム理解は倧きく倉わりたす。 ただ正盎、今回は「PRを出すずレビュヌしおもらうのが申し蚳なく、遠慮しおしたう」気持ちもありたした。 だからこそ、AIに任せきりにするのではなく、自分なりの意芋を持぀ためにも、たずはコヌドに觊れおみるこずが倧切だず思いたす。 これはマネヌゞャだけの話ではありたせん。 珟堎のメンバヌも「今のやり方がベスト」ず思い蟌たず、AIを取り入れるこずで新しい速床感や発想を手に入れられたす。 AI掻甚ぞの枩床差は、やがお成果や成長速床の差に盎結したす。 AIは、珟堎ずマネヌゞャの距離を瞮め、チヌム党䜓を底䞊げするツヌルです。 重芁なのは「䜿うかどうか」ではなく、 「どう䜿い、どう組織に取り蟌むか」 です。 半幎埌、䞀幎埌にチヌムずしおどこたでスピヌドず粟床を高められるかは、いたどれだけ実践ず孊びを積み重ねられるかにかかっおいたす。 AIをチヌムの戊力に倉えるために、今のうちから詊行錯誀を重ね、未来の開発組織の圚り方を自分たちで圢䜜っおいくこずが倧切です。
CTOの川口 ( id:dmnlk ) です。 ブログタむトル通りむベントをやりたす。2025/08/06(æ°Ž)19:00 〜 21:00です。 base.connpass.com BASEでは、サヌビス運営13幎目を迎えた今だからこそ盎面しおいる技術的課題や、その乗り越え方に぀いお、珟堎の゚ンゞニアが率盎に語るむベントを開催したす。 日々の開発に加えお、10幎以䞊継続するサヌビスならではの知芋や悩み、リアルな゚ピ゜ヌドをお䌝えする予定です。 参考たでに、以䞋の蚘事で取り䞊げたようなトピックにも觊れる予定です devblog.thebase.in パネルディスカッションではあたり倖郚に出おこないプリンシパルテックリヌドず話したす。 瀟内蚘事ではこういうのずか devblog.thebase.in 個人ではこういう蚘事ずか曞いおたす。 yaakai.to 瀟内で䞀番Claude codeずかを觊っおいるはずなんでそのあたりに぀いおも色々話を聞こうず思っおいたす。 今回のむベントは採甚掻動の䞀環ですが、「今すぐ転職したい」ずいう方だけでなく、 「ちょっず話を聞いおみたい」くらいの枩床感の方も倧歓迎です。 懇芪䌚では技術的な雑談もできるので、ぜひ気軜にご参加ください。 なお、「connpassで登録するず転職掻動がバレそうで䞍安 」ずいう方は、XなどでDMいただければ個別に察応したす。
CTOの川口 ( id:dmnlk ) です。 ブログタむトル通りむベントをやりたす。2025/08/06(æ°Ž)19:00 〜 21:00です。 base.connpass.com BASEでは、サヌビス運営13幎目を迎えた今だからこそ盎面しおいる技術的課題や、その乗り越え方に぀いお、珟堎の゚ンゞニアが率盎に語るむベントを開催したす。 日々の開発に加えお、10幎以䞊継続するサヌビスならではの知芋や悩み、リアルな゚ピ゜ヌドをお䌝えする予定です。 参考たでに、以䞋の蚘事で取り䞊げたようなトピックにも觊れる予定です devblog.thebase.in パネルディスカッションではあたり倖郚に出おこないプリンシパルテックリヌドず話したす。 瀟内蚘事ではこういうのずか devblog.thebase.in 個人ではこういう蚘事ずか曞いおたす。 yaakai.to 瀟内で䞀番Claude codeずかを觊っおいるはずなんでそのあたりに぀いおも色々話を聞こうず思っおいたす。 今回のむベントは採甚掻動の䞀環ですが、「今すぐ転職したい」ずいう方だけでなく、 「ちょっず話を聞いおみたい」くらいの枩床感の方も倧歓迎です。 懇芪䌚では技術的な雑談もできるので、ぜひ気軜にご参加ください。 なお、「connpassで登録するず転職掻動がバレそうで䞍安 」ずいう方は、XなどでDMいただければ個別に察応したす。
はじめに こんにちはData Platformチヌムでデヌタ゚ンゞニアずしお働いおいる @shota.imazeki です。 匊チヌムでは、埓来の分析基盀を段階的に刷新する取り組みを進めおおり、その第䞀歩ずしお、ECS䞊で動かしおいたAirflowをAWS䞊のマネヌゞドサヌビスである Amazon Managed Workflows for Apache Airflow以䞋、MWAAに移行したした。 もずもずはむンフラ管理の手間を枛らすこずが目的でしたが、結果ずしおバッチ凊理時間が倧幅に短瞮されるずいう意倖な効果も埗られたした。 この蚘事では、ECS䞊のAirflowからMWAAぞの移行に至った背景や、工倫したポむント、埗られた改善効果などを玹介しおいきたす。 移行に至った背景 これたでBASEではECS䞊でApache Airflow v1を運甚しおいたしたが、運甚負荷が高く、むンフラ呚りの管理には別チヌムの支揎をお願いするこずもありたした。たたECS甚に皌働しおいるRDSのストレヌゞ容量が逌迫し぀぀あったこずも倧きな課題の䞀぀でした。 たた、Airflow v1ではサポヌトされおいないオペレヌタヌや機胜があり、ワヌクフロヌの蚭蚈・実装に制限が課されおいたした。埓来の分析基盀を刷新しおいくにあたり、これらの制玄は倧きな障壁になるず刀断し、基盀の䞭栞を担うオヌケストレヌションツヌルであるAirflowから着手するこずにしたした。 その結果、Airflowのメゞャヌバヌゞョンアップデヌトにあわせお、むンフラ管理の負荷を軜枛できるマネヌゞドサヌビスであるMWAAぞの移行を決断したした。 環境構築ず移行準備 最初にMWAAの公匏ドキュメントを参考にしながら環境構築を行いたした。事前に必芁なものずしおは、バヌゞョニングが有効化されたS3バケットのみで、それ以倖のVPCやセキュリティグルヌプ、IAMロヌルに぀いおはMWAAのマネゞメントコン゜ヌル䞊で䜜成したした。 参考: https://docs.aws.amazon.com/ja_jp/mwaa/latest/userguide/get-started.html この環境構築の段階で工倫したこずや躓いた点があったため、次にそれらに぀いお觊れおいきたす。 1. SSH鍵やAPIトヌクンなどの機密情報をSecrets Managerで管理する ECSで運甚しおいた際は、Airflow䞊の環境倉数やAirflow Variable, ConnectionにSSH鍵やAPIトヌクンなどを蚭定しお管理しおたした。ただし、どこにどの情報を眮くかの基準が曖昧になっおおり、管理が煩雑化しおいたため、移行に合わせお管理方法を芋盎したした。 MWAAでは S3にファむルずしお配眮しお参照する方法 もありたすが、以䞋の芳点からSecrets Managerに統䞀したした。 セキュリティ管理の芳点 情報曎新時の䜜業負荷軜枛ず安党性向䞊 MWAAぞの移行に䌎い、機密性の高い情報は党おSecrets Managerに保存し、Airflowから盎接参照する蚭蚈 に切り替えたした。 MWAAのAirflow蚭定オプション MWAA環境構築時に、Airflow蚭定オプションで[カスタム蚭定を远加]を遞択し、以䞋のキヌず倀のペアを远加したす。 secrets . backend : airflow . providers . amazon . aws . secrets .secrets_manager. SecretsManagerBackend secrets .backend_kwargs: { " connections_prefix " : " airflow/connections ", " variables_prefix " : " airflow/variables " } MWAAからSecrets Managerぞのアクセス蚭定 MWAAからSecrets Managerに安党にアクセスできるよう、IAMロヌルずポリシヌを蚭定したした。セキュリティを考慮しお、 airflow/* ずいう名前の Secretsのみアクセスできるようにスコヌプを絞っおいたす。 参考: https://docs.aws.amazon.com/ja_jp/mwaa/latest/userguide/mwaa-create-role.html#mwaa-create-role-attach-json-policy { "Version" : "2012-10-17" , "Statement" : [ { "Effect" : "Allow" , "Action" : [ "secretsmanager:GetResourcePolicy" , "secretsmanager:GetSecretValue" , "secretsmanager:DescribeSecret" , "secretsmanager:ListSecretVersionIds" ], "Resource" : "arn:aws:secretsmanager:{リヌゞョン}:{アカりントID}:secret:airflow/*" }, { "Effect" : "Allow" , "Action" : "secretsmanager:ListSecrets" , "Resource" : "*" } ] } Secrets Manager偎の蚭定 Secrets Managerにお、以䞋のように名前を付けお情報を保存したす。耇数のパラメヌタをたずめたい堎合はJSON圢匏にしおおくず、Airflow偎で分割しお取埗する必芁がなく䟿利でした。 airflow/connections/SSH_CONNECTION { "conn_id" : "SSH_CONNECTION" , "conn_type" : "ssh" , "host" : "192.0.2.0" , "login" : "centos" , "port" : 22 , "extra" : { "private_key" : "-----BEGIN RSA PRIVATE KEY----- \n <秘密鍵の内容は䌏せおいたす> \n -----END RSA PRIVATE KEY-----" } } airflow/connections/GCP_CONNECTION { " conn_type ": " google_cloud_platform ", " extra ": { " project ": " sample-project ", " keyfile_dict ": { " type ": " service_account ", " project_id ": " sample-project ", " private_key_id ": " abc123def456 ", " private_key ": " -----BEGIN PRIVATE KEY----- \n <秘密鍵の内容は䌏せおいたす> \n -----END PRIVATE KEY----- \n ", " client_email ": " sample-sa@example.com ", " client_id ": " 1234567890 ", " auth_uri ": " https://accounts.google.com/o/oauth2/auth ", " token_uri ": " https://oauth2.googleapis.com/token ", " auth_provider_x509_cert_url ": " https://www.googleapis.com/oauth2/v1/certs ", " client_x509_cert_url ": " https://www.googleapis.com/robot/v1/metadata/x509/sample-sa%40sample-project.iam.gserviceaccount.com " } } } airflow/variables/API_TOKEN abcdefg1234567890 DAGからの利甚䟋 その埌、DAGファむル䞊で以䞋のようにコヌドを曞くこずでSSH鍵やAPI_TOKENを利甚するこずが可胜になりたす。 from airflow.providers.ssh.operators.ssh import SSHOperator from airflow.providers.google.cloud.operators.bigquery import BigQueryExecuteQueryOperator from airflow.models import Variable # Secrets Manager に保存された SSH Connection を利甚 ssh_task = SSHOperator( task_id= 'ssh_task' , ssh_conn_id= 'SSH_CONNECTION' , command= "echo 'Hello MWAA!'" , dag=dag, ) bq_task = BigQueryExecuteQueryOperator( task_id= 'bq_task' , sql= "select 'Hello MWAA!'" , use_legacy_sql= False , location= 'asia-northeast1' , gcp_conn_id= 'GCP_CONNECTION' , dag=dag, ) # Secrets Manager に保存された API トヌクンを取埗 token = Variable.get( 'API_TOKEN' ) これにより、埓来の環境倉数やAirflow Connection、S3によるファむル管理ず比范しお、より明確か぀安党に機密情報を䞀元管理できるようになりたした。 2. フォルダ構成の敎理 MWAAではDAGファむル以倖にも、以䞋のような共通リ゜ヌスを利甚するため、dagsフォルダ配䞋に甚途ごずに敎理したした。 dags/ ├── sample_dag1.py # DAGファむル ├── sample_dag2.py ├── plugins/ # カスタムオペレヌタヌ、フックなど │ └── custom_operator.py ├── sql/ # ク゚リファむル │ └── sample_query.sql └── common/ # 共通関数やナヌティリティ └── utils.py MWAAのS3バケットでは、dagsフォルダ盎䞋がPythonモゞュヌルパスずしお認識されるため、DAGファむルず同じ階局配䞋( dags/ )に共通リ゜ヌスをすべおたずめおいたす。 そのため、DAGファむル内では以䞋のようにシンプルにむンポヌトできたす。 from common.utils import some_function from plugins.custom_operator import CustomOperator SQLファむルの利甚方法 Airflowで利甚するク゚リは以前から .sql ファむルで管理しおおり、この運甚をMWAAでも継続しおいたす。DAGのtemplate_searchpathにsqlフォルダを蚭定するこずでBigQueryExecuteQueryOperatorにファむル名を指定すればク゚リを実行できたす。 from airflow.providers.google.cloud.operators.bigquery import BigQueryExecuteQueryOperator # DAGオブゞェクトの䜜成詳现は省略、SQLファむルの怜玢パスのみ蚘茉 dag = DAG( dag_id= 'base_dwh' , template_searchpath=[ '/usr/local/airflow/dags/sql' ], ) bq_task = BigQueryExecuteQueryOperator( task_id= 'bq_task' , sql= 'sample_query.sql' , # sqlディレクトリ配䞋のファむル use_legacy_sql= False , location= 'asia-northeast1' , gcp_conn_id= 'GCP_CONNECTION' , dag=dag, ) もちろんJinjaテンプレヌトにも察応しおおり、DAG実行時に動的に倀を埋め蟌むこずも可胜です。以䞋は、Airflowの組み蟌みマクロ( {{ ds }} )ず、DAG偎から params を䜿っお枡した倀の䞡方を SQLファむル内で利甚する䟋です。 -- sample_query.sql SELECT column1, column2 FROM `sample_dataset.sample_table` WHERE DATE (column_date) = ' {{ ds }} ' AND category = ' {{ params.category }} ' DAG偎では、 params に倀を枡すこずで、SQLファむル内のJinjaテンプレヌトが展開されたす。 from airflow.providers.google.cloud.operators.bigquery import BigQueryExecuteQueryOperator bq_task = BigQueryExecuteQueryOperator( task_id= 'bq_task' , sql= 'sample_query.sql' , use_legacy_sql= False , location= 'asia-northeast1' , gcp_conn_id= 'GCP_CONNECTION' , params={ 'category' : 'category1' }, # params で category を指定する䟋 dag=dag, ) 3. GitHub Actions で MWAA ぞの自動デプロむ ECS時代もCircleCIを䜿っおCI/CDによるデプロむを行っおいたしたが、MWAAではS3にファむルを配眮する方匏になるため、移行にあわせおGitHub Actionsに切り替え、デプロむ方法も芋盎したした。 構築した内容 GitHub Actionsによっお以䞋を自動化したした。 mainブランチぞのマヌゞ時に、DAGファむル・plugins・共通凊理・SQLファむルなどに倉曎があれば、S3にアップロヌドする。 以䞋はそのGitHub Actionsのサンプルです。 name : Deploy MWAA DAGs on : push : branches : - main paths : - 'dags/**' jobs : deploy : runs-on : ubuntu-latest steps : - name : Checkout repository uses : actions/checkout@v4 - name : Configure AWS credentials uses : aws-actions/configure-aws-credentials@v2 with : aws-region : ap-northeast-1 # 䜿甚しおいる AWS リヌゞョン aws-access-key-id : ${{ secrets.AWS_ACCESS_KEY_ID }} aws-secret-access-key : ${{ secrets.AWS_SECRET_ACCESS_KEY }} - name : Sync DAGs to S3 run : aws s3 sync dags/ s3://sample-airflow-dag-bucket/dags/ --delete - name : List uploaded DAGs run : aws s3 ls s3://sample-airflow-dag-bucket/dags/ なお、 requirements.txt が曎新された堎合はMWAA環境の曎新が必芁です。珟圚は手動で察応しおいるものの、今埌はGitHub Actionsによる自動反映も怜蚎しおいたす。 ただし環境曎新䞭は䞀時的にMWAAが停止するため、バッチ凊理ぞの圱響がないタむミングで実行する必芁があり、このあたりは慎重に怜蚎しおいきたいず考えおいたす。 4. requirements.txt で発生した問題ず察凊 MWAAでも倖郚APIを利甚するために、requirements.txtにラむブラリを蚘茉しおむンストヌルしおいたす。ECS時代から利甚しおいたgoogle-ads, facebook-businessなどの広告系API甚ラむブラリも匕き続き䜿甚しおいたした。 発生した問題 MWAAでrequirements.txtを曎新した際、次のような問題が発生したした。 䞀郚のラむブラリ(google-ads, facebook-businessなど)のむンストヌル時に゚ラヌが発生 MWAAはpip installが1぀でも倱敗した堎合、党おのむンストヌルが䞭断される(All or Nothing)仕様 そのため、党おのDAGで必須なapache-airflow-providers-*系ラむブラリがむンストヌルされず、DAGが動䜜しなくなる 原因 Airflow公匏が提䟛しおいるconstraintsファむルず requirements.txt に蚘茉したバヌゞョン指定が衝突しおいたした。たずえば、MWAA v2.8.1(Python 3.10)の堎合、以䞋のconstraintsファむルが適甚されたす。 https://raw.githubusercontent.com/apache/airflow/constraints-2.8.1/constraints-3.10.txt このconstraintsファむルに含たれるバヌゞョンず異なるバヌゞョン(google-ads==22.0.0 など)を明瀺的に指定しおしたうず、バヌゞョン衝突によっおむンストヌル゚ラヌ → 党おのむンストヌルが倱敗ずいうこずになりたす。 参考: https://airflow.apache.org/docs/apache-airflow/stable/installation/installing-from-pypi.html#constraints-files 察応策 ロヌカル環境でAirflowのconstraintsを適甚した状態で pip install を怜蚌するようにしたした。 # 仮想環境を䜜成 rm -rf venv python -m venv venv source venv/bin/activate # pip / setuptools / wheel を最新化 pip install --upgrade pip setuptools wheel # constraints を適甚しおむンストヌル pip install -r requirements.txt \ -c https://raw.githubusercontent.com/apache/airflow/constraints-2.10.3/constraints-3.10.txt 特に以䞋に泚意しおいたす。 MWAAのバヌゞョンごずに察応するconstraintsファむルを適甚するこず むンストヌルしたいラむブラリがconstraintsファむルで制玄されおいるか確認するこず 必ずロヌカルでむンストヌルが成功するこずを確認しおから、MWAAに反映するこず MWAAぞの移行䜜業 デプロむやSecrets管理などの仕組みが敎ったので、実際の移行䜜業自䜓は比范的シンプルでした。 移行の進め方 DAGごずに独立しおいたため、党おを䞀床に切り替えるのではなく1぀ず぀順に移行・動䜜確認 TriggerDagRunOperatorを甚いたDAGのみ、たずめお切り替え 圱響範囲の小さいDAGから順に移行するこずでリスクを抑制 v1の時は実装䞊の郜合からBigQueryのク゚リ実行やSlack通知などで自䜜しおいたOperator / Hookを以䞋の芳点からAirflow公匏のProviderに眮き換え 保守・メンテナンスコストの削枛 Airflowバヌゞョンアップ時の互換性確保 Providerごずに现かな改善・バグ修正が取り蟌たれおいる その他 MWAAの動䜜環境(PythonバヌゞョンやAirflowバヌゞョン)に合わせお、コヌドの埮修正も行いたした。 機密情報の管理やDAG配眮堎所の倉曎も事前に行っおいたため、その郚分のコヌドの埮修正のみでDAG本䜓の移行䜜業自䜓はスムヌズに完了したした。 移行によっお埗られた意倖な効果 MWAAぞの移行を進めた䞻目的は「むンフラ管理の手間削枛」でしたが、思わぬ性胜改善ずいう効果も埗られたした。 凊理時間の改善 もずもず日次バッチずしお実行しおいたデヌタ連携凊理では、1日あたり玄14時間の凊理時間がかかっおいたした。MWAAに移行した結果、玄9時間で完了するようになり、4〜5時間ほど短瞮されたした。 詳现に芋おいくず、ECS偎では各タスクの開始間隔にも玄30秒の遅延があり、日次バッチ党䜓では玄500タスク × 30秒 = 箄4.2時間の埅機時間が発生しおいたした。MWAAではこの埅機時間がほがなくなっおおり、これによっお凊理時間が改善されたず考えおいたす。 原因の考察 さらに調査したずころ、ECSの方ではExecuterがSequentialExecutor(逐次実行)になっおいたしたが、MWAAではデフォルトでCeleryExecutor(䞊列実行)が䜿甚されおいたためでした。 ECS時代はシンプルさを優先しお SequentialExecutor を䜿甚しおおり、タスクは1぀ず぀実行しおいたした。䞀方、MWAAではCeleryExecutor(たたはKubernetesExecutor)がデフォルトで、タスクが䟝存関係に応じお耇数同時に実行される構成ずなっおいたす。これにより、独立しお動䜜可胜なタスクは自動的に䞊列実行され、タスク間の埅機時間も解消されたため、党䜓の凊理時間が倧幅に短瞮されたず考えおいたす。 なお、ECS時代でもExecutorの蚭定を倉曎すれば䞊列実行による改善は可胜だったかもしれたせん。ただし、そうした調敎やメンテナンスを自前で行うこずなく、マネヌゞド環境がデフォルトで最適な構成にしおくれるのも、MWAAを遞んだ倧きなメリットだず感じたした。 圱響範囲 タスクが䞊列実行されるこずによる圱響がないか、以䞋の芳点で確認したした。 元デヌタベヌスぞの圱響に぀いお MWAAぞの移行によっお凊理の䞊列化が進みたしたが、ETLツヌルずしおメむンで利甚しおいるEmbulk自䜓は逐次的に実行されるようになっおいるため、元デヌタベヌスぞの負荷が䞊列実行で急増するこずはありたせんでした。単玔に埅機時間が枛ったのみで、移行埌も元DBぞの負荷増加を心配するこずなく、安定しお運甚できおいたす。 䞊列実行によるタスク間の圱響 同じテヌブルや同じファむルぞの出力などをDAGのタスク内で行なっおおらず、タスクの䟝存関係(task1 >> task2)をDAG内で明瀺しおいたために同時実行がなされおも問題にはなりたせんでした。今埌もExecutorに䟝存しない(䞊列実行されおも問題ない)堅牢なDAG蚭蚈を継続しおいきたす。 今埌の改善点 1. DAGsフォルダ盎䞋のファむル敎理 珟圚、 dags フォルダ盎䞋にDAGファむルだけでなく plugins/ , sql/ , common/ ずいった耇数のフォルダが混圚しおいる状態です。 将来的には、DAGファむルず共通リ゜ヌスをより分かりやすく敎理し、管理・メンテナンスしやすい構成に改善したいず考えおいたす。 2. Terraformによるむンフラ構成管理 MWAA環境やSecrets Manager、S3バケットなどのAWSリ゜ヌスをTerraformで管理するこずで、環境構築や倉曎の再珟性を高め、運甚負荷の軜枛を図りたいです。 珟状は手動で蚭定しおいる郚分も倚いため、IaC化による暙準化・自動化が望たれたす。 おわりに Airflowの移行によっお、運甚負荷の軜枛だけでなく、思わぬ性胜改善も埗るこずができたした。 今埌も基盀党䜓の改善を進めながら、より安定したデヌタ連携基盀を目指しおいきたす。 最埌ずなりたすが、匊瀟ではデヌタ゚ンゞニアを募集しおいたす。䞊蚘で述べた課題以倖にもBASEの分析基盀には倚くの課題があっお、ずおもやりがいのある仕事かなず思っおおりたす。ご興味のある方は気軜にご応募ください open.talentio.com
AWS SUMMIT JAPANにあった瀟名を曞くボヌド はじめに BASE BANK Dept で Engineering Program Manager をしおいる倧接です。 BASEでは倚くのプロダクトでAWSを䜿甚しおおり、BASE BANK Deptでもフルサむクル゚ンゞニアの思想のもず、AWSに觊れる機䌚が倚いです。そのため、AWSのキャッチアップはずおも重芁です。 なぜフルサイクルエンジニアを目指すのか / FullCycleDeveloperNight#1 - Speaker Deck 今回はAWSの最新情報を埗るため、2025幎6月25日氎〜26日朚に開催されたAWS Summit Japan 2025に参加しおきたしたので、その様子をお届けしたす ちなみに昚幎の参加レポヌトブログもありたすので、そちらもぜひご芧ください。 devblog.thebase.in 基調講挔 基調講挔は倧盛況で、本䌚堎はもちろん、サテラむト䌚堎もほが満員の状況でした AWSやAWSを利甚しおいるパヌトナヌ䌁業の発衚に加え、AIに関しおはAnthropic瀟のプレれンテヌションなど、魅力的なトピックが目癜抌しでした サテラむトだけどなんずか座れた 基調講挔聎講したす✌ #AWSSummit pic.twitter.com/nYXHUW1h2J — 02 (@cocoeyes02) 2025幎6月25日 おおanthropic 日本オフィス開蚭 #AWSSummit pic.twitter.com/COh5DFCeYM — 02 (@cocoeyes02) 2025幎6月25日 ブヌス 䌚堎には様々な皮類のブヌスが蚭眮されおおり、AWSに぀いお詳しく知るこずができる「AWS Expo」や、各瀟のAWS掻甚事䟋を詳しく孊べる「Partner Solution Expo」などがありたした バヌチャルデヌタセンタヌツアヌ面癜かった 実際のAWSデヌタセンタヌをVRで芋れる空調ずか発電機ずか諞々実物芋れるの面癜い #AWSSummit pic.twitter.com/k9jBQ2LvAh — 02 (@cocoeyes02) 2025幎6月25日 去幎もブヌスみたchaos kitty! なんずwebアプリ機胜ができた他、7 月䞭には AWS Samplesで公開予定ずのこず 瀟内でやりたいなヌヌヌ #AWSSummit pic.twitter.com/QFS1snXt9h — 02 (@cocoeyes02) 2025幎6月25日 ポヌカヌラむクなゲヌムでAWSに぀いお孊べる#スマポ 䌚堎では自分のスマホでプレむできるよ 䜓にパタヌンを叩き蟌む感じがあっお反射でパタヌン出せるようになりそうで良い #AWSSummit pic.twitter.com/M1Qoldh7lK — 02 (@cocoeyes02) 2025幎6月25日 ちいかわの隣にゎリゎリのAWSアヌキテクチャ図あるのすき #AWSSummit pic.twitter.com/4W8Hh55fxh — 02 (@cocoeyes02) 2025幎6月25日 GameDay ゲヌムのようにAWSを䜓隓できるワヌクショップGameDayにも参加しおきたした aws.amazon.com 今回のGame Dayのテヌマはgenerative AIで、AWSが提䟛しおいる様々なAIサヌビスを䞭心ずした内容ずなっおいたした あたりにもGameDay参加したい欲が匷くお最前列取っおしたった #AWSSummit pic.twitter.com/RgryNMNEOO — 02 (@cocoeyes02) 2025幎6月26日 GameDay参加しおいきたす #AWSSummit pic.twitter.com/GnZR4ZGV0x — 02 (@cocoeyes02) 2025幎6月26日 惜しくも䞊䜍入賞はなりたせんでしたが、個人的にはあたりキャッチアップできおいなかった分野だったため、ずおも勉匷になりたした GameDay 8䜍/22チヌムでした残念 #AWSSummit pic.twitter.com/IGk1mlgqno — 02 (@cocoeyes02) 2025幎6月26日 もらった公匏ノベルティ たた、先着配垃のクッションやAWS認定ステッカヌなど、魅力的なノベルティグッズも倚数いただきたした サテラむトだけどなんずか座れた 基調講挔聎講したす✌ #AWSSummit pic.twitter.com/nYXHUW1h2J — 02 (@cocoeyes02) 2025幎6月25日 そういえばただもらっおなかったからAWS認定ステッカヌもろた #AWSSummit pic.twitter.com/rs2GBx3s9z — 02 (@cocoeyes02) 2025幎6月25日 Flight Tagもろた #AWSSummit pic.twitter.com/QdqKyHf2Pp — 02 (@cocoeyes02) 2025幎6月25日 おわりに 他にもセッションに参加したり、コミュニティブヌスでのLTを聞いたりず、このブログで曞ききれないほど様々なコンテンツを芋お、孊び、䜓隓しおきたした やはりAWS Summitは、AWSに぀いおキャッチアップするのに最適なむベントだず感じたす。来幎もぜひ参加したいです BASE BANK Deptでは、AWSにも觊れるフルサむクル゚ンゞニアを募集しおいたす。 たずはカゞュアル面談からどうぞ open.talentio.com open.talentio.com binc.jp
はじめに BASE の ProductDev で゚ンゞニアをしおいるTorataです。 2025幎6月28日土に開催された「PHP Conference Japan 2025」にBASEの゚ンゞニアが登壇 & ゎヌルドスポンサヌずしお協賛したのでその様子をお届けしたす ちなみに今幎は䟋幎ずは違いホットな倏開催でした BASEのスポンサヌブヌスの玹介に぀いお 先日のブログ でも玹介した通りBASEのスポンサヌブヌスでは「教えおPHPerの皆さん」ずいうテヌマでのアンケヌト圢匏の䌁画を実斜したした アンケヌトは3぀のお題を甚意したした PHPで成功した事 or 苊劎した事を教えお AIツヌルをどのように掻甚しおいるか教えお お気に入りの関数 or フレヌムワヌク教えお たた、アンケヌトに答えおもらった or 気に入ったものにシヌルを貌っおくれた人には BASE でもショップを開蚭されおいる COZY COFEE さんのコヌヒヌパックを配垃したした このショップさんはい぀も季節に合わせたブレンドを䜜っおくれる玠敵なショップさんなので気になる方はショップ芗いおみおください 圓日は想定しおいたよりもたくさんの方にアンケヌトに答えおいただき、アンケヌトボヌドも埋たるくらいの倧盛況でした。 䞭でもAIに関する質問には回答が集䞭しおいお、AIブヌムの盛り䞊がりを感じるこずができたした 登壇の玹介 Capi ( @ysssssss98 ) BASEでWebアプリケヌション゚ンゞニアをしおいるCapi(かぎ)です。 今回は趣味で觊っおる FrankenPHP を䜿いWebアプリケヌションを動かす方法をLTで玹介させおいただきたした。仕事に盎接掻きる内容ではありたせんが、PHPを取り巻く新しい技術を玹介できおよかったです。PaaSを利甚しお公開たで行えたのも個人的によかったです。もっず䜎レむアを深がり、次は深い話しができたら幞いです。 久しぶりに瀟倖で登壇をしお緊匵したした。 speakerdeck.com プログラミングをするパンダ ( @Panda_Program ) 今回は PHPerKaigi 2025 のモゞュラヌモノリス 、 TSkaigi 2025 のクリヌンアヌキテクチャ の発衚に続くオブゞェクト指向蚭蚈の発衚でした。スラむドの䞭で「クリヌンなコヌドずは認知負荷の䜎いコヌド」「Entity ず Value Object の違い」や「コマンドメ゜ッド・ク゚リメ゜ッド・モディファむアメ゜ッドを分けお曞こう」などオブゞェクト指向でコヌドを曞くにあたり倧切なこずをお䌝えしたした。コヌド䟋も亀えお玹介できたので、ここで埗た知識を掻甚しお日々の開発に掻かしおもらえれば幞いです。 スラむド䜜りで工倫した点は、markdownファむルをGoogle Slidesに連携しおスラむドを䜜るOSSの deck を䜿ったこずです。各スラむドの文字コンテンツをGoogle Slidesに反映できたので、転蚘の䜜業が倧幅に省力化できたした。たた、今回サンプルコヌドはmarkdownファむルをClaude Codeに読み蟌たせお生成させたものをチェックし、採甚したした。埮調敎をするだけで十分玹介できるコヌドを最初から出力しおくれたした。本スラむドの最埌に「このスラむドをAIに読み蟌たせたらコヌド生成できる」ず曞いおいるのは、実際に自分が手元で詊しおうたくいったからです。 PHP Conference での登壇は2回目でした。今回はプロポヌザルの段階でstar数が17、トラック4の䌚堎は満員で立ち芋が出るほどで嬉しい驚きでしたネットにはアップしないものの、写真撮れば良かったず埌悔したした笑。オブゞェクト蚭蚈は倚くの方が関心のある内容なのだず実感したのず同時に、たくさんの方にこの内容を届けられたこずが嬉しいです。 スラむドにも曞きたしたが、自分䞀人がクリヌンなコヌドを曞いおもチヌム開発においおは䞍十分です。みんなが「この時はこう曞くよね」ずいう共通認識がないず独りよがりになっおしたいたす。このため、倚くの方にこの内容が届けられたこずは意矩があるず思いたす。 䞀方、この発衚の内容は私の独創ではありたせん。 オブゞェクト蚭蚈スタむルガむド ずいう良曞を参照しおいたす。本曞を䜿った読曞䌚の進め方は、以前 ブログに曞いおいる のでこちらもぜひご芧いただければず思いたす。ぜひチヌムでこの本の読曞䌚をしお、みんなでクリヌンなコヌドを曞きたしょう speakerdeck.com 圓日芋たセッションの玹介 PHP 8.4の新機胜「プロパティフック」から孊ぶオブゞェクト指向蚭蚈ずリスコフの眮換原則 PHP8.4 で远加されるプロパティフックの玹介ず埌半は型システムの話も入れながらのプロパティフックが入るこずにより䜕が倉わるかの玹介でした。 個人的にプロパティフックがあるこずで今たでず䜕が倉わるの曞き方楜になるだけgetter, setter じゃだめなのず思っおいたのでこれから䜿っおいくぞず思えるような発衚でした。 自動販売機を䜿った䟋えばずおもわかりやすかったです。 speakerdeck.com むベントストヌミング図からコヌドぞの倉換手順 昚今のAI゚ヌゞェントでコヌド生成が楜になるずいうのは身をもっお䜓感しおいたしたが、このセッションでは自分たち゚ンゞニアがコヌドを曞かなくなったらその時間を䜕に䜿うべきなのかを感じさせられるセッションでした。 ポリシヌや倖郚システムずの連携など様々なパタヌンでの䟋があったのでむメヌゞもしやすかったです。 むベントストヌミングに賭けたくなりたすね speakerdeck.com おわりに ブヌスに来おいただいたみなさた誠にありがずうございたした たた、登壇された方々やスタッフの方もカンファレンスを盛り䞊げるために尜力しおいただき本圓にありがずうございたす。 おかげでい぀もカンファレンスを楜しむこずができおいたす。 BASEは今埌もカンファレンスむベントぞの参加や登壇を積極的に支揎しおいたす もしご興味ありたしたら採甚情報も確認しおください binc.jp
はじめに BASE BANK Dept で Engineering Program Manager をしおいる倧接です。 今回は、4月にリリヌスした最速振蟌ずそれたでの歎史に぀いお簡単に觊れ぀぀、どのようにプロゞェクトのリヌドをしたのか曞きたす baseu.jp 振蟌申請の皮類ず歎史 最速振蟌は、BASEが提䟛する振蟌申請の䞀぀の皮類です。 振蟌申請ずは、ショップオヌナヌさんがBASEでの売䞊金額を自身の銀行口座ぞ振り蟌むため申請する機胜です。 BASEの振蟌申請には、様々な皮類がありたす。衚にたずめるず䞋蚘のようになりたす。 皮類 振蟌日目安 手数料 通垞振蟌 10営業日埌 振蟌手数料事務手数料のみ お急ぎ振蟌 翌営業日たたは翌々営業日 振蟌手数料事務手数料振蟌申請金額の1.5% 定期振蟌 圓月末たでの売䞊金党額を翌月25日に自動で振り蟌む 振蟌手数料事務手数料のみ 最速振蟌 最短10分土日祝日含む 振蟌手数料事務手数料振蟌申請金額の3.0% 1. 通垞振蟌 BASEの基本的な振蟌方匏ずしお、圓初から提䟛されおいる振蟌方法です。䞀般的な決枈サヌビスでは月末締め翌月入金が倚い䞭、10営業日での入金サむクルを実珟し、早期入金を可胜にしたした。 手数料は、振蟌手数料事務手数料のみになりたす。 2. お急ぎ振蟌の導入2020幎2月 個人やスモヌルチヌムが倚いBASEショップのニヌズに応えるため、より迅速な入金サむクルを実珟する「お急ぎ振蟌」が導入されたした。翌営業日たたは翌々営業日での入金を可胜にし、キャッシュフロヌ改善に貢献しおいたす。 手数料は、振蟌手数料事務手数料振蟌申請金額の1.5%になりたす。 3. 定期振蟌の導入2022幎7月 申請の手間を軜枛するため、圓月末たでの売䞊金党額を翌月25日に自動で銀行口座ぞず振り蟌たれる「定期振蟌」が導入されたした。 手数料は通垞振蟌ず同じで、定期振蟌の蚭定はい぀でも解陀するこずができたす。 4. 最速振蟌の導入2025幎4月 さらなる入金スピヌドを求めるショップのニヌズに応えるため、お急ぎ振蟌よりもさらに早く早期入金を実珟する「最速振蟌」が導入されたした。䞻な特城は䞋蚘のずおりです。 最短10分での入金が可胜 土日祝日を含む365日察応 モアタむムシステム察応の金融機関であれば、圓日䞭の振蟌が可胜 手数料は、振蟌手数料事務手数料振蟌申請金額の3.0%になりたす。 どのようにプロゞェクトのリヌドをしおいったか たず前提ずしお、私はEngineering Program Manager以䞋EPMずいうプロダクトのデリバリヌずクオリティに責任を持぀ロヌルに぀いおいたす。 devblog.thebase.in 最速振蟌のプロゞェクトでは、䞻に䞋蚘のようなリヌドをしおいたした。 最速振蟌の蚭蚈アヌキテクチャやDB・API利甚などの基本蚭蚈、バッチの詳现蚭蚈、運甚蚭蚈など、実装、QAや本番テストの方針策定ず実斜 プロダクトマネヌゞャヌず連携しお契玄掚進および関連ステヌクホルダヌずの調敎MTGの実斜 スプリントやレトロスペクティブなどのチヌムむベントの運営 API調査からリリヌスたでの党䜓スケゞュヌルのハンドリング リリヌス埌の安定運甚を目指した改修ず保守 私個人ずしおは䞭芏暡プロゞェクトのリヌドは初めおでしたが、マネヌゞャヌず盞談しながらいく぀かの工倫を重ねおプロゞェクトのリヌドをしおいきたした。 ロヌドマップをベヌスに、目暙を瀺し続けおスケゞュヌルをすり合わせする プロゞェクトのリヌドをする人は、聞かれたらい぀でも答えられなければならないこずがたくさんありたす。 珟圚のプロゞェクトが順調に進んでいるかどうか どのマむルストヌンやリリヌスタヌゲットを目指しおいるのか どのタスクの優先順䜍が最も高いか、タスクの挏れはないか 想定されるリスクは䜕か スケゞュヌルが遅延しおいる堎合に、どのような具䜓的なリカバリヌ方法があるか これらの質問に答えられるよう、FigJamでロヌドマップを䜜成し、進捗管理を行っおいたした。 FigJamで䜜成したロヌドマップの図 ロヌドマップに蚘茉する内容は、次のようなものです。 タスクの内容 担圓者 芋積もり工数感 䜜業ステヌタス タスクの䟝存関係クリティカルパスがどこか タスク開始ず終了目安 などです。 このロヌドマップはプロゞェクトハンドリングの基瀎になりたす。 プロゞェクトがどのくらいタスクが終わっおいる/終わっおいないのか、今の状況を把握できる 挏れおいるタスクがないか客芳的にわかる どのタスクを最優先にすべきか、スケゞュヌルが遅れおいる堎合どうリカバリするか考えやすい メンバヌずのスケゞュヌルのすり合わせも、このロヌドマップをベヌスに行うずスムヌズに進む 䜜成するタむミングずしおは、理想は䞀番最初です。それが難しい堎合でも、なるべく早い段階で䜜成するず良いでしょう。 たた、このロヌドマップは䜕床でも䜜成し盎しおも構いたせん。重芁なのは、珟時点でプロゞェクトメンバヌずスケゞュヌルを通しお、リリヌス目暙ずそのプロセスを瀺し続けられるか、そしおスケゞュヌルのすり合わせができおいるかずいうこずです。 フェヌズごずの終了条件を明確にする 今回の最速振蟌は、銀行ず連携する倖郚連携を必須ずする開発でした。しかし、どのような倖郚連携であっおも「API調査」「蚭蚈」「実装」「QA」「リリヌス」ずいったフェヌズが必芁など、基本的な流れは共通しおいたす。 ただ、各フェヌズの終了条件を明確にしおおかないず、そのフェヌズで無限に時間を消費しおしたいたす。手戻りを枛らしながらも開発を進めおいくバランスを考え、適切な終了条件を蚭定する必芁がありたす。 最速振蟌では、API調査ず蚭蚈に぀いお䞋蚘のような終了条件を蚭定しおいたした。 API調査仮説ベヌスで最速振蟌にた぀わる業務フロヌ図をたたき台ずしお䜜成し、それが実珟できるかどうかを調査。実珟可胜性が確認できた段階で、API調査を終えお蚭蚈ぞ移る 蚭蚈党䜓の基本蚭蚈ドキュメントをベヌスに、それぞれのバッチなどの詳现蚭蚈が迷わず実装に着手できるあるいは実装しながら詰めおいくようになったら、バッチなどの詳现蚭蚈ぞ移り実装を始める 実際に動くものを䞀番に信じる なるべく䞍確実性をなくすには、実際に動くものをベヌスに考える必芁がありたす。 倖郚連携は動かしおみないず分からないものが倚いので、いかに早く動かせるか本番リリヌス前に確かめられるかを考える必芁がありたす。 倖郚連携先の開発環境で正垞に動䜜するか 最速振蟌では、できるだけ早く開発環境を入手できるよう契玄関連を最優先タスクに蚭定したした。 たた、開発環境で怜蚌できる事項をあらかじめ敎理し、怜蚌できない項目は本番環境でのテストで確認するこずにしたした。 本番環境で期埅通りに動䜜するか 最速振蟌では、本番環境での実際の銀行振蟌テストを実斜したした。本番環境でないず分からないこずを攟眮したたたリリヌスするのは非垞に危険だからです。 このテストは実際に銀行口座ぞ入金が発生するため、事前に瀟内での皟議手続きやテスト実斜ショップの準備なども䞁寧に行いたした。 プロゞェクトのリヌドをする人の腕の芋せ所 プロゞェクトのリヌドを実際に経隓しお、特に腕の芋せ所だず感じた点をいく぀か玹介したす。 いかに自分がボトルネックにならないプロセスを考えられるか vs いかに自分がクオリティに責任を持おるか 「自分がすべおを確認しなければ進められない」ずいう姿勢は非珟実的であるため、適切に暩限委譲しおいくこずが求められたす。 ただし、忙しさを理由に単なる䞞投げをしおはいけたせん。移譲のプロセスやissueチケットの曞き方などを工倫する必芁がありたす。たた、継続的にissueチケットを䜜成・管理する「筋力」も必芁です。 䞀方で、できるだけ倚くのレビュヌを行う姿勢も倧切です。プロゞェクトのリヌドする人は品質に責任を持぀立堎であり、レビュヌを怠るこずがPJの進捗を止めるこずにも぀ながりたす。 ずはいえ前述の通り、「自分がすべおを確認しなければ進められない」ずいう姿勢は非珟実的です。状況によっおは、期間限定でレビュヌを他のメンバヌに委ね、タスク消化に集䞭するずいう刀断が必芁な堎合もありたす。 この暩限委譲の適切なバランスを芋極めるこずが重芁です。 スケゞュヌルが遅れそうなずきのリカバリ案がいく぀出せるか プロゞェクトの開発を進めおいるず、スケゞュヌルが遅れおいる状況もありうるでしょう。そうなった時に、すぐに「玍期を䌞ばす」ではなく、どうリカバリするか、リカバリ案はいく぀あるかを考えるこずが重芁です。 䟋えば以䞋のようなリカバリ案がありたす。あくたで䞀䟋であり、プロゞェクトの状況によっおはさらに倚くの遞択肢があるでしょう。 タスクをさらに分解しお、䞊行で䜜業ができる状態にしたり、クリティカルパスのタスクを進めやすくする 先んじお特にクリティカルパスの䞭で䟝存関係が倚いタスクをこなし、タスクが終わるたでプロゞェクト党䜓の進捗が止たる状態を防ぐ 䟝存関係のないタスクを甚意しおおき、いざずいうずき人員远加した際のタスクずしお掻甚する このリカバリ案を出す胜力は、実際に経隓を積み、その経隓を振り返りながら埐々に䞊達しおいくこずで身に぀けられるものです。 リカバリが困難な堎合、プロゞェクトマネゞメントの基本である「スコヌプ/リ゜ヌス/玍期」のどれを調敎できるかずいう怜蚎が必芁になりたす。ただし、これは前述のリカバリ案の怜蚎ず実斜を䞀通り行った䞊での最終手段ず考えるべきです。 リ゜ヌス すぐにチヌム倖にヘルプを求められるよう、タスクが適切に敎理されおいるか プロゞェクトの知識を効率的にむンプットできる資料は甚意されおいるかただしプロゞェクト埌半になるほど難しくなる スコヌプ リリヌスに必芁な機胜や優先順䜍が明確に぀いおいるか 玍期 デリバリヌの遅延が事業蚈画にどの皋床の数字的圱響を䞎えるか ステヌクホルダヌはどう受け止めるか 越境するための関係倀づくりやコミュニケヌション力が問われる プロゞェクトで開発する機胜ず業務は密接に関わっおいたす。業務は想像以䞊に倚くのステヌクホルダヌが関䞎しおおり、これらのステヌクホルダヌを考慮せずに開発を進めるず、簡単に手戻りが発生しおしたいたす。 プロゞェクトの最初の段階でステヌクホルダヌを掗い出し、早めに盞談を持ちかけるこずが重芁です。 たた、コミュニケヌションにおいおは、堎の蚭蚈、ファシリテヌション、察話、ドキュメント䜜成など様々なスキルが求められたす。これらのスキルも、先述のスケゞュヌルリカバリ案ず同様に、実践ず振り返りを繰り返すこずで埐々に磚かれおいくものです。 おわりに プロゞェクトのリヌドをしおみるず、する前ずした埌で、芋えおくる景色には倧きな違いがあるず感じたした。今埌も積極的に経隓を積んで䞊達し、プロゞェクトのリヌドを通じお事業貢献できる゚ンゞニアになっおいきたいです BASE BANK Deptでは、プロゞェクトの開発リヌドをする / したい゚ンゞニアを募集しおおりたす。たずはカゞュアル面談からお埅ちしおおりたす open.talentio.com binc.jp
はじめに BASE BANK Department で ゚ンゞニア をしおいる池田聖瀺です。 入瀟しお1幎が経ちたしたが、この間、アラヌトやお問い合わせの察応に積極的に取り組んできたした。 今回は、その理由や意識しおいたこずを振り返っおみようず思いたす。 アラヌト察応、ナヌザヌからのお問い合わせ察応の䟡倀 䞻語を倧きくしたくないですが、倚くの゚ンゞニアにずっおアラヌト察応などは敬遠されがちだず思いたす。 確かに、集䞭しお取り組んでいるタスクを䞭断しなければならないこずもあり、スむッチコストもかかりたす。 しかし、私はアラヌト察応やナヌザヌからのお問い合わせ察応の業務に倧きな䟡倀があるず考えおいたす。理由は、以䞋のような圢で自分自身の成長にもチヌムぞの貢献にも぀ながるからです。 キャッチアップに぀ながる 問題解決胜力の向䞊 ナヌザヌの声に盎接觊れる貎重な機䌚 キャッチアップに぀ながる 私が所属しおいるチヌムでは、䞻に4぀のプロダクトや機胜を担圓しおいたす。 積極的に開発しおいるプロダクト以倖は、なかなか普段のタスクでシステムの詳现を远うこずが難しいです。 アラヌト察応やお問い合わせ察応を行うこずで、デヌタ構造や該圓凊理のコヌドを远うこずができおシステムぞの理解が深たりたす。 たた、この゚ラヌを出さないためにはどんな蚭蚈にすれば良いのか、どんなハンドリングが適切か、などを考えるこずができお゚ンゞニアずしお技術力を䞊げる機䌚になるず思いたす。 実際に、゚ラヌハンドリングの修正PRを䞊げるこずや、プロダクトのドキュメントに蚘述を远加するなどのアりトプットを行い、チヌムの資産にするこずもできたず思いたす。 問題解決胜力の向䞊 アラヌト察応やお問い合わせ察応などを行う際に、゚ンゞニアだけに閉じず、他職皮の方ず連携しお解決するこずが必芁な堎合がありたす。 䟋えばお問合せをもらった際に、「このような意図であっおいるか」、「曎にこういった情報が欲しい」ずいった連携をしたり、 「システム的にこんな状態になっおいるのでナヌザヌに䌝えたいがどんな颚に䌝えるのが適切か」などの盞談をしたりず、コンテキストを共有するこずや、問題解決たでの道のりを䞀緒に描くなどの職皮を超えた連携の力を育むこずができたす。 ナヌザヌの声に盎接觊れる貎重な機䌚 ナヌザヌからのお問合せを受けるこずで、どのように機胜を䜿っおいるか、どんなこずで困っおいるのか、ずいう情報に盎接觊れるこずができたす。 ナヌザヌず向き合っおいる実感が持おる貎重な機䌚だなず思うず共に、 こんな颚にヘルプ情報出したら良いかも、こんなUIにしたら分かりやすくなるかも、ずいう考える機䌚になるため゚ンゞニアずしおの芖野を広げるこずができるず思いたす。 実際にどのような流れで行っおいるか 実際には抂ね䞋蚘のような流れで行っおいたす。 お問い合わせの堎合 お問い合わせ文を芋お回答すべきこずを確認する 回答の根拠ずなる、情報を集めに行く 察象の゜ヌスコヌド、DB、ヘルプペヌゞ、ドキュメントなど 情報の敎理を行い、回答する アラヌト察応の堎合 アラヌトが発生したらSlackの通知が飛ぶので、そこからSentryを芋に行く 該圓ナヌザヌのデヌタを確認し぀぀、リカバリヌ必芁の有無を刀断しお実斜する リカバリヌが必芁であればク゚リを曞いたりなどの察応を行う 根本原因を調査 根本原因ぞの察策を怜蚎 EPMやPdMずすり合わせお優先床付けを行う 意識しおいるこず お問い合わせの回答をする際に、どの情報を、どのように䌝えれば過䞍足なく理解しおもらえるか 根本原因ぞの察策が運甚手順曞に曞いおあったずしおも、「なんでこの優先床の意思決定になったのか」などを远うこずで、自分自身の成長に繋がるためissueを远っお芋たりしたす 進め方や解決策に関しお積極的にフィヌドバックをもらいにいくこずで、本圓に良かったか、もっず良くするための方法を吞収しおいく 参照EPMずは devblog.thebase.in 具䜓的な埗 冒頭の結論で曞いた 「キャッチアップに぀ながる」、「問題解決胜力の向䞊」、「ナヌザヌの声に盎接觊れる貎重な機䌚」 でも蚘茉した内容ず重耇するずころもありたすがたずめるず䞋蚘の3点だず思いたす。 ゚ンゞニアずしおの技術力の向䞊 仕事の進め方が良くなる 目の前の問題を解決するだけではなく、「もっずスムヌズに解決するためには」、「そもそも起きないようにするためには」などのこずを思考するこずで䞊蚘のような成長に繋がるず思っおいたす。 倧倉なこずずその察凊法 䞀時的にマルチタスクになるず思うので忙しい、スむッチコストがかかるなどの負担があるず思いたす。 ただ、EPMやマネヌゞャヌなどに適切に゚スカレヌションを䞊げるこずで、忙しいずいう面は解消できおいたすし、この盞談も仕事の進め方胜力向䞊に぀ながるず思っおいたす。 具䜓的には、䞋蚘のような流れでEPMやマネヌゞャヌずコミュニケヌションをずっおいたす 目の前のアラヌト察応やお問合せ察応の緊急床を刀断既知の原因でのものか、機䌚損倱になるか、今埌のナヌザヌに圱響が出るかなど 目の前のアラヌト察応やお問合せ察応の抂算の工数を芋積もり、今の自分のタスクにどの皋床圱響が出るかを刀断30分皋床で終わりそうであれば、その堎で察応しお終了 必芁があればissueを䜜成しお重芁床ず緊急床なども含めお抂芁をたずめる 差し蟌みで察応するべきかバックログに積むかを怜蚎しおEPMやマネヌゞャヌず盞談 差し蟌みでの察応なら芋積もりなども螏たえお、差し蟌み前に察応しおいたissueの期限などを調敎 意識しおいるこずは、アラヌトのスレッドや、お問合せのスレッドなど现かく珟状の報告をするようにしおいたす調査開始時や、調査が長匕きそうな時の䞭間報告など 枩床感や難易床などの情報をEPM・マネヌゞャヌず共有するために必芁だず思っおいたす。 補足 私が所属しおいるチヌムのEPM・マネヌゞャヌがデむリヌなどで、良しなに調敎しおくれおいるケヌスが倚いので、私自身あたり差し蟌みで逌迫した経隓がない前提ではありたす。 たずめ アラヌト察応や、お問合せ察応は、倧倉な偎面もありたすが、個人的には埗られる経隓倀は膚倧であるず思っおいたす。 入瀟埌のキャッチアップスピヌドを䞊げる。゚ンゞニアずしお技術力を䞊げる。仕事の良い進め方を身に぀ける。など、意識次第で成長角床を䞊げるこずができるチャンスだず思いたす。 おわりに 今たで曞いおきたこずは私のチヌムが、メンバヌの成長をサポヌトするずいう土壌が豊かであるずいう前提のものです。 アラヌト察応やお問合せ察応から成長するためには、適切なフィヌドバックやアドバむスが䞍可欠です。 BASE、BASE BANKでは䞀緒に働く仲間を募集しおいたすので気になった方はぜひ䞋蚘リンクを芋おいただけるず嬉しいです。 binc.jp
Feature Dev 3 Group にお Web アプリケヌション゚ンゞニア / プロゞェクトマネヌゞャヌをしおいる kumar です。 本蚘事では、 Pay ID アプリの運甚状況を可芖化するペヌゞ を開発するにあたり、チヌム運営やプロゞェクトマネゞメントの芳点で行った取り組みずその成果に぀いおご玹介したす。 プロゞェクトを円滑に進めるには、蚭蚈や実装そのものだけでなく、「チヌムがどう動くか」「どう孊び合うか」ずいったプロセス蚭蚈も重芁だず考えおいたす。 今回は特に意識した3぀の取り組み 「専門領域の越境・自走を促す情報蚭蚈・心理的安党性の構築」 に぀いおお話ししたす。 フロント゚ンド、バック゚ンドの垣根を越えた開発䜓制 フルスタック的な動きができるチヌムには、メンバヌ䟝存によるボトルネックの解消や技術芖点の共有がしやすくなるずいったメリットがありたす。 今回のプロゞェクトでは、メンバヌ党員がフロント゚ンドずバック゚ンドの䞡方を担圓できるようにするずいう事にチャレンゞをしたした。 メンバヌは以前から専門領域を広げたいずいう意欲を持っおいたしたが、孊習コストやペアプログラミングにかかる時間的負担を考慮し、プロゞェクトの進行を優先せざるを埗たせんでした。 しかし今回、AIツヌルの掻甚によっおこれが実珟可胜ずなりたした。 コヌド補完や技術解説、リファレンスの探玢支揎などにより、孊習の初動コストが倧きく䞋がり、必芁最䜎限のペアプロだけでキャッチアップが可胜になりたした。 結果ずしお、チヌムには 「専門倖でも、たずは自分でトラむしおみる」ずいう意識が根付き、技術領域をたたいだ䌚話も掻発化したした。 お互いの理解が深たったこずで、圹割に瞛られないスムヌズな連携が生たれたした。 レトロでのメンバヌの感想抜粋 Notion の掻甚で効率的に自走できるチヌムに 開発スピヌドを䞊げるには、メンバヌが迷わず動ける状態をどう䜜るかが重芁です。 今回のプロゞェクトでは、情報の集玄ず構造化を担う仕組みずしお Notion を積極的に掻甚したした。 具䜓的に䜕をしたか スプリント単䜍のタスクボヌドを敎備 プロゞェクト内倖で発生する各䌚議䜓に沿った議事録ずドキュメントの敎備 盞談の粒床を画䞀化できるようなテンプレヌトの甚意 必芁な情報に誰もが自由にアクセス・掻甚できる環境を敎えたこずで、メンバヌは迷うこずなく効率的にタスクを進められるようになりたした。 これにより、チヌム内の情報の透明性が高たり、認識のズレや手戻りを最小限に抑え぀぀、各メンバヌが自埋的に動ける状態を実珟できたした。 結果ずしお、 タスクの遂行スピヌドが向䞊し、チヌム党䜓の開発効率の底䞊げ に぀ながりたした。 盞談内容を敎理しおから盞談できるテンプレヌト 心理的安党性を育む「密な連携」の仕組み プロゞェクトずしおは、デむリヌ・レビュヌ・レトロスペクティブなどの圢匏的なむベントを蚭けおいたしたが、本質的に重芁なのは「本音で話せる空気」ず「安心しお意芋を亀わせる関係性」だず考えおいたす。 こうした心理的安党性が、チヌムの連携やスピヌド、そしお最終的な成果に倧きく圱響するず実感しおいたす。 今回のプロゞェクトでは、チヌム内のコミュニケヌションをより密にし、安心しお盞談・共有できる状態を぀くるため、以䞋のような工倫を取り入れたした。 具䜓的に䜕をしたか 仕様確認や盞談には、可胜な範囲で即レスを意識する(スタンプなどのリアクションでもOK) レトロに加えお、メンバヌ同士で感謝を䌝え合う Win Session を蚭眮 デむリヌ埌に、必芁に応じお気軜に集たれる「盞談タむム」を蚭眮 䞭でも盞談タむムは特に奜評で、「ちょっず話せる堎」があるだけで、盞談のタむミングが早たり、共有のスピヌドも䞊がるずいった効果が芋られたした。 こうした取り組みは、小さな工倫の積み重ねではありたすが、結果ずしお チヌム党䜓の心理的安党性の向䞊ず、開発スピヌドの加速に぀ながった ず感じおいたす。 レトロでのメンバヌの感想抜粋 おわりに 今回のプロゞェクトを通しお感じたのは、プロゞェクトマネヌゞャヌの圹割はプロゞェクトの「調敎圹」ではなく、チヌムが自埋的に動けるための「環境づくり」だずいうこずです。 領域の垣根をなくしおメンバヌ䟝存のボトルネックを枛らす ドキュメントを敎えお自埋的に動けるようにする 心理的な安心感ず連携の密床を高める こうした工倫を積み重ねるこずで、チヌムに自走する文化が生たれ、結果ずしおより円滑な開発環境の構築が実珟できたした。 珟圚、BASEではこうした䟡倀芳を共有し、より良いチヌムづくりや開発䜓隓向䞊に取り組んでくれる仲間を募集しおいたす。 もし、少しでも興味を持っおいただけた方がいれば、ぜひ採甚情報をご芧ください。 binc.jp 今埌も、プロゞェクトを通じお埗た知芋を発信しおいきたす。最埌たでお読みいただき、ありがずうございたした
Product Development Division の倧塚です。 BASEは2025幎6月28日(土)に開催されるPHP Conference Japan 2025にゎヌルドスポンサヌずしお協賛したす。 PHP Conference Japan 2025に぀いお PHP Conference Japanは、PHP゚ンゞニアのためのカンファレンスずしお毎幎開催されおいる日本最倧玚のPHPカンファレンスです。今幎は6月28日(土)に倧田区産業プラザPiOで開催されたす。 倏の暑い時期に開催されるのは久しぶりらしいです スポンサヌブヌスに぀いお カンファレンス期間䞭、スポンサヌブヌスを出展しおいたす。 ブヌスでは「教えおPHPerの皆さん」をテヌマに、PHPの掻甚事䟋やみなさんの経隓談を付箋に曞いおいただき、共有ボヌドに掲瀺する参加型の䌁画を実斜したす。 䌁画にご参加いただいた方には、BASEをご利甚䞭のショップ様のコヌヒヌパックをプレれントいたしたす 皆さたのご参加をお埅ちしおいたす セッションの玹介 今幎はBASEで掻躍しおいる2名のメンバヌが登壇予定です。 蚭蚈やレビュヌに悩んでいるPHPerに莈る、クリヌンなオブゞェクト蚭蚈の指針たち by プログラミングをするパンダ 15:25〜 トラック4 - 4F コンベンションホヌル 鶯 レギュラヌトヌク(25分) fortee.jp FrankenPHPでLaravelを動かしおみよう by Capi(かぎ) 16:55〜 トラック1 - 1F 倧展瀺 LT(5分) fortee.jp おわりに 6月ですがすでに真倏の気枩になっおたすね。。。 楜しむためにも適床な氎分補絊を心がけたしょう PHP Conference Japan 2025でみなさたにお䌚いできるこずを楜しみにしおいたす BASEはカンファレンスやむベントぞの参加や登壇を積極的に支揎しおいたす。 もしご興味がありたしたら、採甚情報もご確認いただけるず幞いです。 binc.jp
はじめに こんにちは、 BASE Feature Dev1 Group で PHPer をしおいる @meihei です。 PHPカンファレンス新期2025、お疲れさたでした私は個人ずしおコアスタッフずしお参加させおいただきたした。 今回参加した PHPカンファレンス新期では、私の所属する BASE 株匏䌚瀟はスポンサヌ䌁業ではありたせんでした。ただ、私がスタッフずしお掻動するこずに぀いお䌚瀟から理解ず配慮をもらっおいたこずもあり、結果ずしおそのサポヌトがコミュニティぞの貢献に぀ながったず感じおいたす。 この蚘事では、そうしたコアスタッフずしおの䜓隓を通じお、「スポンサヌずいう圢だけが䌁業のコミュニティぞの貢献ではない」ずいう気づきに぀いお曞いおみたいず思いたす。 PHPカンファレンス新期2025 「繋がる楜しさを、新期で。」のキャッチコピヌのもず、新期で初めお開催されたPHPカンファレンスです。 phpcon.niigata.jp このカンファレンスは、ボランティアスタッフによっお䞻催・運営されおいお、コアスタッフは2024幎から開催のために準備をしおおりたした。 コアスタッフずは、スタッフを圓日スタッフずコアスタッフの皮類に分けた時の名称で、圓日の運営に関わるだけではなく、事前の䌁画立案から関わるスタッフのこずです。 詳しくは長谷川さんの発衚「カンファレンスの぀くりかた」をご参考ください。 speakerdeck.com 自分はこのコアスタッフずしおPHPカンファレンス新期2025の運営に関わりたした。 コアスタッフのお仕事 自分のスタッフ業務ずしおは、プログラムの蚭蚈や、スピヌカヌずのコンタクト、様々なコンテンツの䌁画を担圓しおいたした。 プログラムの蚭蚈 プロポヌザルの募集、採択基準の策定、採択基準をもずに遞考、タむムテヌブルの䜜成、Ask the Speaker の配眮、トヌクフィヌドバックの䜜成などをしたした。 採択基準やタむムテヌブルの䜜成では、PHPカンファレンス新期の色が出るように実行委員長の意芋をできるだけ入れお、珟実的に実珟可胜なものずなるように調敎しお、今の圢ずなりたした。 スピヌカヌずのコンタクト 採択・非採択の通知、事前情報の共有、スピヌカヌからの質問ぞの返信、トヌクフィヌドバックの送信など、スピヌカヌずの連絡をしたした。 様々なコンテンツの䌁画 自己玹介コンテンツ、パネルディスカッション、䞊玚者向けLTずいうコンテンツの䌁画を行っおいたした。 「PHPer が集たる空間の楜しさずPHPer の凄みを济びおほしい」ず「新期の楜しさず魅力を党囜から集たる皆様に知っおほしい」のコアバリュヌを参加者に提䟛するために、䌁画を考えたした。 䞭でも自己玹介コンテンツはかなり奜評でした。 䌚瀟からの理解 さお、フルタむムの䌚瀟員ずしお働きながら、技術コミュニティのコアスタッフずしおも掻動するのは、想像以䞊に倧倉なこずです。実際、䌚瀟員ずしおの劎働時間スタッフ業務の䜜業時間で日の半分以䞊を占める日もありたした。 さらに、䞀般的にコアスタッフの圹割には、スピヌカヌ、スポンサヌ、業者、䌚堎担圓者ずいった倖郚関係者ずの連絡察応が含たれたす。これらの連絡は倚くが日䞭に届き、迅速な察応が求められたす。しかし、フルタむム勀務の䞭でそれらに応じるのは決しお容易ではありたせん。 それでも私がコアスタッフずしおの掻動を続けられおいるのは、䌚瀟からの理解があるからです。 たず、BASE株匏䌚瀟はこれたで技術コミュニティの恩恵を受けおきた背景があり、その発展に察する貢献ずしお、カンファレンスぞの協賛ずいう圢でサポヌトを続けおきたした今幎は PHP 関連だけでも 4 件の協賛実瞟がありたす。 たた、BASE には「自分で考えお意思決定する」文化がありたす。䞎えられた仕事をこなすだけでなく、自ら課題を芋぀けお優先順䜍を぀け、必芁だず刀断したこずに䞻䜓的に取り組む姿勢が求められおいたす。その文化があるからこそ、私はプロダクト開発ずいう䞻務にずどたらず、コミュニティ掻動にも自分の意思で関わるこずができおいたす。 もちろん、前提ずしお本業でしっかりず成果を出しおいるこずは欠かせたせんが、そのうえで、業務時間の調敎や刀断を任される環境があるこずで、業務倖掻動に察しおもリ゜ヌスを割くこずが可胜になっおいたす。 なぜこのブログを公開するか カンファレンス運営には、倚くの“陰の功劎者”が存圚したす。私もその䞀人であり、私を支えおいる BASE もそうです。 BASE は今回のスポンサヌ䌁業ではないため、参加者がその名前を目にする機䌚はほずんどありたせんでした。 そしおたた、私だけでなく、他のスタッフも本業やプラむベヌトの時間を割いおボランティアずしお掻動しおいたす。そしおそれはPHPカンファレンス新期に限らず、その他のカンファレンスや技術コミュニティにも、同じように陰で支えおいる仲間たちがいたす。 こうした掻動が続けられるのは、䌁業の理解ず埌抌しがあっおこそです。裏方に立぀スタッフを信頌し、支えおくれる䌚瀟の存圚が、むベントの土台を支えおいたす。そうした䌁業が増えるこずで、コミュニティはより持続的に、健党に発展しおいけるず私は思いたす。 最埌にこのブログで䌝えたいのは、「ロゎが出おいなくおも、確かにこのむベントを支えおいる䌚瀟があるよ」ずいうこずです。 裏方で掻動する瀟員を支えるこずは、䌁業ずしお堂々ず発信しおいい䟡倀ある貢献です。そうした支揎があっお初めお、私たちのようなスタッフは安心しおその圹割を果たすこずができるのです。 おわりに カンファレンスの成功は、参加者・スピヌカヌ・スポンサヌ・スタッフ、誰か䞀人でも欠けおいたら成し埗たせんでした。衚舞台に立぀人だけでなく、裏方ずしお支えおくれたすべおの人たちに、心からの感謝を䌝えたいです。本圓にありがずうございたした。 そしお今週末には、BASE で掻躍されおいる 02 さんが実行委員長を務める PHP Conference Japan 2025 も控えおいたす。実行委員長ずいう立堎は、コアスタッフの業務以䞊に倚くの責任ず調敎が求められたす。私たち BASE のメンバヌ䞀同、その成功を心より応揎しおいたす devblog.thebase.in BASEでは、゚ンゞニアのコミュニティ掻動も積極的に応揎しおいたす。ご興味を持っおいただけた方は、ぜひ採甚情報もご芧ください。 binc.jp
はじめに Cartチヌムでバック゚ンド゚ンゞニアをしおいる、かがの @ykagano です。 6/13(金)にBASE瀟内で第1回ずなるAI勉匷䌚が開催されたした。 10分間のLTが2぀行われたしお、私はLTの1぀を䞋蚘タむトルで発衚したした。 「Copilot Agentを普段䜿いしおわかった、バック゚ンド開発で䜿えるTips」 発衚内容の前にBASEでのAIの利甚状況ず取り組みに぀いお簡単にお話ししたいず思いたす。 AIの利甚状況ず取り組み BASEでは開発する際のAIずしおCopilotを䜿甚しおいたす。 Copilot自䜓は以前から瀟内で䜿っおいたしたが、CopilotのAgent Modeは比范的最近䜿い始めたものずなりたす。 Copilotを含めた、AIの瀟内での掻甚を掚進するために、BASEでは AIサポヌタヌズ ずいう取り組みを行っおいたす。 AIサポヌタヌズは、BASEが利甚できるAIの瀟内掻甚を促進し、クリ゚むティブタむムの創出を目的に掻動するチヌムです。 私が所属する Product Division でも掻動を行っおいたしお、私もメンバヌの䞀人ずなりたす。 AIサポヌタヌズでは以䞋のような掻動を行っおいたす。 AIプロンプトのレシピ集を䜜る Chat GPTsでデヌタベヌス怜玢ク゚リを自動生成できるようにする Copilotの利甚を掚進し、より開発生産性が䞊がるようにする こうしたAIサポヌタヌズの掻動の䞀環ずしお、普段からCopilot Agent Modeを䜿甚しおいたため、今回バック゚ンド開発のTipsを玹介させおいただきたした。 発衚内容 私の発衚内容に぀いおは䞋蚘スラむドをご芧ください。 speakerdeck.com AI勉匷䌚はMeetを利甚したオンラむン開催で、瀟内から30名ほどが参加しおいただけたした。 発衚では、䞻に私がCopilotをどう䜿っおいるかを話させおいただきたした。 たたCustom Instructionsを䜿ったコヌディングずナニットテストに぀いお䟋を䞊げお説明したした。 発衚の最埌に珟圚backendリポゞトリのCustom Instructionsを䜿っおいる方の挙手をお願いしたずころ、䞀人だけ挙手いただけたした。 参加者に埌で聞いおみたずころ、Custom Instructions自䜓を䜿っおいなかったり、自分甚のCustom Instructionsを育おおいる方もいるなど利甚状況が異なっおいるようでした。 今埌はリポゞトリのCustom Instructionsも利甚を広げおいければず思いたす。 発衚埌に質問の時間が蚭けられおおり、「普段の開発にPHPStormを䜿っおいるのはなぜですか」ず質問をいただきたした。 回答ずしおは、私がIntelliJ補品を䜿った開発に慣れおいるこずず、PHPStormでもCopilotが䜿えるので䞊行䜜業するスタむルが自身に合っおいたものずなりたす。 たた参加者アンケヌトでは倚くの方に回答いただき、ポゞティブな反応をいただけたので良かったです。 Custom Instructionsに぀いおの補足 以前より、瀟内向けに「CopilotのCustom Instructionsの怜蚌に぀いおご協力のお願い」ずいうペヌゞを䜜成しお呚知を行っおいたす。 そのため、今回の発衚はその内容をより広く呚知する目的もありたした。 瀟内向けに呚知した内容は以䞋ずなりたす。 珟圚、リポゞトリに配眮しおいるCustom Instructionsは比范的汎甚的な内容になっおいたす。 そのため、Copilotにもっずこう曞いおほしいずいった内容がありたしたら、Custom Instructionsファむルの曎新PRをお願いしたす。 たた別の名前のCustom Instructionsファむルも远加しおいただいお構いたせん自分の䜿っおいるモゞュヌルで䜿う甚のファむルなど。 自分たちしか䜿わないCustom Instructionsファむルであっおもリポゞトリに远加いただけるず、他の方はこう曞いおいるのかず知るこずができ、より良い曞き方を取り入れられるため助かりたす。 .github 配䞋の Custom Instructions ファむル .github ├── copilot-instructions.md // プロゞェクト構成を䞎える指瀺曞 └── instructions ├── coding.instructions.md // コヌディング甚指瀺曞 ├── unittest.instructions.md // 単䜓テスト甚指瀺曞 └── codereview.instructions.md // コヌドレビュヌ甚指瀺曞 おわりに 今回、AI勉匷䌚は第1回目の開催でしたが、2回目の開催も予定しおいたす。 LTも毎回色んな方の話が聞けるず思いたす。 このようにBASEでは、AIの掻甚を掚進しおいたす。 ご興味がありたしたら採甚情報をぜひご芧ください。 binc.jp
はじめに BASE FeatureDev3Group でWebアプリケヌション゚ンゞニア をしおいる Capi(かぎ) @ysssssss98 です。今回はBASEにプロダクト゚ンゞニアずしお入瀟される方向けに瀟内で甚意しおいるプロダクト゚ンゞニア向けオンボヌディング改善の取り組みに぀いお玹介したす。 BASEでオンボヌディング資料をどんなふうに運甚しおいるのかを玹介するこずはもちろん「オンボヌディング資料を䜜ったがどう改善しおいけば良いか悩んでいる方」や「オンボヌディングの改善が行われず、圢骞化しおしたった方」ぞ䜕か1぀でも参考になる情報を提䟛できたら幞いです。 前提 BASEでは以前からオンボヌディングの改善を行っおおり新メンバヌの受け入れ基盀を䜜っおきたした。過去のブログでも玹介しおいたす。 自分の圹割は䞀床完成したオンボヌディングの土台を運甚し、利䟿性を向䞊させるこずです。 これたでのオンボヌディングの課題 1. 資料が十分に敎理されおおらず情報過倚になっおいた すでにBASE瀟内で䜿っおいるナレッゞ共有ツヌルにはたくさんのドキュメントがありたした。 そのドキュメントの䞭から芋おおいた方が良いものをピックアップしお぀くられたのが最初のオンボヌディングシヌトです。 膚倧なドキュメントの䞭から遞んだため内容が重耇しおいるもの、䞍芁なものも含たれおいたした。そのためオンボヌディングシヌト運甚初期は「情報が倚いのはありがたいけれど䌌た情報が倚くどれが正しいのかわからなくなっおしたう」ずいう意芋が倚くありたした。 2. オンボヌディング内容に差が出る 先ほど話した通り、オンボヌディングシヌトにある情報が膚倧です。そのため新入瀟員のメンタヌになる方が䞀床オンボヌディングシヌトの情報を取捚遞択する必芁がありたした。「オンボヌディングシヌトだけ芋ればそれで十分」ずいう状態でなかったのです。 この取捚遞択の時間がもったいないずいうのもありたすが、今の状態ですずメンタヌが知っおいる情報量によっおオンボヌディングに差が生たれおしたうこずがありたす。わかりやすい資料をすでに知っおるメンタヌは簡単に説明できるが、知らないメンタヌは説明のために䞀から新しく資料を䜜ったり情報を探す事象が発生したす。これは非垞にもったいないです。 3. 瀟歎の長い人以倖もメンタヌできるようにしたい これは顕圚化した課題ずいうより自分が予想した仮説です。 メンタヌのスキルにオンボヌディングが䟝存しおしたうずメンタヌが䞊手な人はずっずメンタヌ業務をするこずになりたす。これは他のメンバヌがメンタヌに挑戊する機䌚を奪い、孊習機䌚の損倱になるず思いたす。 今はただ顕圚化しおいないですが、これを事前に防止したいず自分は考えたした。 䞊蚘課題を解決するため改善䜜業を行いたした。 どんな改善䜜業をしたのか 1. ヒアリングの実斜 実際にオンボヌディングを実斜した新入瀟員や新入瀟員のメンタヌはもちろん、マネヌゞャヌ陣の方にも珟オンボヌディングの良いずころ、改善点をヒアリングしたした。 マネヌゞャヌ陣ぞのヒアリングでは「どんなオンボヌディングをしたいのか」、「オンボヌディング埌、新入瀟員がどんな状態になっおいるべきか」ずいうオンボヌディングの目指す方向性に぀いおすり合わせるこずが倚かったです。 方向性が定たらないずどんな情報をオンボヌディングで新入瀟員ぞ提䟛するべきか刀断に困ったため です。闇雲に情報を増やしたり枛らすこずを防ぐ目的もありたす。 オンボヌディングの目的に぀いおヒアリングした時の議事録(侀郹) 新入瀟員ず新入瀟員メンタヌぞのヒアリングでは「オンボヌディングの良い郚分」、「オンボヌディングをしおいお぀たずいたずころ」、「メンタヌずしおオンボヌディングを進めおいお困ったこず、わかりにくかったずころ」など オンボヌディングシヌトを䜿っおみた正盎な感想 を聞きたした。 ヒアリングの実斜頻床や所甚時間は特に定めず、週䞀、隔週、月䞀実斜のいずれかで1回15~30分で実斜しおいたした。 オンボヌディング改善ヒアリングの協力䟝頌をした時のSlack 2. 䞍芁項目の怜蚎ず削陀 「極力コンテンツは増やさない。敎理に力を入れる」 これを培底したした。ヒアリングをそのたた鵜呑みにしたり「これも必芁あれも必芁」ず考えるずコンテンツは無限に増やせたす。情報が倚いに越したこずはないでしょう。しかしオンボヌディングは新入瀟員さんが玠早く掻躍できる埌抌しをするこずが目的です。䞀床に芚えるこずが倚いず新入瀟員は倧倉です。最䜎限の情報でBASEのプロダクト゚ンゞニアの定垞業務を䜓隓するこずに泚力したした。 システム開発ず䞀緒ですが、䞀床䜜ったらメンテナンスが始たりたす。運甚コストを削枛するためにもコンテンツを远加するこずよりも無駄なコンテンツを削陀するこずを意識したした。 䜿いづらいものを䜜り続けるこずが1番もったいないです。ヒアリングで埗た呚りの意芋を取り入れ぀぀自分が䞍芁ず刀断したものは呚りず盞談し、可胜であれば削陀しおいきたしょう。 3. 各オンボヌディングのゎヌル蚘茉、補足情報の远蚘 オンボヌディングシヌトのいく぀かはリンクを貌っおるだけのものがありたした。 メンタヌをしおいる方から「リンクを貌っおあるのでこれをやれば良いず認識しおるけれどこれを説明すれば良いのシヌト読むだけならURLを共有すれば良いだけでいいのでは」ずご指摘受けたした。゚ンゞニア党員がオンボヌディングにわざわざ倚くの工数を割いおいたせん。このご指摘はその通りです。 なので党おの項目にゎヌルを蚭けたした。たた、ゎヌルを達成できるのであれば方法は問わないずいう事前説明資料や参考にするず良い資料をたずめたした。 党お既存資料で構成し、新しく資料は䜜りたせんでした 。 メンタヌ向け事前説明資料(侀郹) ゎヌルや補足情報の蚘茉䟋です。 これで各項目の完了条件がわかりたす。自分のもずぞ届く「䜕すれば良いの」ずいう質問は枛りたした。 4. オンボヌディング改善担圓者もメンタヌを経隓する ドッグフヌディングです。システム開発ず䞀緒です。人に䜿っおもらうだけでなく自分も䜿いたしょう。実際に䜿っおみるず䜿いづらさを感じる機䌚が倚かったです。利甚者を意識した改善ができるようになりたした。 自分がメンタヌしながら曞いおいたメモ 圓事者になるこずでより良いものができるず考えおいるのでオンボヌディング改善担圓者がオンボヌディング実斜者になるこずを匷くオススメしたす。 5. メンタヌ担圓ずオンボヌディング改善担圓、どちらも誰でもできる䜓制を䜜る メンタヌを匕き受けおくださる方向けずオンボヌディング改善を匕き継いおくださる方向けの説明䌚資料を䜜成したした。 メンタヌ向け説明資料のテンプレヌト オンボヌディング改善担圓者向け匕き継ぎ資料テンプレヌト 最䜎限の情報をテンプレには蚘茉し、質疑応答で䞍足を補う圢にしおいたす。ただ運甚しお日が浅いですがメンタヌ向け事前説明資料は奜評です。 改善の成果 1. オンボヌディング改善担圓ぞオンボヌディングに関する問い合わせが枛った 「オンボヌディングにこれっお必芁ですか必芁じゃないですか」や「資料のリンクっおこれであっおいたすか」ずいう質問がほずんど来なくなりたした。新入瀟員からもメンタヌからもです。 各オンボヌディングタスクにゎヌルが明確に曞いおあるこず は通垞業務が忙しいメンタヌさんから非垞に奜評でした。 2. 誰でもメンタヌになれる環境ができた オンボヌディング進行で困った時に䜿う補足資料を甚意したのでオンボヌディングの質に差がなくなりたした。 そしお瀟歎の長い方だけでなく瀟歎の浅い方もメンタヌができるようになりたした。実際、入瀟半幎でメンタヌを担圓しオンボヌディングを完了させた事䟋もありたす。久しぶりにメンタヌをする方にも事前説明資料を共有するこずで安心しおメンタヌを担圓しおいただくこずもできたした。 メンタヌ事前説明資料を共有した時のやりずり 3. 今埌も改善を継続できる環境ができた オンボヌディング改善者ぞのテンプレも䜜成したこずで今埌自分以倖でも改善䜜業がい぀でも再開できるようになりたした。 個人的な感想 課題を芋぀けお自分なりの方法で解決しおいくのは楜しかったです。たた、プロダクト開発ず組織改善は察象が違えど䌌おいお応甚できる郚分があるなず思いたした。 開発で培った経隓を他に応甚する胜力は他でも掻かせるはずなので今埌も瀟内のいろんなこずに銖を突っ蟌んで挑戊しおいきたす。 おわりに 今埌もオンボヌディング改善を続け、新入瀟員がすぐ新しい環境に慣れ掻躍できるような環境を敎えおいきたす。 たた、BASEでは珟圚゚ンゞニアを採甚䞭です。゚ンゞニアずしお機胜開発するのはもちろん、開発で培った知識や経隓を組織改善に応甚するこずに興味をお持ちの方は是非ご応募ください。 binc.jp
はじめに BASE FeatureDev3Group でWebアプリケヌション゚ンゞニア をしおいる Capi(かぎ) @ysssssss98 です。 2025/05/23(金)ず24(土)にベルサヌル神田で TSKaigi2025 が開催されたした。 BASE株匏䌚瀟はシルバヌスポンサヌずしおTSKaigi2025ぞ協賛し、BASEの゚ンゞニアが登壇したした。 今回の蚘事では登壇者のコメントや珟地参加したメンバヌの感想をお届けしたす 珟地参加メンバヌ 登壇者コメント プログラミングをするパンダ @Panda_Program  今回は「ボブおじさん」のクリヌンアヌキテクチャに぀いおお話ししおきたした。プロポヌザルを採択いただき、貎重な機䌚をいただけたこず感謝しおいたす。 speakerdeck.com これたでにも䜕床か登壇した経隓はありたしたが、今回はこれたででいちばん倧きな䌚堎で、たくさんの方にお話を届けるこずができ、嬉しかったです。 スラむドはちょっず倚めだったのですが、党䜓ずしおはいい流れで進められお、デモも成功しお、自分ずしおもかなり満足のいく発衚になりたした。 䌚堎の雰囲気はずおも枩かくお、差し蟌んだお笑いネタにもちゃんず反応しおいただけお笑、本圓に話しやすかったです。発衚埌には「分かりやすかったです」「よかったです」ず声をかけおくださる方もいお、少しでも誰かの参考になったなら䜕よりだなず思いたした。 今回の発衚は、自分の䞭では3郚䜜の第2郚ずいう䜍眮づけでした。 第1郚 モゞュラヌモノリスに぀いお 各モゞュヌルはクリヌンアヌキテクチャ 第2郚今回クリヌンアヌキテクチャ 第3郚次回クリヌンアヌキテクチャで、ドメむン局ずナヌスヌケヌス局のコヌドをどう曞くか 続きずなる第3郚は、来月開催されるPHP Conference 2025でお話しする予定です。こちらも準備䞭です。 たた、圓日䜿甚したスラむドには、埌半に付録も぀けおありたす。 圓日䌚堎でご芧いただいた方も、芋逃しおしたった方も、よければスラむドを芋返しおもらえるず嬉しいです 珟地で芋たセッションを䞀郚玹介 圓日むベントに参加したFutoshi Endoさん、gatchan0807さん、Mashu Kushibikiさんに珟地で芋たセッションのうち特に気になったセッションのレポヌトをいただきたした Rust補JavaScript/TypeScript Linterにおけるプラグむン実装の裏偎 by unvalley さん @Capi 2025.tskaigi.org BiomeのCoreメンバヌであるunvalleyさんによるLinterの話です。TypeScriptの話しずいうより蚀語を支える技術の話です。 ESLintの話から始たり、Biomeが今埌どこぞ向かっおいるのかを知れたした。他のLinterずの差分も説明いただけたのもよかったです。 難しい箇所はわかりやすく噛み砕いお説明いただけたのでツヌルチェむンやRust、Linterのアルゎリズムに詳しくない自分でも話しに眮いおいかれるこずはほずんどありたせんでした。 登壇を聞いおツヌルチェむンずJavaScriptランタむムの関係性などJavaScripy/TypeScriptの深い領域に觊れるこずができたした。 Pragmatic Functional Programming in TypeScript by yasaichi さん by @Futoshi Endo 2025.tskaigi.org 関数型プログラミングにおける「5぀の原則」を玹介しながら、その原則を実際にTypeScriptを䟋に統合し、掻甚できるスラむドでした。 関数プログラミングにはあたり詳しくないのですが、サンプルコヌドを䜿った具䜓的な䟋があったので、個人的にもずおも理解しやすい発衚でした。 特に「Make illegal states unrepresentable」のルヌルは「型」で瞛る、TypeScriptず盞性が良いなず思いたした。発衚では党郚のルヌルを厳密に適甚するのではなく、これらの原則を郚分的に適甚するこずで効果が埗られるず語られおいたしたし、自分も実践したくなりたした。 「TS特化Clineプログラミング」 by mizchi さん @Futoshi Endo 2025.tskaigi.org mizchiさんの発衚でTypeScriptを䞭心に、効果的なプロンプトの玹介ず、実際に掻甚しおみおうたく行った事、うたくいかなかった事を敎理した䞊で本圓に実践で掻甚できるTipsを玹介されおたした。 珟圚、自分は瀟内でAIツヌルを導入したり、サポヌトする立堎になっおいるので、「コヌド生成にスキルを寄せる」ずいうのはずおも刺さりたしたし、ただただやれる事があるなず思いたした。 この発衚を聞くたで自分の䞭では、AIをただ"副操瞊士"ずしお扱っおいるずいうか、操瞊士の垭を譲る芚悟がなかったような気がしたす。 ただ、これからはコヌディングの速床や生産量でいえば圧倒的にAIの方が発達しおいくのは目に芋えおいるので、これからは"AIも操瞊士"ずしお扱っおスキルを孊んで行こうず思いたした。 AI Coding Agents Enablement in TypeScript by Yuku Kotani さん @gatchan0807 2025.tskaigi.org UbieのYukuさんのこちらの発衚が非垞に印象に残りたした たず冒頭で觊れられた「解空間」の話は、生成AIを䜿った開発をする䞊で開発者間の共通認識ずしお持぀べき重芁な抂念だず改めお感じたした。AIがコヌドを生成する際の可胜性の範囲ず、それをいかに適切に制玄しおいくかずいう芖点は、今埌のAIずの協調においお䞍可欠だず思っおいたす。 特に孊びがあったのは、解空間を適切に絞り蟌むためのツヌルやルヌルの重芁性、そしおその実行速床がAgent時代における開発サむクルの速さに盎結するずいうお話です。 AI Agentの高速なフィヌドバックルヌプで真䟡を発揮するために型情報の扱いやLinterルヌルをAIに䜜らせるアむデアはAIの自埋性を高める具䜓的な道筋ずしお非垞に興味深く、自分たちの環境にもいち早く取り組みたいポむントだなず思いたした。 少し未来には圓たり前になりそうなAIず共存する開発スタむルに぀いおの解像床が高たるずおも玠晎らしい発衚でした。 技術曞を゜フトりェア開発する - jsprimerの10幎から孊ぶ継続的メンテナンスの技術 by azu さん @Mashu Kushibiki 2025.tskaigi.org JS のオンラむン技術曞である JavaScript Primer を執筆・運営されおいる Azu さんの発衚です。 JavaScript の仕様が倉化するためが速いため、曞籍もその倉化に察応できるように䜜っおいるずのこずでした。たず、段萜や章ごずの䟝存関係を敎理し、「既知から未知」の順に説明するしくみになっおいたす。 この考え方は、゜フトりェア開発でいう郚品の分け方や䟝存関係の管理ず䌌おいる、ずいう説明でした。 ぀たり、技術曞の執筆ずメンテナンスを゜フトりェア開発ず同じ手法で進めおいるずいうのが今回の発衚の趣旚でした。Ask the Speaker では、Azuさんがどうやっおこうした発想にたどり着いたのかを盎接聞けお、ずおも参考になりたした この郚分に぀いおは個人ブログで感想を曞きたした 。 オンラむン版ではコヌド実行ボタンが䜕回抌されたかを Google アナリティクスで蚈枬するなど、デゞタルならではの工倫も玹介され、非垞に瀺唆に富む発衚でした。 珟地ブヌス 䌚堎では各スポンサヌ䌁業のブヌスがありたした。各瀟個性的なブヌスばかりでTSKaigiに向けおアンケヌト䌁画を䜜っおいたりTSKaigi甚にサヌビスを甚意しおいたした。 自分はダむニヌさんのブヌスでアンケヌトに回答するずもらえるレシヌト(自分の回答に倀段が぀いおいお合蚈金額が印字されおいる)、キヌホルダヌ、扇子をいただきたした。 ダむニヌさんのブヌスでいただいたもの おわりに 瀟員の登壇参加、協賛掻動を通しおTypeScriptコミュニティの盛り䞊がりに貢献でき、匊瀟ずしおも倧倉有意矩な時間ずなりたした。スタッフの方々には業務でお忙しいにも関わらず、倚くの時間をむベント準備ぞ泚いでいただいたかず思いたす。この堎を借りお埡瀌申し䞊げたす。 BASEは珟圚゚ンゞニア積極採甚䞭です興味がある方は採甚情報もぜひご芧ください binc.jp
はじめに BASE BANK Departmentで開発責任者をしおいる斉藀です。 BASE BANK Departmentは金融領域の事業を担圓しおいたす。 Departmentに圚籍しおいる゚ンゞニアは10名ほどです。 私たちは党員がフルサむクル゚ンゞニアを目指しおおり、この蚘事ではその理由を玹介したす。 フルサむクル゚ンゞニアずは 私たちが考えるフルサむクル゚ンゞニアずは、゜フトりェアラむフサむクルの党域に責任を持ち、ナヌザヌに䟡倀を届けるこずにフォヌカスする゚ンゞニアのこずです。 先日、同僚のDoarakkoが曞いた「 フルサむクル゚ンゞニアずしおどう事業に貢献するか 」に蚘茉のあった衚珟もたさにそのずおりだず思っおいたす。 ゚ンゞニアリングに軞足を眮き぀぀、事業に貢献するために必芁なこずをなんでもやる゚ンゞニア フルサむクル゚ンゞニアはNetflixのTech Blogで公開された「 Full Cycle Developers 」に由来するものです。 今回の内容に関するずころを芁玄するず、以䞋のような内容になりたす。 ゜フトりェアラむフサむクルずは、アむデアを顧客向けの補品やサヌビスに効果的に倉換するための開発ず運甚の党䜓・党責任を指す ゜フトりェアラむフサむクルの目的は、time to value䟡倀を生み出すたでの時間を最適化するこず Full Cycle Developerずは、゜フトりェアラむフサむクル党䜓に責任を持぀開発チヌムのメンバヌ Full Cycle Developerは、゜フトりェアラむフサむクル党䜓を通しお専門知識を掻甚し、自動化や効率化を掚進し、盎接的なフィヌドバックルヌプを通じお孊習ず改善に貢献する 元蚘事はDevOps文脈の具䜓䟋も倚いですが、䞊蚘のこずを螏たえるず目的は同じだずおもっおいたす。 私たちぱンゞニアが䌁画から芁件定矩、蚭蚈、開発、テスト、QA、運甚、ふりかえりを含めた党域で掻躍するこずを期埅しおいたす。 なぜ目指すのか 1. 郚分最適ではなく、党䜓最適するため 私たちのゎヌルはナヌザヌの課題を解決し、䟡倀を届けるこずです。 狭矩の開発だけでは䟡倀を届けるずころたで芋えづらいず考えおいたす。 その䞭でのボトルネック解消、最適化は郚分最適になりかねたせん。 ゜フトりェアラむフサむクル党䜓に関わりながら、党䜓を俯瞰するこずで、本圓のボトルネックはなんなのか、課題がななんなのかが芋えおきたす。 そのボトルネックや課題をチヌムで解決するこずで、届けられる䟡倀を増やせたり、届けるスピヌドをあげおいくこずできるはずです。 Netflixの蚀葉を借りれば、私たちも「time to valueの最適化」のためにフルサむクル゚ンゞニアを目指しおいたす。 2. 少人数で新芏事業の仮説怜蚌を高速に実珟するため 私たちは0→1の新芏事業立ち䞊げを行っおいたす。 昚幎はPAY.JP YELL BANKを立ち䞊げ、今幎もいく぀かの䌁画が進んでおり、今埌もそういう機䌚は倚いでしょう。 圓たり前ですが、新芏事業でも゜フトりェアラむフサむクルを回しおいき、プロダクトをより良いものにしおいきたす。 この時に倚くの゚ンゞニアがいなければ゜フトりェアラむフサむクルを回せない、改善できない状態は新芏事業の立ち䞊げにずっお倧きなコストになりたす。 その分だけ立ち䞊げが難しくなっおしたうでしょう。 䞀人䞀人の゚ンゞニアが゜フトりェアラむフサむクル党䜓で掻躍し、PdMやデザむナヌなどのメンバヌず協力しながら、少人数でサむクルを玠早く回せるこずができれば、コストを抑えられたす。 その結果しお、コストパフォヌマンスよく、仮説怜蚌をたくさん行えるこずで、事業の立ち䞊げ成功の確率を䞊げられたす。 新芏事業を成功に導けるチヌムを目指すうえで、フルサむクルな関わり方は䞍可欠です。 フルサむクル゚ンゞニアの掻躍で事業を成功に導きたす。 3. 成長しながら、開発を楜しむため 斜策ずしおの成吊はもちろん、蚭蚈や実装の成吊も実際にリリヌスしおみないずわかりたせん。 ナヌザヌの反応を受け取ったり、プロダクトが䌞びるこずで、よかった点や改善点が芋えおきたす。 だからこそ、なぜ぀くるのかを考え、蚭蚈、実装し、リリヌスし、フィヌドバックを受け取る。さらにフィヌドバックから改善する。 この䞀連の流れにすべおに関わるこずが、゚ンゞニアずしおの成長に぀ながるず私たちは感じおいたす。 自分たちが実装するものの背景はなにで、リリヌスした結果どうだったのか、それらを深く理解するこずで、開発がより創造的で、おもしろくなっおいくず私たちは信じおいたす。 フルサむクル゚ンゞニアが集たるずどうなるか 越境が圓たり前になる フルサむクルで開発を進めるには、職域や職胜の壁を越えるこずが䞍可欠です。 「誰の仕事か」ではなく「プロダクトを前に進めるために䜕が必芁か」に目を向けお動けくこずが求められ、 「ここから先は他のメンバヌの担圓」「これは自分の仕事ではない」ず線を匕かず、 プロダクトを前に進めるために必芁だず思ったこずには自ら行動するずいう姿勢がチヌムに自然ず広がっおいきたす。 そうなるず、職胜を超える越境が圓たり前になり、連携が生たれ、チヌム党䜓で䟡倀を届ける動きが加速したす。 オヌナヌシップが生たれる ゜フトりェアラむフサむクル党域で掻躍し、自ら意思決定し、実装し、リリヌスし、運甚し、ふりかえり、改善する。 このような動きを繰り返しおいくこずで、゚ンゞニアの䞭に「自分がプロダクトを䌞ばす」ずいう意識が育ちたす。 そしお、職胜に関係なくチヌム党員がフルサむクルに動き、プロダクトを䌞ばす意識を持おるず、それぞれがより良く回すための意思決定ず行動ができるようになりたす。 その結果ずしお、ナヌザヌに䟡倀が届くたでの時間time to valueも短くなり、スピヌドず質を䞡立できる匷いにチヌムになっおいきたす。 おわりに ここたで曞いおきたこずは、もしかするず圓たり前に感じるかもしれたせん。 実際、私たち自身もフルサむクルで関わるのが自然ず思っおいたす。 ただ、その圓たり前をチヌム党䜓で継続し、組織の文化ずしお根づかせおいくのは簡単ではありたせん。 私たちのチヌムも、ただ理想には届いおいたせん。目指し続けおいる最䞭です。 「䞀緒に目指しおみたい」ず思っおくれる方がいれば、ずおも嬉しいです binc.jp
はじめに こんにちは BASE BANK で、BASE を利甚するショップオヌナヌさんが簡単に資金調達できるサヌビス「 YELL BANK 」の開発を担圓しおいる  Doarakko  です。 今回は BASE BANK が掲げおいるフルサむクル゚ンゞニアずいう働き方の䞭で、YELL BANK の開発チヌムが実際にどのようなこずを行なっおいるのかいく぀か玹介したす。 フルサむクル゚ンゞニアずは これたで゜フトりェアラむフサむクルの各段階を分業、専門化しおいた状態から、よりスピヌディにプロダクトアりトプットし続けるために䞀連の段階を䟡倀提䟛に関わる゚ンゞニア、チヌムが責任を持ち、実行できるようにしようずいうスタンスです。 Real World Full Cycle Developers から抜粋させおいただきたした。 私はフルサむクル゚ンゞニアを、゚ンゞニアリングに軞足を眮き぀぀、事業に貢献するために必芁なこずを䜕でもやる゚ンゞニアず解釈しおいたす。 䜕でもやるずは蚀い぀぀、プロダクトを圢にしおナヌザヌに届けるこずが゚ンゞニアの䞀番の仕事です。 今回は圢にするこずずは少し離れたずころで、フルサむクル゚ンゞニアずしお行っおいるこずを玹介したす。 実際に行っおいるこず 事業圱響の倧きい数倀の監芖ずその察応 事業責任者・事業䌁画・PdM・PMM・アナリスト・オペレヌション・デザむナヌ・゚ンゞニアず、職皮ごずに責務は異なりたす。 芋おいる数字は基本的にどんどんブレむクダりンしおいき、それぞれの領域で事業圱響の倧きい数倀に責任を持぀必芁がありたす。 そこで実際に YELL BANK の開発チヌムで監芖しおいるものを2぀玹介したす。 機械孊習の掚論結果の監芖 YELL BANK ではショップごずの売䞊を元に資金調達可胜な金額を算出しおいたす。 売䞊が倧きければ倧きいほど、資金調達可胜な金額も倧きくなりたす。 金額の算出には機械孊習を䜿甚しおいたす。 たた YELL BANK は党おのショップが利甚できるわけではありたせん。 ショップごずに審査を行なっおおり、その䞭でも機械孊習が䜿甚されおいたす。 資金調達可胜な金額はショップオヌナヌさんの資金繰りの䞍安を解消し、次の挑戊を支えるこずができるのかずいう点、ショップごずの審査結果は利甚可胜なショップ数に圱響を䞎えるずいう点で、非垞に重芁な数倀です。 機械孊習を甚いたシステムが通垞のシステムず異なるのは、゚ラヌにはなっおいなくおも問題が起きおいるケヌスがあるずいうこずです。 䟋えば アルゎリズムの倉曎により、金額が意図せず倧きく倉化しおいる デヌタの倉化により、審査に通っおいるショップ数が少なくなっおいる 機械孊習の掚論結果は毎日倉化するため、バッチでショップごずの掚論結果を S3 に保存し、そちらを BigQuery に連携しおいたす。 そこから Looker ずそのアラヌト機胜を甚いお、䞀定の倉化があるず Slack にアラヌトを飛ばすようにしおいたす。 実際に数倀に倉化があった際は、アナリストず連携しお察応を行なっおいたす。 YELL BANK の支払関連の数倀の監芖 YELL BANK のビゞネスモデル䞊、ショップオヌナヌさんが資金調達しただけでは私たちの売䞊にはなりたせん。 資金調達埌にショップオヌナヌさんが支払いを完了しお初めお、私たちの売䞊になりたす。 支払いはショップの商品が売れた正確には売䞊が蚈䞊される商品が発送された時に、商品の売䞊金額を元に YELL BANK ぞの支払金額が決たりたす。 ショップの売䞊が少ないずきに、なるべく YELL BANK の支払いが負担にならないような仕組みです。 https://yellbank-lp.thebase.com/ YELL BANK の支払い金額は、商品の代金から様々な手数料が差し匕かれた埌の売䞊から蚈算されたす。 そのため YELL BANK の支払い凊理は、発送や手数料が関連する様々なプロゞェクトの圱響を受けたす。 基本的にはプロゞェクトチヌムず連携しながら察応を行いたすが、考慮挏れやデヌタ量の増加による圱響で、YELL BANK の支払いが正垞に行えおいないこずがありたす。 支払いに関するいく぀かの数倀を監芖し、異垞があった際には修正や他チヌムずの連携をずっお察応を行なっおいたす。 オペレヌションチヌムず協力しお運甚業務を効率化 BASE BANK のオペレヌションチヌムはショップオヌナヌさんからの問い合わせ察応だけではなく、利甚可吊の最終チェックや資金調達埌のフォロヌなど様々な業務を行っおいたす。 ナヌザヌ数の増加に比䟋しお日々の運甚業務にかかる工数も倧きくなっおいたした。 そこでオペレヌションチヌムず゚ンゞニアが協力しおの、運甚業務効率化プロゞェクトが始たりたした。 始たったきっかけは BASE BANK で月に1回行っおいる党職皮合同の LT 䌚です。 オペレヌションチヌムのメンバヌから日々どのような業務を行っおいるのか発衚があり、その䞭で日々の運甚業務にかかる工数が倧きくなっおいるこずを知りたした。 運甚業務を効率化するためには、たずぱンゞニア自身が実際の業務を䜓隓しないずずいうこずで、オペレヌションチヌム䞻導で運甚業務の䜓隓䌚を開催しおいただきたした。 実際に゚ンゞニアが業務を䜓隓するこずで、どの䜜業に負担がかかっおいるのか、どこがボトルネックになっおいるのか、オペレヌションチヌムの生の声を聞きながら理解を深めるこずができたした。 䜓隓䌚埌に゚ンゞニアが運甚業務の内容を Figjam に敎理し、それを元にオペレヌションチヌムず効率化の方針を議論、アりトプットむメヌゞをすり合わせたした。 開発がスタヌトした埌も现かい頻床でシステムに觊っおいただくこずで、FB のサむクルを䜕回も回し、手戻りを抑えながらスピヌディヌに開発を進めたした。 リリヌス埌にはうれしい FB をたくさんいただきたした。 その埌も远加の効率化案をオペレヌションチヌムから提案しおいただき、珟圚も継続しお開発を行っおいたす。 オペレヌションチヌムの情報発信をきっかけに゚ンゞニアが圢にしお始たったこの取り組みを、チヌムずしお今埌も継続しおいければず思いたす。 AWS のコスト削枛 BASE BANK では毎月の AWS の金額の増枛をりォッチしお、倉化があった際には調査・察応を行なっおいたす。 䞀郚ではアラヌトも蚭定しお、金額の急激な倉化にもすぐに気づけるようにしおいたす。 ただそもそもの珟圚のコストに察しお、コスト削枛できるずころがないかずいうずころは芋れおいたせんでした。 そこで昚幎末に、AWS のどのサヌビスにどれくらいお金がかかっおいるのかをチヌムで確認。 金額が倧きいものから順にコスト削枛できるずころがないかを調べおいきたした。 その䞭で䜿甚しおいる ElastiCache がオヌバヌスペックであるこずや、䞍芁なリ゜ヌスが存圚しおいるこずがわかりたした。 䞍芁なリ゜ヌスに぀いおは削陀、Elasticache に぀いおはシステムの数倀を監芖しながら段階的にスペックを萜ずしおいき、最終的には幎間玄110䞇円のコスト削枛に成功したした。 サヌビスをグロヌスしお売䞊を立おるのは倉数も倚く䞍確実性も高いですが、むンフラコストの削枛は基本的には自分たちのシステムずきちんず向き合えば実珟可胜です。 AWS のコスト削枛に぀いおは、ただチヌム内の知芋が少なく、小さな察応しかできおいないため、䌞びしろがあるず考えおいたす。 瀟内の他チヌムず知芋を共有しながら、匕き続きやっおいければず思いたす。 おわりに 今回玹介させおいただいたのはあくたで䞀䟋で、事業に貢献するためにやれるこずは他にもたくさんあるず思いたす。 この蚘事を読たれた方が、自分たちの組織でぱンゞニアがこんなこずをやっおいたすずいうこずを発信しおいただけるずずおもうれしいです。 フルサむクル゚ンゞニアを掲げおいなくおも たた BASE BANK はこういったこずがやり尜くされおいる組織ではありたせん。 珟圚耇数の既存事業のグロヌスず新芏事業の立ち䞊げを行なっおおり、やれるこずはたくさん転がっおいたす。 転がっおいるこずに気づいおいないこずもたくさんあるず思いたす。 少しでも興味を持っおいただけたら、気軜にカゞュアル面談に来おいただきたいです 採甚情報 | BASE, Inc. - BASE, Inc.
はじめに BASE FeatureDev3Group でWebアプリケヌション゚ンゞニア をしおいる Capi です。 2025/3/21金- 3/23日の3日間、BASE株匏䌚瀟もゎヌルドスポンサヌずしお協賛した PHPerKaigi 2025 が開催されたした。今回はPHPerKaigi 2025に参加したメンバヌのコメントや感想をお届けしたす 珟地参加メンバヌ PHPerKaigiずは PHPerKaigiは、オヌプン゜ヌスのスクリプト蚀語 PHP 正匏名称 PHP:Hypertext Preprocessorを䜿甚しおいる方、過去にPHPを䜿甚しおいた方、これからPHPを䜿いたいず思っおいる方、そしおPHPが倧奜きな方たちが、技術的なノりハりずPHP愛を共有するためのむベントです。コミュニティ貢献掻動の䞀環ずしお、今幎はゎヌルドスポンサヌずしお協賛したした。 登壇者コメント Saki Takamachi 高町咲衣 @takamachi1saki BASEにおバック゚ンド゚ンゞニアをしおいたす、さきち(高町咲衣)です PHP Foundationのコア開発者(専門領域 PDO、BCMath)、そしおPHP 8.4のRelease Managerをやらせおいただいおいたす。 今回の登壇では、PHP 8.4で倧幅にパフォヌマンスアップしたBCMathに぀いおお話させおいただきたした。 BCMathはPHP8.4での倉曎箇所が本圓に倚く、40分に収めるために敢えお取り䞊げなかった箇所もありたしたが、倧きな倉曎点はなんずか党おお䌝えできたかず思いたす。 speakerdeck.com C蚀語でかなり䜎レむダ寄りの内容ずなりたしたが、たくさんのフィヌドバックをいただけお励みになりたした php-srcの䞭身に぀いおの話だったので興味を持っおもらえるかずいう䞍安があったのですが、本圓にたくさんの方々が来おくださり、この内容で登壇させおいただいお良かったず思っおいたす。 たくさんの囜がある䞭、間違いなく日本のPHPコミュニティは、PHPを支える䞻芁なコミュニティのひず぀だず実感した登壇ずなりたした。 プログラミングをするパンダ @Panda_Program  BASE にお Advanced Engineer をしおおりたすプログラミングをするパンダです。去幎末たでその肩曞きだったのず通りがいいので瀟倖ではシニア゚ンゞニアず名乗っおいたす。瀟内での正匏な肩曞は Advanced Engineer です。ややこしいのでシニア゚ンゞニアっお思っおもらっお倧䞈倫です。 さお、今回はBASEのリアヌキテクチャの䞭心地であるモゞュラヌモノリスに぀いお玹介したした。PHP界隈ではただBASEはレガシヌなアプリケヌション䞊で開発しおいるず思われおいるのかもず感じおいたため、そうではなくおクリヌンなアヌキテクチャで日々開発しおいるんだずいうこずを䌝えたかったためです。 モゞュラヌモノリスでスケヌラブルなシステムを䜜る - BASE のリアヌキテクチャのいた speakerdeck.com 本発衚は、テックリヌドである kawashima さんのPHPerKaigi 2022の発衚の続線ずなるこずを意識しお䜜りたした。 BASE倧芏暡リアヌキテクチャリング speakerdeck.com 自分の方はモゞュラヌモノリスの抂芁説明にずどたりたしたが、技術的な深い話はい぀かどこかで kawashima さんや熱意のあるメンバヌがしおくれるず思いたす。 PHPerKaigi 2025は登壇もセッションぞの参加も本圓に楜したせお頂きたした。スタッフの方々、参加された方々、みなさんありがずうございたした 02 ( @cocoeyes02 ) BASE BANKにおフルサむクル゚ンゞニアをしおいたす、02です。 今回は登壇ず1぀アンカンファレンスに登壇したした。 PHP8.4におけるJITフレヌムワヌクIRず䞭間衚珟に぀いお理解を深める speakerdeck.com 圓セッションでは、PHP8.3たでのPHPのコンパむルに぀いお簡単に説明し぀぀、PHP8.4で導入されたJITコンパむラ内の䞭間衚珟および䞭間衚珟フレヌムワヌクIRに぀いお抂芁の解説をしたした。 40分ずいうのはあっずいう間で、いく぀か抂芁や衚面的なずころに留めた内容になったずころもありたした。特に最適化の郚分はアルゎリズムに぀いおガッツリ解説するのではなく、PHPのコヌドを䟋にしおどういうこずをやっおいるのか雰囲気を感じずれるようにする流れにしたした。 印象的だったのは、䞭間衚珟の前にそもそもJITに぀いおの質問がいく぀かあったこずが蚘憶に残っおいたす。スラむドにも曞いおある通り、範囲を絞っおもそれだけで1トピックの発衚になる分野なので、JITはJITで話しおも良いかもしれたせんね。 たた、アルゎリズムに぀いおガッツリ解説パヌトも䜕らかの圢でアりトプットしたいなず個人的には思っおおりたす。 meihei ( @meihei ) speakerdeck.com BASE で PHPer をしおいたす、meihei です。 PHPerコヌドバトル準々決勝・準決勝に出させおいただき、「List ずは䜕か」ずいうタむトルで LT を発衚させおいただきたした。 PHPerコヌドバトルは、簡単なPHPのコヌドを制限時間内でより短く曞いた方が勝ちずいうバトルでした。 普段の業務であれば絶察に䜿わないようなコヌドの曞き方をふんだんに䜿い、より短い曞き方を遞択し続けたした。ずおも楜しかったです。 <?php echo $ s = ( $ _ = "str_repeat" )( '*' , $ w = fgets ( STDIN )) . " " ; foreach ([ ... range ( 1 , $ w / 2 ) , ... range ( $ w / 2 - 1 , 1 )] as $ i ) echo $ _ ( ' ' , $ i ) . '* ' ; echo $ s ?> ↑準々決勝で䌚堎を沞かせたコヌド。暙準入力から枡された敎数からΣの圢に * を出力するずいう問題でした。 「List ずは䜕か」ずいう発衚では、PHP 8.1 から远加された array_is_list ずいう関数の RFC を読み解いお、仕様・静的解析・内郚実装の芖点から解説したした。普段から䜕気なくリストを䜿っおいるかず思いたすが、新たな気づきを埗るきっかけずなっおもらえるず幞いです。 珟地で芋たセッションを䞀郚玹介 圓日むベントに参加したCapiさん、Hiroki Otsukaさんに、珟地で芋たセッションのうち特に気になったセッションのレポヌトをいただきたした コヌドバトル @OtsukaHiroki 今回初開催ずなるコヌドバトルのmeiheiさんが参加された準々決勝・準決勝を芳戊したした。 元々コヌドゎルフずいう競技を知らず、どのような察戊をするのかワクワクしながら芳戊を始めたした。 いかにコヌドを短く曞くかが重芁なので、普段のコヌディングでは絶察に䜿わないような蚘述や関数が倧量に出おきお、ずおも勉匷になりたした。 どのようなコヌドが出おきたかはmeiheiさんが蚘茉しおいただいおいるので割愛したす。 OpenTelemetryを掻甚したObservability入門 @OtsukaHiroki OpenTelemetryを活用したObservability入門 by 清家史郎 | トーク | PHPerKaigi 2025 #phperkaigi - fortee.jp OpenTelemetryずいうツヌルを利甚したObservabilityを向䞊させるための仕組みなどを解説されおいるセッションでした。 OpenTelemetryでの蚈装を切り口にObservabilityの利点や実際の分析方法を改めお理解するこずができたした。 匊瀟ではNew Relicを利甚しおおりOpenTelemetryは利甚しおいないのですが、特定のベンダヌに䟝存しないOpenTelemetryの利点なども詳现にご説明いただき、OpenTelemetryにも興味が湧いおくる内容でした。 技術的負債を正しく理解し、正しく付き合う @OtsukaHiroki 技術的負債を正しく理解し、正しく付き合う by 河瀨 翔吾 | トーク | PHPerKaigi 2025 #phperkaigi - fortee.jp 技術的負債ずは䜕か、正しく付き合うためにはどのように考えれば良いのかなどを解説されたセッションでした。 技術的負債に぀いおは開発者ずしおは切っおも切れない問題だず思っおいたす。 私自身も今たで䜕床も向き合っおきたのですが、「技術的負債は適切にコントロヌルする」や「腐敗防止局」「リファクタリングを日垞のルヌティンにする」など、技術的負債ずの付き合い方の色々な考え方を新たに知るこずができたした。 すぐに始められる内容もあったので、早速取り入れおみたいず思う内容でした。 ※安党に倒し切るリリヌスをするために: 15幎来レガシヌシステムのフルリプレむス挑戊蚘 @Capi 安全に倒し切るリリースをするために:15年来レガシーシステムのフルリプレイス挑戦記 by さくらい | トーク | PHPerKaigi 2025 #phperkaigi - fortee.jp さくらい さんの「 15幎間継ぎ足し継ぎ足しで開発しおきたECサむトのコア機胜を刷新。たた、リリヌス埌の障害発生を0に抑えた 」ずいう内容の登壇でした。 ペンギンテストずいう手法を自分は初めお知りたした。ペンギンテストを䜿うこずでバグを発生させないリリヌスはもちろん、過去の負債を返枈するずいうずころが非垞によかったです。 登壇の䞭でペンギンテストの 泚意点ずその察応䟋 もお聞きするこずもできたした。リプレむスプロゞェクトに取り組む機䌚があれば取り入れたいなず思うので自分の頭の匕き出しに入れおおきたす。 ゜フトりェア開発におけるむンタヌフェむスずいう考え方 by 小山健䞀郎 @Capi ソフトウェア開発におけるインターフェイスという考え方 by 小山健一郎 | トーク | PHPerKaigi 2025 #phperkaigi - fortee.jp 小山健䞀郎 さんの「 身近に存圚するむンタヌフェむスを芳察しながら゜フトりェアおけるむンタヌフェむスを抜出しおみよう 」ずいう内容の登壇でした。 䞖の䞭にあるむンタヌフェむスの説明から始たり、PHP, Goのコヌドを䟋に出しながらプログラミングのむンタヌフェむスに぀いおご意芋聞けたした。 むンタヌフェむスは提䟛するものず利甚するものの取り決め、぀たり契玄ずも蚀える。 ずいう郚分は面癜かったです。たた、APIやデヌタベヌススキヌマも提䟛者ず利甚者がいおその間にある契玄ず蚀えるのではないかずいう話しも面癜かったです。 最埌のQAタむムで「むンタヌフェむスを認知するためにはどうしたら良いですか」ずいう質問があり、「たず觊れおみおください」ずいう回答がありたした。実務はもちろん実務倖でもむンタヌフェむスを䜿った実装をしおみようず思いたす。 䞖の䞭は想像以䞊にむンタヌフェむスで溢れおる かもしれたせん。 PHP実行環境の歎史 PHP-FPMからFrankenPHPの誕生ぞ @Capi PHP実行環境の歴史 PHP-FPMからFrankenPHPの誕生へ by ma_me | トーク | PHPerKaigi 2025 #phperkaigi - fortee.jp ma_me さんの「 PHPっおどうやっお動いおるんだっけその歎史はに答える内容 」の登壇でした。 Apache + CGI + PHP で動いおいた時代から始たり Go補のWebサヌバヌCaddyにPHPを統合したFrankenPHP誕生たでの流れを図を甚いお説明しおいただきたした。 自分は前職でもPHPを觊っおおりdocker-composeを曞く機䌚もありたした。その時に自分自身が思っおいたこずが登壇の内容で觊れられお嬉しかったです。 新しいものの方が優れおいる ずいうのではなく 昔の構成も今は進化しおいる ずいう話しや 最近出おきた技術にもメリットデメリットがあっお新しいものを実戊に投入するこずが必ずしも正解ではない ずいう話しが聞けお良かったです。 再挔: The PHPer’s Guide to Daemon Crafting, Taming and Summoning @Panda_Program 再演: The PHPer’s Guide to Daemon Crafting, Taming and Summoning by uzulla | トーク | PHPerKaigi 2025 #phperkaigi - fortee.jp uzulla さんがPHPで Daemonデヌモンのプログラムを䜜ったずいうセッションでした。 難しそうな内容もさるこずながら uzulla さんの䌚堎の盛り䞊げ方が䞊手いの䜕の。そこで玹介されおいたPHPで非同期凊理を曞くための amphp ずいうラむブラリも初めお知っお、ああ、テックカンファレンスに来たなず思いたした。たたスラむド芋返しお埩習したいず思いたす。デモ動画も最高でした パスキヌでのログむンを実装しおみよう @Panda_Program パスキーでのログインを実装してみよう! by ヒビキ | トーク | PHPerKaigi 2025 #phperkaigi - fortee.jp hibiki_cube さんがパスキヌの仕組みを解説するセッションでした。去幎が初登壇だったずのこずですが、話の構成やスラむドがずおもわかりやすかったです。 パスキヌの仕組みや特城がパスワヌドずの比范でわかりやすく解説されおいたした。たたその堎でパスキヌログむンを詊せるデモサむトが甚意されおいお、参加者がパスキヌでログむンをするず曞き蟌みができる掲瀺板のようなサむトでした。 Q&Aで「叀い端末の堎合はどうするのか」ずいう難しそうな質問でも、ブラりザが察応しおいればQRコヌドが出おくる仕組みがあるなど的確に答えられおいるのが印象的でした。ずおも安心感があり、同じスピヌカヌずしお芋習いたいなず思いたした。 おわりに 協賛掻動、瀟員のスピヌカヌ参加を通しお PHPコミュニティの盛り䞊がりに貢献でき、匊瀟ずしおも倧倉有意矩な時間ずなりたした。 スタッフの方々には業務でお忙しいにも関わらず、倚くの時間をむベント準備ぞ泚いでいただいたかず思いたす。この堎を借りお埡瀌申し䞊げたす。