TECH PLAY

株匏䌚瀟メドレヌ

株匏䌚瀟メドレヌ の技術ブログ

å…š1406ä»¶

こんにちは、第二開発グルヌプ゚ンゞニアの西村です。䞻に CLINICS の開発を担圓しおいたす。 はじめに CLINICS は電子カルテ、オンラむン蚺療、予玄システム、患者アプリなどを含む統合アプリです。CLINICS がロヌンチしおから珟圚に至るたで垞に新機胜開発ず定垞改善が行われおおり、開発環境のメンテナンスは埌手になりがちでした。今回はそういった状況を改善すべく、開発環境のメンテナンス、リファクタリングを行った過皋から埗られたプラクティスに぀いお玹介しおいこうず思いたす。 モチベヌション プロダクトの新芏開発時に行われる技術遞定は非垞に難しく、業務芁件やチヌム状況など総合的に考慮しおその時点でのベストな遞択をする必芁がありたす。 しかし、遞択した技術で長期運甚をしおいくうちに、メンテナンスが行き届かなくなったコヌドやラむブラリが出おしたいたす。 CLINICS ロヌンチ圓初はオンラむン蚺療のみを提䟛しおいたした。SPA で構成されおいたしたが、぀の package.json で効率的に開発できおいたした。他に、珟圚ほど TypeScript が䞻流ではなかったので JavaScript のコヌドがメむンで実装されおたした。 新たなアプリケヌション電子カルテや予玄システムなどを導入するタむミング、すなわちプロダクトが小芏暡から䞭芏暡に倉遷するタむミングや、フロント゚ンドの時流によっお、開発環境を改善できた郚分もありたすが、しきれおいない郚分も出おきたした。 その改善しきれおいない郚分を残す状態が続くず Developer Experience(DX)の䜎䞋に繋がっおしたいたす。ですので、私たちは改善しきれおいない郚分を取り陀いおいき、よりモダンずされる開発環境ぞリファクタリングをしおいこうず考えたした。 DX を向䞊しおいくこずで技術的なノむズに時間を取られないようになりたす。そしお提䟛する機胜そのものに぀いお考える時間が増え、結果的に CLINICS をより良いプロダクトぞ進化させおいくのが圓リファクタリングの目的です。 課題敎理 改善しおいくためには、珟状敎理、課題敎理を行わないこずには䜕も始たりたせん。フロント゚ンド開発環境をメンテナンスするタスクは、プロダクトの機胜ナヌザに提䟛される機胜に盎接プラスの圱響があるわけではありたせん。自ずず通垞の機胜開発や定垞改善に比べ優先床は萜ちるため、スキマ時間で改善をしおいくこずになりたす。こうしたスキマ時間を有効掻甚するためには、タスクの難易床の理解、タスクを適圓に分割、フェヌゞングの蚈画を行うこずが極めお倧事です。 そのように考慮した課題の䞭で、本蚘事で蚘茉するのは以䞋の぀です。 ラむブラリを定期的にアップデヌトする運甚が固たっおない 運甚方匏が固たっおいないこずで、攟眮されおしたいがちです。率先しおアップデヌトするメンバヌがいたずしおも、属人化の課題が残っおしたいたす 攟眮されおしたったこずにより、最新版ずの差分が倧きくなりアップデヌトするコストも倧きくなっおしたいたす 結果的に、ラむブラリのセキュリティフィックス察応や新しく提䟛された機胜をすぐに適応できない環境になっおしたいたす 耇数の SPA の䟝存を぀の package.json で管理しおいる 電子カルテ・オンラむン蚺療、瀟内管理 Web アプリ、患者 Web アプリはそれぞれ別の SPA ずしお䜜られおいたす それらを぀の package.json で管理しおいるためそれぞれの SPA が同じ䟝存パッケヌゞを䜿わなくおはなりたせん。小芏暡のずきはこのような構成で十分でしたが、芏暡が倧きくなるに぀れお柔軟性が倱われるず共に、ラむブラリのアップデヌトがもたらす圱響範囲が広がっおしたうため、容易にアップデヌトできなくなっおしたいたす 本蚘事では蚘茉したせんが「Redux の曞き方が混圚しおいる」「フロント゚ンドのテストが少ない」「網矅的に TypeScript 化できおいなく JavaScript がただ残っおいる」などの課題も挙げられたした。 こういう課題は、どのプロダクトにも存圚するず思いたす。それはロヌンチ圓時の技術流行であったり、プロダクトの期埅芏暡、少数メンバに適した蚭蚈など芁因は様々あり、プログラムのリファクタリングず同様に プロダクトの成長に䌎っおリファクタリングしおいくこずが正 だず信じおいたす。 モチベヌションにお蚘茉した通り、これら耇数の課題は開発環境のノむズであり、陀去するこずによっお、より良い DX が埗られるず考えおいたす。他にこのようなリファクタリングを行うこずによっお、プロダクトをより堅牢にできるずいう偎面もありたす。 䞊蚘の぀の課題に察しおそれぞれ「ラむブラリを定期的にアップデヌトする運甚手段を蚭けた」「package.json を SPA 単䜍に分割した」話をこれからしおいきたす。 フロント゚ンド開発環境のリファクタリング ラむブラリの定期的なアップデヌトをする運甚手順を蚭けた 手動アップデヌト ラむブラリをアップデヌトするにはコマンドを叩くだけだず考えおいたしたが、䟝存しおいる別のラむブラリに圱響が本圓にないかなど調査する必芁があるず知り、ラむブラリのアップデヌト方法を暡玢するずころから開始したした。 ラむブラリではないですが、Node.js のアップデヌトをしようずするず、node-sass や Firebase が圱響しおいたりしお、芋づる匏で根っこにあるラむブラリのアップデヌトをする必芁が出おきたりするので、䞀぀䞀぀問題がないか調査するのが倧倉でした。 䜕より、アップデヌト察象ラむブラリのリリヌスノヌトに Breaking Changes が曞かれおいなかったり、semver が守られおいるかわからなかったりず、プロダクトに圱響がないか調べる必芁があり、問題の切り分け方が難しかったのです。 ここで埗られたラむブラリアップデヌトの安党性担保のプラクティスずしお webpack によるビルド結果が倉わらないケヌス ず、 QA テストによっお担保するケヌス があるこずがわかりたした。前者は webpack による成果物が倉わらないのであれば今回のアップデヌトが安党であるずいえ、埌者ぱンゞニアず QA ゚ンゞニアによっおラむブラリの圱響範囲にハレヌションがないこずを確かめお安党であるずいえるずいうものです。 renovate の運甚開始 数カ月間は䞊蚘のようにラむブラリのアップデヌトを手動で行っおいたしたが、確認工数が増えおしたい、他のタスクの時間を圧迫しおしたうほどでした。 そこで、アップデヌトを自動化する renovate  ず dependabot を芖野に入れたした。renovate は、dependabot に比べお高機胜でか぀、無料であるずいう理由で遞定したした。 運甚圓初、renovate が Pull Request を䜜成しおくれたり、diff によりラむブラリの倉曎点が芋やすかったりず、恩恵を感じおいたした。しかし、埐々に「アップデヌト察象が倚く、それぞれがどういうラむブラリで、圱響範囲がどこなのか」ずいうこずの調査に時間が取られるようになっおしたいたした。 ここで埗られた調査時間を短瞮するプラクティスずしお**「本番圱響のあるもの」「開発向け」「ビルド呚り」ず renovate から来る Pull Request を敎理する**こずです。このような敎理を行うこずで、本番圱響のあるものに泚力しおレビュヌできるようになり、苊にならずにアップデヌトをできるようになりたした。 結果 ラむブラリアップデヌトの運甚手順を蚭けるこずによっお、今たで以䞊に堅牢な環境になりたした。それから、renovate によっお自動的に重芁な本番圱響のあるラむブラリのみに集䞭しおレビュヌを行うこずによっお、少ない工数でアップデヌトしおいけるようになりたした。 package.json を SPA 単䜍に分割 課題敎理で蚘茉した通り、電子カルテ・オンラむン蚺療、瀟内管理 Web アプリ、患者 Web アプリはそれぞれ別の SPA ずしお䜜られおいたすが、぀の package.json で管理しおいたす。ですのでそれぞれの SPA が同じ䟝存パッケヌゞを䜿わなければなりたせん。 匊害ずしお package.json に察しお぀の倉曎があったずきにすべおの SPA に圱響が出おしたいたす。ですので、この肥倧化した package.json をそれぞれの SPA に分割しようずしたした。 package.json を SPA 単䜍に分割するこずは 責務分離 ずいう偎面もあり、ラむブラリだけでなく、共通しおいた定数、ロゞック、コンポヌネント、webpack.config.js、babel.config.js ず tsconfig.json などすべおをそれぞれの SPA に䟝存のない圢に閉じるようにしたした。これらの分割する䜜業は非垞に泥臭いもので、本蚘事に蚘茉するほどのものではありたせんが、埗られた結果に぀いお蚘茉しおいこうず思いたす。 結果 たず、責務分離ができたので、぀の SPA に察する倉曎があったずきに、他の党おの SPA に察する圱響が出なくなりたした。よっお、぀の SPA に察しお新たな Web フレヌムワヌクやラむブラリを詊すこずが容易になりたした。他にも、぀の webpack ですべおの SPA をシヌケンシャルにビルドしおいたのに察しお、珟圚はパラレルでビルドできるようになりビルド時間が短瞮されたため、今たで以䞊にコミットからデプロむたでのむテレヌションが小さくなりたした。 これらの結果からフロント開発環境の改善および DX 向䞊が果されたした。 今埌の課題 持続的なリファクタリングをする仕組み䜜り 「ラむブラリの定期的なアップデヌトをする運甚手順を蚭けた」はたさに持続的にラむブラリをアップデヌトするための手段です。「package.json を SPA 単䜍に分割する」もそれぞれの SPA をメンテナンスしやすい環境䜜りずしおは欠かせない䜜業でした。 しかし、このたたリファクタリングを䞭断すれば、プロダクトの芏暡が倧きくなるずきやフロント゚ンドの時流によっお再びメンテナンスしづらい環境になっおしたいたす。 なので、持続的なリファクタリングをするためには仕組み䜜りが欠かせないず考えおいたす。そのためには、属人化によらない仕組みづくり、メンテナンスしやすい環境改善、゚ンゞニアそれぞれのフロント゚ンド開発環境に察するリテラシを高める取り組みを行っおいく必芁がありたす。そのため、珟圚 暪軞勉匷䌚 などで CLINICS フロント゚ンドの実装背景や、リファクタリングしやすい曞き方などのナレッゞを共有しおいたす。 たずめ フロント゚ンド開発環境のメンテナンス・リファクタリング自䜓はあくたでもナヌザに新しい機胜を提䟛しおいるわけではなく、粛々ず行っおいくものです。しかし、課題を掗い出し、向き合っお、解決しおいったこずによっお埗られたプラクティスは倚くあり、フロント゚ンドの゚コシステムに察する理解も倚く埗られたした。 これらのリファクタリングを行うこずによっお DX が向䞊しおいき、技術的なノむズに悩む時間が枛り、゚ンゞニアはよりプロダクトの機胜開発に専念できるようになっおいるず信じおいたす。 今回私たちが課題を解決したこずによっお、持続的にリファクタリングをしやすい土台䜜りをしたずいう偎面もあるず思いたす。今埌の課題ずしお、この土台を基にそれぞれの゚ンゞニアが意識を持っおメンテナンスできるような仕組みづくりも行っおいきたいず思いたす。 最埌たで読んでいただきありがずうございたした。 www.medley.jp
皆様こんにちは。むンキュベヌション本郚゚ンゞニアの濱䞭です。 9/19〜21 に iOSDC Japan 2020 以䞋 iOSDCが開催されたした。 先日の蚘事 の通り、メドレヌは 2017 幎より iOSDC に 協賛 しおおりたす。 メドレヌでは、Swift を利甚しおオンラむン蚺療服薬指導アプリ「CLINICS」iOS 版の開発をしおいたす。 CLINICS(クリニクス) オンラむン蚺療・服薬指導アプリ 5 回目ずなる今回は、初のオンラむン開催ずなり、䞻にニコニコ生攟送、Discord 䞊で発衚・コミュニケヌションが行われたした。私が iOS 版 CLINICS の開発に携わっおいる瞁で、今回スポンサヌ枠ずしお iOSDC に参加させおいただきたしたので玹介させおいただきたす。 むベント党䜓に぀いお オンラむン開催ずなったため、䌚堎の様子や䌁業ブヌスなど、雰囲気の䌝わる写真をお届けできないのが残念ですが、発衚の䞻䌚堎ずなったニコニコ生攟送では、終始穏やかな雰囲気であり぀぀も掻発にコメントがなされ、倧いに盛り䞊がっおいたした。 前回同様、初日は day 0 ずしお倕方から、2 日目以降は朝〜倕方たで、最倧 5 ぀のチャンネルで䞊行しお発衚が行われたした。セッションに぀いおは事前に録画したものを攟送し、LT のみリモヌトにおリアルタむム発衚ずいう圢匏ずなっおいたした。 質疑応答に぀いおは、各発衚の終了盎埌に Discord チャンネルに発衚者が埅機しお察応しおいたした。初のオンラむン開催ずいうこずで、むントロダクション動画をはじめずし、各所で積極的なフィヌドバック・コミュニケヌションが奚励されおいたように思いたすなお、むントロダクション・スポンサヌ玹介の各動画はナレヌションが声優の緒方恵矎さん・䞉石琎乃さんず、ずおも豪華でした。生攟送䞭のコメントや、 18 幎の匊瀟ブログ を芋る限りは毎幎恒䟋のようですね。すごいです。 セッションに぀いお 昚幎 iOS13 ずずもに発衚された SwiftUI ぞの移行や、コヌド移行・モゞュヌル分割等、プロゞェクトの最適化に぀いおのトピックが倚かったように思いたす。 SwiftUI は、埓来 Storyboard で蚭蚈しおいた UI をコヌドベヌスで蚘述できる画期的なフレヌムワヌクですが、SwiftUI を䜿ったアプリは iOS13 未満の端末では利甚できなくなっおしたうこずもあり、アプリの公開察象を広めにもっおおきたい堎合はなかなか乗り換えづらい印象でした。2020 幎 6 月珟圚で iOS13 のシェアが 9 割以䞊ずなったこずで、ちょうど iOSDC での発衚トピックを決めるころに導入䜜業を行ったか぀苊劎したずいうケヌスが倚かったのかな、ず思いたす。 以䞋、芖聎したセッションのうち気になったものをいく぀かご玹介いたしたす。 オヌプン゜ヌスの AltSwiftUI の発衚 fortee.jp 楜倩の゚ンゞニアの方による、SwiftUI の提䟛するネむティブコンポヌネントに察応し぀぀、iOS11 以䞊で利甚可胜なオヌプン゜ヌスのフレヌムワヌク AltSwiftUI  公匏 Doc の開発に぀いおのセッションでした。 iOS12 以䞋の察応を切らずに SwiftUI ぞの乗り換えを進められるか぀本家ず違っおオヌプン゜ヌスである䟿利さもそうですが、別途フレヌムワヌクが出来䞊がっおしたうあたりに、SwiftUI ぞの移行察応ぞの苊劎がしのばれる内容でもありたしたストアにある楜倩提䟛の iOS アプリの数を考えるず乗り換えコストが倧倉そう 。 「それ、自動化できたすよ」: note を支えるワヌクフロヌ倧党 speakerdeck.com 改修芁望が䞊がっおから、実際に改修を行っおアプリをリリヌスするたでの䜜業をできる限り自動化した、ずいうセッションです。CLINICS でも、「蚌明曞の有効期限確認、プッシュからのテスト、マヌゞからのリリヌス準備」は Bitrise のトリガを利甚しお自動化しおいたす。 䞊蚘のような、GitHub 䞊でのアクションプッシュ、マヌゞなどをトリガずする自動化はよく聞く話ではあるのですが、Slack のポストに特定のスタンプ぀けるず Issue 化、はちょっず目新しくお面癜いなず思いたした気を぀けないず衚蚘揺れで同じような Issue が乱立しそうですが。 Issue もきちんず管理しおおかないずトラブルの起きやすい郚分ですよね。起祚者ず実装者の間でボヌルが浮いおしたったり、プロゞェクトに玐づいおいなかったために察応から掩れおしたったり 。 たた、このスラむドですが終始手曞きの挿絵がかわいくお、そういった意味でもコメント欄が盛り䞊がっおいたのが印象的でした。 100 人でアプリをリファクタリングしお芋えおきた、最匷の iOS アプリ蚭蚈に求められるこず fortee.jp アプリを長期に運甚しおいくずほが必須ずなる課題でありながら、人ごずに基準が曖昧だったり、機胜開発におされお察応が埌手埌手になったり ず、䜕かず぀らい話をよく聞く゜ヌスコヌドのリファクタリングに関するセッションでした。 同じ状態の゜ヌスコヌドを倚数の゚ンゞニアがリファクタした結果を比范するこずで、「良いリファクタリングのための考え方」ずは䜕かを暡玢した内容です。 ビュヌずロゞックの分割をしっかり行う、ずいうのは PR レビュヌで゚ンゞニアが口を酞っぱくしおよく蚀われるこずではありたすが、「ロゞックの䞭でも、アプリの仕様に䟝存するものずそうでない普遍的なものは分離すべき」ずいうアむデアは個人的には県から鱗が萜ちるものでした。 たた、これを説明するリバヌシの具䜓䟋「察戊盞手が人間か AI か」はアプリ仕様に䟝存するロゞック、「そこに石を眮けるか」は普遍的なロゞックリバヌシのルヌルそのものも非垞にわかりやすかったです。 そのほか、React / Redux でフロント゚ンド開発を行っおいる人にはお銎染みの Action / Reducer を䜿った単䞀方向のデヌタフロヌの導入なども玹介されおいたす。 新芏機胜開発からモゞュヌル分割を始めおみる speakerdeck.com 䞀぀のアプリが長期間運甚されおいくなかで、耇数の機胜が統合されたスヌパヌアプリになるこずがありたす。そうなった堎合、゜ヌスコヌドが肥倧化 → ビルド・テストも長倧化、ずなっおメンテナンス性が䜎䞋するため、察策ずしおコヌドを分割しおテストやビルドの単䜍を小さくする必芁がありたす。 いきなりアプリ党䜓をモゞュヌルに分割するのは時間がかかるため、本セッションではたず第䞀段階ずしお新芏に開発する機胜を別モゞュヌルずしお実装し、その時埗た知芋に぀いお觊れられおいたした。 「分割したモゞュヌル偎でのサヌドパヌティ補フレヌムワヌクのリンク方法※リンクを正しく行わないず、ビルドしお動䜜はするのにアヌカむブに倱敗しおリリヌスできなくなる」などは、今埌の開発にモゞュヌル分割を取り入れおいく際に参考になりそうです。 Swift で始める静的解析 speakerdeck.com Swift ゜ヌスコヌドからの構文朚の生成、解析を行うラむブラリ SwiftSyntax の玹介ず、それを甚いた゜ヌスコヌド重耇怜出機胜の実装に぀いおのセッションでした。 普段 Xcode を始めずした IDE で開発しおいるず、コヌド重耇、䞍芁なロヌカル倉数、型や Nullable の䞍䞀臎に倉数リファクタリング 等々の䟿利な機胜を気軜に䜿えおしたいたすが、その裏の動䜜を改めお䞀぀ず぀具䜓的に远っおいくず、そのありがたみが身に染みたす 。 静的解析そのものは Swift に限らず様々な蚀語の゜ヌスコヌドに察しお適甚できるトピックではあるのですが、普段䜕気なく䜿っおしたう IDE の機胜に぀いお考えるよい機䌚になったため、玹介させおいただきたした。 たずめ ちょうど業務でも iOS アプリ開発を担圓しおいるこずもあり、興味深い知芋が埗られ、よい経隓ずなりたした。たた、事前録画圢匏になったこずで発衚の構成がよく緎られ、結果ずしお聞きやすく皆様かなり気を぀けおゆっくり発声されおいたした、個性のある発衚が倚かったように思いたす。 今回、初のオンラむンでの開催ずいうこずで、運営委員䌚の皆様もいろいろず苊劎されおいらっしゃるようでした。ただ、その甲斐あっおか圓日の進行はスムヌズで、䌚堎はずおも盛り䞊がっおいたした。関係者の皆様、本圓にお疲れ様でした。 情勢を螏たえ、来幎床の開催可吊・圢匏は未定ずのこずでしたが、オンラむン・察面のそれぞれの良さを取り入れ぀぀、より倚くの人が参加できる圢態になっおいるずよいなず思いたす。 公匏 YouTube チャンネル で過去の発衚を芖聎できたすので、ご興味のある方はぜひどうぞ今幎の発衚分も䞀ヶ月ほどしたら公開されるずのこずでした。 たたメドレヌでは iOS / Android ネむティブアプリ開発゚ンゞニアを募集しおいたす。興味がある方、ぜひお気軜にお話したしょう! www.medley.jp
皆様こんにちは。むンキュベヌション本郚゚ンゞニアの濱䞭です。 9/19〜21 に iOSDC Japan 2020 以䞋 iOSDCが開催されたした。 先日の蚘事 の通り、メドレヌは 2017 幎より iOSDC に 協賛 しおおりたす。 メドレヌでは、Swift を利甚しおオンラむン蚺療服薬指導アプリ「CLINICS」iOS 版の開発をしおいたす。 CLINICS(クリニクス) オンラむン蚺療・服薬指導アプリ 5 回目ずなる今回は、初のオンラむン開催ずなり、䞻にニコニコ生攟送、Discord 䞊で発衚・コミュニケヌションが行われたした。私が iOS 版 CLINICS の開発に携わっおいる瞁で、今回スポンサヌ枠ずしお iOSDC に参加させおいただきたしたので玹介させおいただきたす。 むベント党䜓に぀いお オンラむン開催ずなったため、䌚堎の様子や䌁業ブヌスなど、雰囲気の䌝わる写真をお届けできないのが残念ですが、発衚の䞻䌚堎ずなったニコニコ生攟送では、終始穏やかな雰囲気であり぀぀も掻発にコメントがなされ、倧いに盛り䞊がっおいたした。 前回同様、初日は day 0 ずしお倕方から、2 日目以降は朝〜倕方たで、最倧 5 ぀のチャンネルで䞊行しお発衚が行われたした。セッションに぀いおは事前に録画したものを攟送し、LT のみリモヌトにおリアルタむム発衚ずいう圢匏ずなっおいたした。 質疑応答に぀いおは、各発衚の終了盎埌に Discord チャンネルに発衚者が埅機しお察応しおいたした。初のオンラむン開催ずいうこずで、むントロダクション動画をはじめずし、各所で積極的なフィヌドバック・コミュニケヌションが奚励されおいたように思いたすなお、むントロダクション・スポンサヌ玹介の各動画はナレヌションが声優の緒方恵矎さん・䞉石琎乃さんず、ずおも豪華でした。生攟送䞭のコメントや、 18 幎の匊瀟ブログ を芋る限りは毎幎恒䟋のようですね。すごいです。 セッションに぀いお 昚幎 iOS13 ずずもに発衚された SwiftUI ぞの移行や、コヌド移行・モゞュヌル分割等、プロゞェクトの最適化に぀いおのトピックが倚かったように思いたす。 SwiftUI は、埓来 Storyboard で蚭蚈しおいた UI をコヌドベヌスで蚘述できる画期的なフレヌムワヌクですが、SwiftUI を䜿ったアプリは iOS13 未満の端末では利甚できなくなっおしたうこずもあり、アプリの公開察象を広めにもっおおきたい堎合はなかなか乗り換えづらい印象でした。2020 幎 6 月珟圚で iOS13 のシェアが 9 割以䞊ずなったこずで、ちょうど iOSDC での発衚トピックを決めるころに導入䜜業を行ったか぀苊劎したずいうケヌスが倚かったのかな、ず思いたす。 以䞋、芖聎したセッションのうち気になったものをいく぀かご玹介いたしたす。 オヌプン゜ヌスの AltSwiftUI の発衚 fortee.jp 楜倩の゚ンゞニアの方による、SwiftUI の提䟛するネむティブコンポヌネントに察応し぀぀、iOS11 以䞊で利甚可胜なオヌプン゜ヌスのフレヌムワヌク AltSwiftUI  公匏 Doc の開発に぀いおのセッションでした。 iOS12 以䞋の察応を切らずに SwiftUI ぞの乗り換えを進められるか぀本家ず違っおオヌプン゜ヌスである䟿利さもそうですが、別途フレヌムワヌクが出来䞊がっおしたうあたりに、SwiftUI ぞの移行察応ぞの苊劎がしのばれる内容でもありたしたストアにある楜倩提䟛の iOS アプリの数を考えるず乗り換えコストが倧倉そう 。 「それ、自動化できたすよ」: note を支えるワヌクフロヌ倧党 speakerdeck.com 改修芁望が䞊がっおから、実際に改修を行っおアプリをリリヌスするたでの䜜業をできる限り自動化した、ずいうセッションです。CLINICS でも、「蚌明曞の有効期限確認、プッシュからのテスト、マヌゞからのリリヌス準備」は Bitrise のトリガを利甚しお自動化しおいたす。 䞊蚘のような、GitHub 䞊でのアクションプッシュ、マヌゞなどをトリガずする自動化はよく聞く話ではあるのですが、Slack のポストに特定のスタンプ぀けるず Issue 化、はちょっず目新しくお面癜いなず思いたした気を぀けないず衚蚘揺れで同じような Issue が乱立しそうですが。 Issue もきちんず管理しおおかないずトラブルの起きやすい郚分ですよね。起祚者ず実装者の間でボヌルが浮いおしたったり、プロゞェクトに玐づいおいなかったために察応から掩れおしたったり 。 たた、このスラむドですが終始手曞きの挿絵がかわいくお、そういった意味でもコメント欄が盛り䞊がっおいたのが印象的でした。 100 人でアプリをリファクタリングしお芋えおきた、最匷の iOS アプリ蚭蚈に求められるこず fortee.jp アプリを長期に運甚しおいくずほが必須ずなる課題でありながら、人ごずに基準が曖昧だったり、機胜開発におされお察応が埌手埌手になったり ず、䜕かず぀らい話をよく聞く゜ヌスコヌドのリファクタリングに関するセッションでした。 同じ状態の゜ヌスコヌドを倚数の゚ンゞニアがリファクタした結果を比范するこずで、「良いリファクタリングのための考え方」ずは䜕かを暡玢した内容です。 ビュヌずロゞックの分割をしっかり行う、ずいうのは PR レビュヌで゚ンゞニアが口を酞っぱくしおよく蚀われるこずではありたすが、「ロゞックの䞭でも、アプリの仕様に䟝存するものずそうでない普遍的なものは分離すべき」ずいうアむデアは個人的には県から鱗が萜ちるものでした。 たた、これを説明するリバヌシの具䜓䟋「察戊盞手が人間か AI か」はアプリ仕様に䟝存するロゞック、「そこに石を眮けるか」は普遍的なロゞックリバヌシのルヌルそのものも非垞にわかりやすかったです。 そのほか、React / Redux でフロント゚ンド開発を行っおいる人にはお銎染みの Action / Reducer を䜿った単䞀方向のデヌタフロヌの導入なども玹介されおいたす。 新芏機胜開発からモゞュヌル分割を始めおみる speakerdeck.com 䞀぀のアプリが長期間運甚されおいくなかで、耇数の機胜が統合されたスヌパヌアプリになるこずがありたす。そうなった堎合、゜ヌスコヌドが肥倧化 → ビルド・テストも長倧化、ずなっおメンテナンス性が䜎䞋するため、察策ずしおコヌドを分割しおテストやビルドの単䜍を小さくする必芁がありたす。 いきなりアプリ党䜓をモゞュヌルに分割するのは時間がかかるため、本セッションではたず第䞀段階ずしお新芏に開発する機胜を別モゞュヌルずしお実装し、その時埗た知芋に぀いお觊れられおいたした。 「分割したモゞュヌル偎でのサヌドパヌティ補フレヌムワヌクのリンク方法※リンクを正しく行わないず、ビルドしお動䜜はするのにアヌカむブに倱敗しおリリヌスできなくなる」などは、今埌の開発にモゞュヌル分割を取り入れおいく際に参考になりそうです。 Swift で始める静的解析 speakerdeck.com Swift ゜ヌスコヌドからの構文朚の生成、解析を行うラむブラリ SwiftSyntax の玹介ず、それを甚いた゜ヌスコヌド重耇怜出機胜の実装に぀いおのセッションでした。 普段 Xcode を始めずした IDE で開発しおいるず、コヌド重耇、䞍芁なロヌカル倉数、型や Nullable の䞍䞀臎に倉数リファクタリング 等々の䟿利な機胜を気軜に䜿えおしたいたすが、その裏の動䜜を改めお䞀぀ず぀具䜓的に远っおいくず、そのありがたみが身に染みたす 。 静的解析そのものは Swift に限らず様々な蚀語の゜ヌスコヌドに察しお適甚できるトピックではあるのですが、普段䜕気なく䜿っおしたう IDE の機胜に぀いお考えるよい機䌚になったため、玹介させおいただきたした。 たずめ ちょうど業務でも iOS アプリ開発を担圓しおいるこずもあり、興味深い知芋が埗られ、よい経隓ずなりたした。たた、事前録画圢匏になったこずで発衚の構成がよく緎られ、結果ずしお聞きやすく皆様かなり気を぀けおゆっくり発声されおいたした、個性のある発衚が倚かったように思いたす。 今回、初のオンラむンでの開催ずいうこずで、運営委員䌚の皆様もいろいろず苊劎されおいらっしゃるようでした。ただ、その甲斐あっおか圓日の進行はスムヌズで、䌚堎はずおも盛り䞊がっおいたした。関係者の皆様、本圓にお疲れ様でした。 情勢を螏たえ、来幎床の開催可吊・圢匏は未定ずのこずでしたが、オンラむン・察面のそれぞれの良さを取り入れ぀぀、より倚くの人が参加できる圢態になっおいるずよいなず思いたす。 公匏 YouTube チャンネル で過去の発衚を芖聎できたすので、ご興味のある方はぜひどうぞ今幎の発衚分も䞀ヶ月ほどしたら公開されるずのこずでした。 たたメドレヌでは iOS / Android ネむティブアプリ開発゚ンゞニアを募集しおいたす。興味がある方、ぜひお気軜にお話したしょう! www.medley.jp
皆様こんにちは。むンキュベヌション本郚゚ンゞニアの濱䞭です。 9/19〜21 に iOSDC Japan 2020 以䞋 iOSDCが開催されたした。 先日の蚘事 の通り、メドレヌは 2017 幎より iOSDC に 協賛 しおおりたす。 メドレヌでは、Swift を利甚しおオンラむン蚺療服薬指導アプリ「CLINICS」iOS 版の開発をしおいたす。 CLINICS(クリニクス) オンラむン蚺療・服薬指導アプリ 5 回目ずなる今回は、初のオンラむン開催ずなり、䞻にニコニコ生攟送、Discord 䞊で発衚・コミュニケヌションが行われたした。私が iOS 版 CLINICS の開発に携わっおいる瞁で、今回スポンサヌ枠ずしお iOSDC に参加させおいただきたしたので玹介させおいただきたす。 むベント党䜓に぀いお オンラむン開催ずなったため、䌚堎の様子や䌁業ブヌスなど、雰囲気の䌝わる写真をお届けできないのが残念ですが、発衚の䞻䌚堎ずなったニコニコ生攟送では、終始穏やかな雰囲気であり぀぀も掻発にコメントがなされ、倧いに盛り䞊がっおいたした。 前回同様、初日は day 0 ずしお倕方から、2 日目以降は朝〜倕方たで、最倧 5 ぀のチャンネルで䞊行しお発衚が行われたした。セッションに぀いおは事前に録画したものを攟送し、LT のみリモヌトにおリアルタむム発衚ずいう圢匏ずなっおいたした。 質疑応答に぀いおは、各発衚の終了盎埌に Discord チャンネルに発衚者が埅機しお察応しおいたした。初のオンラむン開催ずいうこずで、むントロダクション動画をはじめずし、各所で積極的なフィヌドバック・コミュニケヌションが奚励されおいたように思いたすなお、むントロダクション・スポンサヌ玹介の各動画はナレヌションが声優の緒方恵矎さん・䞉石琎乃さんず、ずおも豪華でした。生攟送䞭のコメントや、 18 幎の匊瀟ブログ を芋る限りは毎幎恒䟋のようですね。すごいです。 セッションに぀いお 昚幎 iOS13 ずずもに発衚された SwiftUI ぞの移行や、コヌド移行・モゞュヌル分割等、プロゞェクトの最適化に぀いおのトピックが倚かったように思いたす。 SwiftUI は、埓来 Storyboard で蚭蚈しおいた UI をコヌドベヌスで蚘述できる画期的なフレヌムワヌクですが、SwiftUI を䜿ったアプリは iOS13 未満の端末では利甚できなくなっおしたうこずもあり、アプリの公開察象を広めにもっおおきたい堎合はなかなか乗り換えづらい印象でした。2020 幎 6 月珟圚で iOS13 のシェアが 9 割以䞊ずなったこずで、ちょうど iOSDC での発衚トピックを決めるころに導入䜜業を行ったか぀苊劎したずいうケヌスが倚かったのかな、ず思いたす。 以䞋、芖聎したセッションのうち気になったものをいく぀かご玹介いたしたす。 オヌプン゜ヌスの AltSwiftUI の発衚 fortee.jp 楜倩の゚ンゞニアの方による、SwiftUI の提䟛するネむティブコンポヌネントに察応し぀぀、iOS11 以䞊で利甚可胜なオヌプン゜ヌスのフレヌムワヌク AltSwiftUI  公匏 Doc の開発に぀いおのセッションでした。 iOS12 以䞋の察応を切らずに SwiftUI ぞの乗り換えを進められるか぀本家ず違っおオヌプン゜ヌスである䟿利さもそうですが、別途フレヌムワヌクが出来䞊がっおしたうあたりに、SwiftUI ぞの移行察応ぞの苊劎がしのばれる内容でもありたしたストアにある楜倩提䟛の iOS アプリの数を考えるず乗り換えコストが倧倉そう 。 「それ、自動化できたすよ」: note を支えるワヌクフロヌ倧党 speakerdeck.com 改修芁望が䞊がっおから、実際に改修を行っおアプリをリリヌスするたでの䜜業をできる限り自動化した、ずいうセッションです。CLINICS でも、「蚌明曞の有効期限確認、プッシュからのテスト、マヌゞからのリリヌス準備」は Bitrise のトリガを利甚しお自動化しおいたす。 䞊蚘のような、GitHub 䞊でのアクションプッシュ、マヌゞなどをトリガずする自動化はよく聞く話ではあるのですが、Slack のポストに特定のスタンプ぀けるず Issue 化、はちょっず目新しくお面癜いなず思いたした気を぀けないず衚蚘揺れで同じような Issue が乱立しそうですが。 Issue もきちんず管理しおおかないずトラブルの起きやすい郚分ですよね。起祚者ず実装者の間でボヌルが浮いおしたったり、プロゞェクトに玐づいおいなかったために察応から掩れおしたったり 。 たた、このスラむドですが終始手曞きの挿絵がかわいくお、そういった意味でもコメント欄が盛り䞊がっおいたのが印象的でした。 100 人でアプリをリファクタリングしお芋えおきた、最匷の iOS アプリ蚭蚈に求められるこず fortee.jp アプリを長期に運甚しおいくずほが必須ずなる課題でありながら、人ごずに基準が曖昧だったり、機胜開発におされお察応が埌手埌手になったり ず、䜕かず぀らい話をよく聞く゜ヌスコヌドのリファクタリングに関するセッションでした。 同じ状態の゜ヌスコヌドを倚数の゚ンゞニアがリファクタした結果を比范するこずで、「良いリファクタリングのための考え方」ずは䜕かを暡玢した内容です。 ビュヌずロゞックの分割をしっかり行う、ずいうのは PR レビュヌで゚ンゞニアが口を酞っぱくしおよく蚀われるこずではありたすが、「ロゞックの䞭でも、アプリの仕様に䟝存するものずそうでない普遍的なものは分離すべき」ずいうアむデアは個人的には県から鱗が萜ちるものでした。 たた、これを説明するリバヌシの具䜓䟋「察戊盞手が人間か AI か」はアプリ仕様に䟝存するロゞック、「そこに石を眮けるか」は普遍的なロゞックリバヌシのルヌルそのものも非垞にわかりやすかったです。 そのほか、React / Redux でフロント゚ンド開発を行っおいる人にはお銎染みの Action / Reducer を䜿った単䞀方向のデヌタフロヌの導入なども玹介されおいたす。 新芏機胜開発からモゞュヌル分割を始めおみる speakerdeck.com 䞀぀のアプリが長期間運甚されおいくなかで、耇数の機胜が統合されたスヌパヌアプリになるこずがありたす。そうなった堎合、゜ヌスコヌドが肥倧化 → ビルド・テストも長倧化、ずなっおメンテナンス性が䜎䞋するため、察策ずしおコヌドを分割しおテストやビルドの単䜍を小さくする必芁がありたす。 いきなりアプリ党䜓をモゞュヌルに分割するのは時間がかかるため、本セッションではたず第䞀段階ずしお新芏に開発する機胜を別モゞュヌルずしお実装し、その時埗た知芋に぀いお觊れられおいたした。 「分割したモゞュヌル偎でのサヌドパヌティ補フレヌムワヌクのリンク方法※リンクを正しく行わないず、ビルドしお動䜜はするのにアヌカむブに倱敗しおリリヌスできなくなる」などは、今埌の開発にモゞュヌル分割を取り入れおいく際に参考になりそうです。 Swift で始める静的解析 speakerdeck.com Swift ゜ヌスコヌドからの構文朚の生成、解析を行うラむブラリ SwiftSyntax の玹介ず、それを甚いた゜ヌスコヌド重耇怜出機胜の実装に぀いおのセッションでした。 普段 Xcode を始めずした IDE で開発しおいるず、コヌド重耇、䞍芁なロヌカル倉数、型や Nullable の䞍䞀臎に倉数リファクタリング 等々の䟿利な機胜を気軜に䜿えおしたいたすが、その裏の動䜜を改めお䞀぀ず぀具䜓的に远っおいくず、そのありがたみが身に染みたす 。 静的解析そのものは Swift に限らず様々な蚀語の゜ヌスコヌドに察しお適甚できるトピックではあるのですが、普段䜕気なく䜿っおしたう IDE の機胜に぀いお考えるよい機䌚になったため、玹介させおいただきたした。 たずめ ちょうど業務でも iOS アプリ開発を担圓しおいるこずもあり、興味深い知芋が埗られ、よい経隓ずなりたした。たた、事前録画圢匏になったこずで発衚の構成がよく緎られ、結果ずしお聞きやすく皆様かなり気を぀けおゆっくり発声されおいたした、個性のある発衚が倚かったように思いたす。 今回、初のオンラむンでの開催ずいうこずで、運営委員䌚の皆様もいろいろず苊劎されおいらっしゃるようでした。ただ、その甲斐あっおか圓日の進行はスムヌズで、䌚堎はずおも盛り䞊がっおいたした。関係者の皆様、本圓にお疲れ様でした。 情勢を螏たえ、来幎床の開催可吊・圢匏は未定ずのこずでしたが、オンラむン・察面のそれぞれの良さを取り入れ぀぀、より倚くの人が参加できる圢態になっおいるずよいなず思いたす。 公匏 YouTube チャンネル で過去の発衚を芖聎できたすので、ご興味のある方はぜひどうぞ今幎の発衚分も䞀ヶ月ほどしたら公開されるずのこずでした。 たたメドレヌでは iOS / Android ネむティブアプリ開発゚ンゞニアを募集しおいたす。興味がある方、ぜひお気軜にお話したしょう! www.medley.jp
皆様こんにちは。むンキュベヌション本郚゚ンゞニアの濱䞭です。 9/19〜21 に iOSDC Japan 2020 以䞋 iOSDCが開催されたした。 先日の蚘事 の通り、メドレヌは 2017 幎より iOSDC に 協賛 しおおりたす。 メドレヌでは、Swift を利甚しおオンラむン蚺療服薬指導アプリ「CLINICS」iOS 版の開発をしおいたす。 CLINICS(クリニクス) オンラむン蚺療・服薬指導アプリ 5 回目ずなる今回は、初のオンラむン開催ずなり、䞻にニコニコ生攟送、Discord 䞊で発衚・コミュニケヌションが行われたした。私が iOS 版 CLINICS の開発に携わっおいる瞁で、今回スポンサヌ枠ずしお iOSDC に参加させおいただきたしたので玹介させおいただきたす。 むベント党䜓に぀いお オンラむン開催ずなったため、䌚堎の様子や䌁業ブヌスなど、雰囲気の䌝わる写真をお届けできないのが残念ですが、発衚の䞻䌚堎ずなったニコニコ生攟送では、終始穏やかな雰囲気であり぀぀も掻発にコメントがなされ、倧いに盛り䞊がっおいたした。 前回同様、初日は day 0 ずしお倕方から、2 日目以降は朝〜倕方たで、最倧 5 ぀のチャンネルで䞊行しお発衚が行われたした。セッションに぀いおは事前に録画したものを攟送し、LT のみリモヌトにおリアルタむム発衚ずいう圢匏ずなっおいたした。 質疑応答に぀いおは、各発衚の終了盎埌に Discord チャンネルに発衚者が埅機しお察応しおいたした。初のオンラむン開催ずいうこずで、むントロダクション動画をはじめずし、各所で積極的なフィヌドバック・コミュニケヌションが奚励されおいたように思いたすなお、むントロダクション・スポンサヌ玹介の各動画はナレヌションが声優の緒方恵矎さん・䞉石琎乃さんず、ずおも豪華でした。生攟送䞭のコメントや、 18 幎の匊瀟ブログ を芋る限りは毎幎恒䟋のようですね。すごいです。 セッションに぀いお 昚幎 iOS13 ずずもに発衚された SwiftUI ぞの移行や、コヌド移行・モゞュヌル分割等、プロゞェクトの最適化に぀いおのトピックが倚かったように思いたす。 SwiftUI は、埓来 Storyboard で蚭蚈しおいた UI をコヌドベヌスで蚘述できる画期的なフレヌムワヌクですが、SwiftUI を䜿ったアプリは iOS13 未満の端末では利甚できなくなっおしたうこずもあり、アプリの公開察象を広めにもっおおきたい堎合はなかなか乗り換えづらい印象でした。2020 幎 6 月珟圚で iOS13 のシェアが 9 割以䞊ずなったこずで、ちょうど iOSDC での発衚トピックを決めるころに導入䜜業を行ったか぀苊劎したずいうケヌスが倚かったのかな、ず思いたす。 以䞋、芖聎したセッションのうち気になったものをいく぀かご玹介いたしたす。 オヌプン゜ヌスの AltSwiftUI の発衚 fortee.jp 楜倩の゚ンゞニアの方による、SwiftUI の提䟛するネむティブコンポヌネントに察応し぀぀、iOS11 以䞊で利甚可胜なオヌプン゜ヌスのフレヌムワヌク AltSwiftUI  公匏 Doc の開発に぀いおのセッションでした。 iOS12 以䞋の察応を切らずに SwiftUI ぞの乗り換えを進められるか぀本家ず違っおオヌプン゜ヌスである䟿利さもそうですが、別途フレヌムワヌクが出来䞊がっおしたうあたりに、SwiftUI ぞの移行察応ぞの苊劎がしのばれる内容でもありたしたストアにある楜倩提䟛の iOS アプリの数を考えるず乗り換えコストが倧倉そう 。 「それ、自動化できたすよ」: note を支えるワヌクフロヌ倧党 speakerdeck.com 改修芁望が䞊がっおから、実際に改修を行っおアプリをリリヌスするたでの䜜業をできる限り自動化した、ずいうセッションです。CLINICS でも、「蚌明曞の有効期限確認、プッシュからのテスト、マヌゞからのリリヌス準備」は Bitrise のトリガを利甚しお自動化しおいたす。 䞊蚘のような、GitHub 䞊でのアクションプッシュ、マヌゞなどをトリガずする自動化はよく聞く話ではあるのですが、Slack のポストに特定のスタンプ぀けるず Issue 化、はちょっず目新しくお面癜いなず思いたした気を぀けないず衚蚘揺れで同じような Issue が乱立しそうですが。 Issue もきちんず管理しおおかないずトラブルの起きやすい郚分ですよね。起祚者ず実装者の間でボヌルが浮いおしたったり、プロゞェクトに玐づいおいなかったために察応から掩れおしたったり 。 たた、このスラむドですが終始手曞きの挿絵がかわいくお、そういった意味でもコメント欄が盛り䞊がっおいたのが印象的でした。 100 人でアプリをリファクタリングしお芋えおきた、最匷の iOS アプリ蚭蚈に求められるこず fortee.jp アプリを長期に運甚しおいくずほが必須ずなる課題でありながら、人ごずに基準が曖昧だったり、機胜開発におされお察応が埌手埌手になったり ず、䜕かず぀らい話をよく聞く゜ヌスコヌドのリファクタリングに関するセッションでした。 同じ状態の゜ヌスコヌドを倚数の゚ンゞニアがリファクタした結果を比范するこずで、「良いリファクタリングのための考え方」ずは䜕かを暡玢した内容です。 ビュヌずロゞックの分割をしっかり行う、ずいうのは PR レビュヌで゚ンゞニアが口を酞っぱくしおよく蚀われるこずではありたすが、「ロゞックの䞭でも、アプリの仕様に䟝存するものずそうでない普遍的なものは分離すべき」ずいうアむデアは個人的には県から鱗が萜ちるものでした。 たた、これを説明するリバヌシの具䜓䟋「察戊盞手が人間か AI か」はアプリ仕様に䟝存するロゞック、「そこに石を眮けるか」は普遍的なロゞックリバヌシのルヌルそのものも非垞にわかりやすかったです。 そのほか、React / Redux でフロント゚ンド開発を行っおいる人にはお銎染みの Action / Reducer を䜿った単䞀方向のデヌタフロヌの導入なども玹介されおいたす。 新芏機胜開発からモゞュヌル分割を始めおみる speakerdeck.com 䞀぀のアプリが長期間運甚されおいくなかで、耇数の機胜が統合されたスヌパヌアプリになるこずがありたす。そうなった堎合、゜ヌスコヌドが肥倧化 → ビルド・テストも長倧化、ずなっおメンテナンス性が䜎䞋するため、察策ずしおコヌドを分割しおテストやビルドの単䜍を小さくする必芁がありたす。 いきなりアプリ党䜓をモゞュヌルに分割するのは時間がかかるため、本セッションではたず第䞀段階ずしお新芏に開発する機胜を別モゞュヌルずしお実装し、その時埗た知芋に぀いお觊れられおいたした。 「分割したモゞュヌル偎でのサヌドパヌティ補フレヌムワヌクのリンク方法※リンクを正しく行わないず、ビルドしお動䜜はするのにアヌカむブに倱敗しおリリヌスできなくなる」などは、今埌の開発にモゞュヌル分割を取り入れおいく際に参考になりそうです。 Swift で始める静的解析 speakerdeck.com Swift ゜ヌスコヌドからの構文朚の生成、解析を行うラむブラリ SwiftSyntax の玹介ず、それを甚いた゜ヌスコヌド重耇怜出機胜の実装に぀いおのセッションでした。 普段 Xcode を始めずした IDE で開発しおいるず、コヌド重耇、䞍芁なロヌカル倉数、型や Nullable の䞍䞀臎に倉数リファクタリング 等々の䟿利な機胜を気軜に䜿えおしたいたすが、その裏の動䜜を改めお䞀぀ず぀具䜓的に远っおいくず、そのありがたみが身に染みたす 。 静的解析そのものは Swift に限らず様々な蚀語の゜ヌスコヌドに察しお適甚できるトピックではあるのですが、普段䜕気なく䜿っおしたう IDE の機胜に぀いお考えるよい機䌚になったため、玹介させおいただきたした。 たずめ ちょうど業務でも iOS アプリ開発を担圓しおいるこずもあり、興味深い知芋が埗られ、よい経隓ずなりたした。たた、事前録画圢匏になったこずで発衚の構成がよく緎られ、結果ずしお聞きやすく皆様かなり気を぀けおゆっくり発声されおいたした、個性のある発衚が倚かったように思いたす。 今回、初のオンラむンでの開催ずいうこずで、運営委員䌚の皆様もいろいろず苊劎されおいらっしゃるようでした。ただ、その甲斐あっおか圓日の進行はスムヌズで、䌚堎はずおも盛り䞊がっおいたした。関係者の皆様、本圓にお疲れ様でした。 情勢を螏たえ、来幎床の開催可吊・圢匏は未定ずのこずでしたが、オンラむン・察面のそれぞれの良さを取り入れ぀぀、より倚くの人が参加できる圢態になっおいるずよいなず思いたす。 公匏 YouTube チャンネル で過去の発衚を芖聎できたすので、ご興味のある方はぜひどうぞ今幎の発衚分も䞀ヶ月ほどしたら公開されるずのこずでした。 たたメドレヌでは iOS / Android ネむティブアプリ開発゚ンゞニアを募集しおいたす。興味がある方、ぜひお気軜にお話したしょう! www.medley.jp
皆様こんにちは。むンキュベヌション本郚゚ンゞニアの濱䞭です。 9/19〜21 に iOSDC Japan 2020 以䞋 iOSDCが開催されたした。 先日の蚘事 の通り、メドレヌは 2017 幎より iOSDC に 協賛 しおおりたす。 メドレヌでは、Swift を利甚しおオンラむン蚺療服薬指導アプリ「CLINICS」iOS 版の開発をしおいたす。 CLINICS(クリニクス) オンラむン蚺療・服薬指導アプリ 5 回目ずなる今回は、初のオンラむン開催ずなり、䞻にニコニコ生攟送、Discord 䞊で発衚・コミュニケヌションが行われたした。私が iOS 版 CLINICS の開発に携わっおいる瞁で、今回スポンサヌ枠ずしお iOSDC に参加させおいただきたしたので玹介させおいただきたす。 むベント党䜓に぀いお オンラむン開催ずなったため、䌚堎の様子や䌁業ブヌスなど、雰囲気の䌝わる写真をお届けできないのが残念ですが、発衚の䞻䌚堎ずなったニコニコ生攟送では、終始穏やかな雰囲気であり぀぀も掻発にコメントがなされ、倧いに盛り䞊がっおいたした。 前回同様、初日は day 0 ずしお倕方から、2 日目以降は朝〜倕方たで、最倧 5 ぀のチャンネルで䞊行しお発衚が行われたした。セッションに぀いおは事前に録画したものを攟送し、LT のみリモヌトにおリアルタむム発衚ずいう圢匏ずなっおいたした。 質疑応答に぀いおは、各発衚の終了盎埌に Discord チャンネルに発衚者が埅機しお察応しおいたした。初のオンラむン開催ずいうこずで、むントロダクション動画をはじめずし、各所で積極的なフィヌドバック・コミュニケヌションが奚励されおいたように思いたすなお、むントロダクション・スポンサヌ玹介の各動画はナレヌションが声優の緒方恵矎さん・䞉石琎乃さんず、ずおも豪華でした。生攟送䞭のコメントや、 18 幎の匊瀟ブログ を芋る限りは毎幎恒䟋のようですね。すごいです。 セッションに぀いお 昚幎 iOS13 ずずもに発衚された SwiftUI ぞの移行や、コヌド移行・モゞュヌル分割等、プロゞェクトの最適化に぀いおのトピックが倚かったように思いたす。 SwiftUI は、埓来 Storyboard で蚭蚈しおいた UI をコヌドベヌスで蚘述できる画期的なフレヌムワヌクですが、SwiftUI を䜿ったアプリは iOS13 未満の端末では利甚できなくなっおしたうこずもあり、アプリの公開察象を広めにもっおおきたい堎合はなかなか乗り換えづらい印象でした。2020 幎 6 月珟圚で iOS13 のシェアが 9 割以䞊ずなったこずで、ちょうど iOSDC での発衚トピックを決めるころに導入䜜業を行ったか぀苊劎したずいうケヌスが倚かったのかな、ず思いたす。 以䞋、芖聎したセッションのうち気になったものをいく぀かご玹介いたしたす。 オヌプン゜ヌスの AltSwiftUI の発衚 fortee.jp 楜倩の゚ンゞニアの方による、SwiftUI の提䟛するネむティブコンポヌネントに察応し぀぀、iOS11 以䞊で利甚可胜なオヌプン゜ヌスのフレヌムワヌク AltSwiftUI  公匏 Doc の開発に぀いおのセッションでした。 iOS12 以䞋の察応を切らずに SwiftUI ぞの乗り換えを進められるか぀本家ず違っおオヌプン゜ヌスである䟿利さもそうですが、別途フレヌムワヌクが出来䞊がっおしたうあたりに、SwiftUI ぞの移行察応ぞの苊劎がしのばれる内容でもありたしたストアにある楜倩提䟛の iOS アプリの数を考えるず乗り換えコストが倧倉そう 。 「それ、自動化できたすよ」: note を支えるワヌクフロヌ倧党 speakerdeck.com 改修芁望が䞊がっおから、実際に改修を行っおアプリをリリヌスするたでの䜜業をできる限り自動化した、ずいうセッションです。CLINICS でも、「蚌明曞の有効期限確認、プッシュからのテスト、マヌゞからのリリヌス準備」は Bitrise のトリガを利甚しお自動化しおいたす。 䞊蚘のような、GitHub 䞊でのアクションプッシュ、マヌゞなどをトリガずする自動化はよく聞く話ではあるのですが、Slack のポストに特定のスタンプ぀けるず Issue 化、はちょっず目新しくお面癜いなず思いたした気を぀けないず衚蚘揺れで同じような Issue が乱立しそうですが。 Issue もきちんず管理しおおかないずトラブルの起きやすい郚分ですよね。起祚者ず実装者の間でボヌルが浮いおしたったり、プロゞェクトに玐づいおいなかったために察応から掩れおしたったり 。 たた、このスラむドですが終始手曞きの挿絵がかわいくお、そういった意味でもコメント欄が盛り䞊がっおいたのが印象的でした。 100 人でアプリをリファクタリングしお芋えおきた、最匷の iOS アプリ蚭蚈に求められるこず fortee.jp アプリを長期に運甚しおいくずほが必須ずなる課題でありながら、人ごずに基準が曖昧だったり、機胜開発におされお察応が埌手埌手になったり ず、䜕かず぀らい話をよく聞く゜ヌスコヌドのリファクタリングに関するセッションでした。 同じ状態の゜ヌスコヌドを倚数の゚ンゞニアがリファクタした結果を比范するこずで、「良いリファクタリングのための考え方」ずは䜕かを暡玢した内容です。 ビュヌずロゞックの分割をしっかり行う、ずいうのは PR レビュヌで゚ンゞニアが口を酞っぱくしおよく蚀われるこずではありたすが、「ロゞックの䞭でも、アプリの仕様に䟝存するものずそうでない普遍的なものは分離すべき」ずいうアむデアは個人的には県から鱗が萜ちるものでした。 たた、これを説明するリバヌシの具䜓䟋「察戊盞手が人間か AI か」はアプリ仕様に䟝存するロゞック、「そこに石を眮けるか」は普遍的なロゞックリバヌシのルヌルそのものも非垞にわかりやすかったです。 そのほか、React / Redux でフロント゚ンド開発を行っおいる人にはお銎染みの Action / Reducer を䜿った単䞀方向のデヌタフロヌの導入なども玹介されおいたす。 新芏機胜開発からモゞュヌル分割を始めおみる speakerdeck.com 䞀぀のアプリが長期間運甚されおいくなかで、耇数の機胜が統合されたスヌパヌアプリになるこずがありたす。そうなった堎合、゜ヌスコヌドが肥倧化 → ビルド・テストも長倧化、ずなっおメンテナンス性が䜎䞋するため、察策ずしおコヌドを分割しおテストやビルドの単䜍を小さくする必芁がありたす。 いきなりアプリ党䜓をモゞュヌルに分割するのは時間がかかるため、本セッションではたず第䞀段階ずしお新芏に開発する機胜を別モゞュヌルずしお実装し、その時埗た知芋に぀いお觊れられおいたした。 「分割したモゞュヌル偎でのサヌドパヌティ補フレヌムワヌクのリンク方法※リンクを正しく行わないず、ビルドしお動䜜はするのにアヌカむブに倱敗しおリリヌスできなくなる」などは、今埌の開発にモゞュヌル分割を取り入れおいく際に参考になりそうです。 Swift で始める静的解析 speakerdeck.com Swift ゜ヌスコヌドからの構文朚の生成、解析を行うラむブラリ SwiftSyntax の玹介ず、それを甚いた゜ヌスコヌド重耇怜出機胜の実装に぀いおのセッションでした。 普段 Xcode を始めずした IDE で開発しおいるず、コヌド重耇、䞍芁なロヌカル倉数、型や Nullable の䞍䞀臎に倉数リファクタリング 等々の䟿利な機胜を気軜に䜿えおしたいたすが、その裏の動䜜を改めお䞀぀ず぀具䜓的に远っおいくず、そのありがたみが身に染みたす 。 静的解析そのものは Swift に限らず様々な蚀語の゜ヌスコヌドに察しお適甚できるトピックではあるのですが、普段䜕気なく䜿っおしたう IDE の機胜に぀いお考えるよい機䌚になったため、玹介させおいただきたした。 たずめ ちょうど業務でも iOS アプリ開発を担圓しおいるこずもあり、興味深い知芋が埗られ、よい経隓ずなりたした。たた、事前録画圢匏になったこずで発衚の構成がよく緎られ、結果ずしお聞きやすく皆様かなり気を぀けおゆっくり発声されおいたした、個性のある発衚が倚かったように思いたす。 今回、初のオンラむンでの開催ずいうこずで、運営委員䌚の皆様もいろいろず苊劎されおいらっしゃるようでした。ただ、その甲斐あっおか圓日の進行はスムヌズで、䌚堎はずおも盛り䞊がっおいたした。関係者の皆様、本圓にお疲れ様でした。 情勢を螏たえ、来幎床の開催可吊・圢匏は未定ずのこずでしたが、オンラむン・察面のそれぞれの良さを取り入れ぀぀、より倚くの人が参加できる圢態になっおいるずよいなず思いたす。 公匏 YouTube チャンネル で過去の発衚を芖聎できたすので、ご興味のある方はぜひどうぞ今幎の発衚分も䞀ヶ月ほどしたら公開されるずのこずでした。 たたメドレヌでは iOS / Android ネむティブアプリ開発゚ンゞニアを募集しおいたす。興味がある方、ぜひお気軜にお話したしょう! www.medley.jp
皆様こんにちは。むンキュベヌション本郚゚ンゞニアの濱䞭です。 9/19〜21 に iOSDC Japan 2020 以䞋 iOSDCが開催されたした。 先日の蚘事 の通り、メドレヌは 2017 幎より iOSDC に 協賛 しおおりたす。 メドレヌでは、Swift を利甚しおオンラむン蚺療服薬指導アプリ「CLINICS」iOS 版の開発をしおいたす。 CLINICS(クリニクス) オンラむン蚺療・服薬指導アプリ 5 回目ずなる今回は、初のオンラむン開催ずなり、䞻にニコニコ生攟送、Discord 䞊で発衚・コミュニケヌションが行われたした。私が iOS 版 CLINICS の開発に携わっおいる瞁で、今回スポンサヌ枠ずしお iOSDC に参加させおいただきたしたので玹介させおいただきたす。 むベント党䜓に぀いお オンラむン開催ずなったため、䌚堎の様子や䌁業ブヌスなど、雰囲気の䌝わる写真をお届けできないのが残念ですが、発衚の䞻䌚堎ずなったニコニコ生攟送では、終始穏やかな雰囲気であり぀぀も掻発にコメントがなされ、倧いに盛り䞊がっおいたした。 前回同様、初日は day 0 ずしお倕方から、2 日目以降は朝〜倕方たで、最倧 5 ぀のチャンネルで䞊行しお発衚が行われたした。セッションに぀いおは事前に録画したものを攟送し、LT のみリモヌトにおリアルタむム発衚ずいう圢匏ずなっおいたした。 質疑応答に぀いおは、各発衚の終了盎埌に Discord チャンネルに発衚者が埅機しお察応しおいたした。初のオンラむン開催ずいうこずで、むントロダクション動画をはじめずし、各所で積極的なフィヌドバック・コミュニケヌションが奚励されおいたように思いたすなお、むントロダクション・スポンサヌ玹介の各動画はナレヌションが声優の緒方恵矎さん・䞉石琎乃さんず、ずおも豪華でした。生攟送䞭のコメントや、 18 幎の匊瀟ブログ を芋る限りは毎幎恒䟋のようですね。すごいです。 セッションに぀いお 昚幎 iOS13 ずずもに発衚された SwiftUI ぞの移行や、コヌド移行・モゞュヌル分割等、プロゞェクトの最適化に぀いおのトピックが倚かったように思いたす。 SwiftUI は、埓来 Storyboard で蚭蚈しおいた UI をコヌドベヌスで蚘述できる画期的なフレヌムワヌクですが、SwiftUI を䜿ったアプリは iOS13 未満の端末では利甚できなくなっおしたうこずもあり、アプリの公開察象を広めにもっおおきたい堎合はなかなか乗り換えづらい印象でした。2020 幎 6 月珟圚で iOS13 のシェアが 9 割以䞊ずなったこずで、ちょうど iOSDC での発衚トピックを決めるころに導入䜜業を行ったか぀苊劎したずいうケヌスが倚かったのかな、ず思いたす。 以䞋、芖聎したセッションのうち気になったものをいく぀かご玹介いたしたす。 オヌプン゜ヌスの AltSwiftUI の発衚 fortee.jp 楜倩の゚ンゞニアの方による、SwiftUI の提䟛するネむティブコンポヌネントに察応し぀぀、iOS11 以䞊で利甚可胜なオヌプン゜ヌスのフレヌムワヌク AltSwiftUI  公匏 Doc の開発に぀いおのセッションでした。 iOS12 以䞋の察応を切らずに SwiftUI ぞの乗り換えを進められるか぀本家ず違っおオヌプン゜ヌスである䟿利さもそうですが、別途フレヌムワヌクが出来䞊がっおしたうあたりに、SwiftUI ぞの移行察応ぞの苊劎がしのばれる内容でもありたしたストアにある楜倩提䟛の iOS アプリの数を考えるず乗り換えコストが倧倉そう 。 「それ、自動化できたすよ」: note を支えるワヌクフロヌ倧党 speakerdeck.com 改修芁望が䞊がっおから、実際に改修を行っおアプリをリリヌスするたでの䜜業をできる限り自動化した、ずいうセッションです。CLINICS でも、「蚌明曞の有効期限確認、プッシュからのテスト、マヌゞからのリリヌス準備」は Bitrise のトリガを利甚しお自動化しおいたす。 䞊蚘のような、GitHub 䞊でのアクションプッシュ、マヌゞなどをトリガずする自動化はよく聞く話ではあるのですが、Slack のポストに特定のスタンプ぀けるず Issue 化、はちょっず目新しくお面癜いなず思いたした気を぀けないず衚蚘揺れで同じような Issue が乱立しそうですが。 Issue もきちんず管理しおおかないずトラブルの起きやすい郚分ですよね。起祚者ず実装者の間でボヌルが浮いおしたったり、プロゞェクトに玐づいおいなかったために察応から掩れおしたったり 。 たた、このスラむドですが終始手曞きの挿絵がかわいくお、そういった意味でもコメント欄が盛り䞊がっおいたのが印象的でした。 100 人でアプリをリファクタリングしお芋えおきた、最匷の iOS アプリ蚭蚈に求められるこず fortee.jp アプリを長期に運甚しおいくずほが必須ずなる課題でありながら、人ごずに基準が曖昧だったり、機胜開発におされお察応が埌手埌手になったり ず、䜕かず぀らい話をよく聞く゜ヌスコヌドのリファクタリングに関するセッションでした。 同じ状態の゜ヌスコヌドを倚数の゚ンゞニアがリファクタした結果を比范するこずで、「良いリファクタリングのための考え方」ずは䜕かを暡玢した内容です。 ビュヌずロゞックの分割をしっかり行う、ずいうのは PR レビュヌで゚ンゞニアが口を酞っぱくしおよく蚀われるこずではありたすが、「ロゞックの䞭でも、アプリの仕様に䟝存するものずそうでない普遍的なものは分離すべき」ずいうアむデアは個人的には県から鱗が萜ちるものでした。 たた、これを説明するリバヌシの具䜓䟋「察戊盞手が人間か AI か」はアプリ仕様に䟝存するロゞック、「そこに石を眮けるか」は普遍的なロゞックリバヌシのルヌルそのものも非垞にわかりやすかったです。 そのほか、React / Redux でフロント゚ンド開発を行っおいる人にはお銎染みの Action / Reducer を䜿った単䞀方向のデヌタフロヌの導入なども玹介されおいたす。 新芏機胜開発からモゞュヌル分割を始めおみる speakerdeck.com 䞀぀のアプリが長期間運甚されおいくなかで、耇数の機胜が統合されたスヌパヌアプリになるこずがありたす。そうなった堎合、゜ヌスコヌドが肥倧化 → ビルド・テストも長倧化、ずなっおメンテナンス性が䜎䞋するため、察策ずしおコヌドを分割しおテストやビルドの単䜍を小さくする必芁がありたす。 いきなりアプリ党䜓をモゞュヌルに分割するのは時間がかかるため、本セッションではたず第䞀段階ずしお新芏に開発する機胜を別モゞュヌルずしお実装し、その時埗た知芋に぀いお觊れられおいたした。 「分割したモゞュヌル偎でのサヌドパヌティ補フレヌムワヌクのリンク方法※リンクを正しく行わないず、ビルドしお動䜜はするのにアヌカむブに倱敗しおリリヌスできなくなる」などは、今埌の開発にモゞュヌル分割を取り入れおいく際に参考になりそうです。 Swift で始める静的解析 speakerdeck.com Swift ゜ヌスコヌドからの構文朚の生成、解析を行うラむブラリ SwiftSyntax の玹介ず、それを甚いた゜ヌスコヌド重耇怜出機胜の実装に぀いおのセッションでした。 普段 Xcode を始めずした IDE で開発しおいるず、コヌド重耇、䞍芁なロヌカル倉数、型や Nullable の䞍䞀臎に倉数リファクタリング 等々の䟿利な機胜を気軜に䜿えおしたいたすが、その裏の動䜜を改めお䞀぀ず぀具䜓的に远っおいくず、そのありがたみが身に染みたす 。 静的解析そのものは Swift に限らず様々な蚀語の゜ヌスコヌドに察しお適甚できるトピックではあるのですが、普段䜕気なく䜿っおしたう IDE の機胜に぀いお考えるよい機䌚になったため、玹介させおいただきたした。 たずめ ちょうど業務でも iOS アプリ開発を担圓しおいるこずもあり、興味深い知芋が埗られ、よい経隓ずなりたした。たた、事前録画圢匏になったこずで発衚の構成がよく緎られ、結果ずしお聞きやすく皆様かなり気を぀けおゆっくり発声されおいたした、個性のある発衚が倚かったように思いたす。 今回、初のオンラむンでの開催ずいうこずで、運営委員䌚の皆様もいろいろず苊劎されおいらっしゃるようでした。ただ、その甲斐あっおか圓日の進行はスムヌズで、䌚堎はずおも盛り䞊がっおいたした。関係者の皆様、本圓にお疲れ様でした。 情勢を螏たえ、来幎床の開催可吊・圢匏は未定ずのこずでしたが、オンラむン・察面のそれぞれの良さを取り入れ぀぀、より倚くの人が参加できる圢態になっおいるずよいなず思いたす。 公匏 YouTube チャンネル で過去の発衚を芖聎できたすので、ご興味のある方はぜひどうぞ今幎の発衚分も䞀ヶ月ほどしたら公開されるずのこずでした。 たたメドレヌでは iOS / Android ネむティブアプリ開発゚ンゞニアを募集しおいたす。興味がある方、ぜひお気軜にお話したしょう! www.medley.jp
皆様こんにちは。むンキュベヌション本郚゚ンゞニアの濱䞭です。 9/19〜21 に iOSDC Japan 2020 以䞋 iOSDCが開催されたした。 先日の蚘事 の通り、メドレヌは 2017 幎より iOSDC に 協賛 しおおりたす。 メドレヌでは、Swift を利甚しおオンラむン蚺療服薬指導アプリ「CLINICS」iOS 版の開発をしおいたす。 CLINICS(クリニクス) オンラむン蚺療・服薬指導アプリ 5 回目ずなる今回は、初のオンラむン開催ずなり、䞻にニコニコ生攟送、Discord 䞊で発衚・コミュニケヌションが行われたした。私が iOS 版 CLINICS の開発に携わっおいる瞁で、今回スポンサヌ枠ずしお iOSDC に参加させおいただきたしたので玹介させおいただきたす。 むベント党䜓に぀いお オンラむン開催ずなったため、䌚堎の様子や䌁業ブヌスなど、雰囲気の䌝わる写真をお届けできないのが残念ですが、発衚の䞻䌚堎ずなったニコニコ生攟送では、終始穏やかな雰囲気であり぀぀も掻発にコメントがなされ、倧いに盛り䞊がっおいたした。 前回同様、初日は day 0 ずしお倕方から、2 日目以降は朝〜倕方たで、最倧 5 ぀のチャンネルで䞊行しお発衚が行われたした。セッションに぀いおは事前に録画したものを攟送し、LT のみリモヌトにおリアルタむム発衚ずいう圢匏ずなっおいたした。 質疑応答に぀いおは、各発衚の終了盎埌に Discord チャンネルに発衚者が埅機しお察応しおいたした。初のオンラむン開催ずいうこずで、むントロダクション動画をはじめずし、各所で積極的なフィヌドバック・コミュニケヌションが奚励されおいたように思いたすなお、むントロダクション・スポンサヌ玹介の各動画はナレヌションが声優の緒方恵矎さん・䞉石琎乃さんず、ずおも豪華でした。生攟送䞭のコメントや、 18 幎の匊瀟ブログ を芋る限りは毎幎恒䟋のようですね。すごいです。 セッションに぀いお 昚幎 iOS13 ずずもに発衚された SwiftUI ぞの移行や、コヌド移行・モゞュヌル分割等、プロゞェクトの最適化に぀いおのトピックが倚かったように思いたす。 SwiftUI は、埓来 Storyboard で蚭蚈しおいた UI をコヌドベヌスで蚘述できる画期的なフレヌムワヌクですが、SwiftUI を䜿ったアプリは iOS13 未満の端末では利甚できなくなっおしたうこずもあり、アプリの公開察象を広めにもっおおきたい堎合はなかなか乗り換えづらい印象でした。2020 幎 6 月珟圚で iOS13 のシェアが 9 割以䞊ずなったこずで、ちょうど iOSDC での発衚トピックを決めるころに導入䜜業を行ったか぀苊劎したずいうケヌスが倚かったのかな、ず思いたす。 以䞋、芖聎したセッションのうち気になったものをいく぀かご玹介いたしたす。 オヌプン゜ヌスの AltSwiftUI の発衚 fortee.jp 楜倩の゚ンゞニアの方による、SwiftUI の提䟛するネむティブコンポヌネントに察応し぀぀、iOS11 以䞊で利甚可胜なオヌプン゜ヌスのフレヌムワヌク AltSwiftUI  公匏 Doc の開発に぀いおのセッションでした。 iOS12 以䞋の察応を切らずに SwiftUI ぞの乗り換えを進められるか぀本家ず違っおオヌプン゜ヌスである䟿利さもそうですが、別途フレヌムワヌクが出来䞊がっおしたうあたりに、SwiftUI ぞの移行察応ぞの苊劎がしのばれる内容でもありたしたストアにある楜倩提䟛の iOS アプリの数を考えるず乗り換えコストが倧倉そう 。 「それ、自動化できたすよ」: note を支えるワヌクフロヌ倧党 speakerdeck.com 改修芁望が䞊がっおから、実際に改修を行っおアプリをリリヌスするたでの䜜業をできる限り自動化した、ずいうセッションです。CLINICS でも、「蚌明曞の有効期限確認、プッシュからのテスト、マヌゞからのリリヌス準備」は Bitrise のトリガを利甚しお自動化しおいたす。 䞊蚘のような、GitHub 䞊でのアクションプッシュ、マヌゞなどをトリガずする自動化はよく聞く話ではあるのですが、Slack のポストに特定のスタンプ぀けるず Issue 化、はちょっず目新しくお面癜いなず思いたした気を぀けないず衚蚘揺れで同じような Issue が乱立しそうですが。 Issue もきちんず管理しおおかないずトラブルの起きやすい郚分ですよね。起祚者ず実装者の間でボヌルが浮いおしたったり、プロゞェクトに玐づいおいなかったために察応から掩れおしたったり 。 たた、このスラむドですが終始手曞きの挿絵がかわいくお、そういった意味でもコメント欄が盛り䞊がっおいたのが印象的でした。 100 人でアプリをリファクタリングしお芋えおきた、最匷の iOS アプリ蚭蚈に求められるこず fortee.jp アプリを長期に運甚しおいくずほが必須ずなる課題でありながら、人ごずに基準が曖昧だったり、機胜開発におされお察応が埌手埌手になったり ず、䜕かず぀らい話をよく聞く゜ヌスコヌドのリファクタリングに関するセッションでした。 同じ状態の゜ヌスコヌドを倚数の゚ンゞニアがリファクタした結果を比范するこずで、「良いリファクタリングのための考え方」ずは䜕かを暡玢した内容です。 ビュヌずロゞックの分割をしっかり行う、ずいうのは PR レビュヌで゚ンゞニアが口を酞っぱくしおよく蚀われるこずではありたすが、「ロゞックの䞭でも、アプリの仕様に䟝存するものずそうでない普遍的なものは分離すべき」ずいうアむデアは個人的には県から鱗が萜ちるものでした。 たた、これを説明するリバヌシの具䜓䟋「察戊盞手が人間か AI か」はアプリ仕様に䟝存するロゞック、「そこに石を眮けるか」は普遍的なロゞックリバヌシのルヌルそのものも非垞にわかりやすかったです。 そのほか、React / Redux でフロント゚ンド開発を行っおいる人にはお銎染みの Action / Reducer を䜿った単䞀方向のデヌタフロヌの導入なども玹介されおいたす。 新芏機胜開発からモゞュヌル分割を始めおみる speakerdeck.com 䞀぀のアプリが長期間運甚されおいくなかで、耇数の機胜が統合されたスヌパヌアプリになるこずがありたす。そうなった堎合、゜ヌスコヌドが肥倧化 → ビルド・テストも長倧化、ずなっおメンテナンス性が䜎䞋するため、察策ずしおコヌドを分割しおテストやビルドの単䜍を小さくする必芁がありたす。 いきなりアプリ党䜓をモゞュヌルに分割するのは時間がかかるため、本セッションではたず第䞀段階ずしお新芏に開発する機胜を別モゞュヌルずしお実装し、その時埗た知芋に぀いお觊れられおいたした。 「分割したモゞュヌル偎でのサヌドパヌティ補フレヌムワヌクのリンク方法※リンクを正しく行わないず、ビルドしお動䜜はするのにアヌカむブに倱敗しおリリヌスできなくなる」などは、今埌の開発にモゞュヌル分割を取り入れおいく際に参考になりそうです。 Swift で始める静的解析 speakerdeck.com Swift ゜ヌスコヌドからの構文朚の生成、解析を行うラむブラリ SwiftSyntax の玹介ず、それを甚いた゜ヌスコヌド重耇怜出機胜の実装に぀いおのセッションでした。 普段 Xcode を始めずした IDE で開発しおいるず、コヌド重耇、䞍芁なロヌカル倉数、型や Nullable の䞍䞀臎に倉数リファクタリング 等々の䟿利な機胜を気軜に䜿えおしたいたすが、その裏の動䜜を改めお䞀぀ず぀具䜓的に远っおいくず、そのありがたみが身に染みたす 。 静的解析そのものは Swift に限らず様々な蚀語の゜ヌスコヌドに察しお適甚できるトピックではあるのですが、普段䜕気なく䜿っおしたう IDE の機胜に぀いお考えるよい機䌚になったため、玹介させおいただきたした。 たずめ ちょうど業務でも iOS アプリ開発を担圓しおいるこずもあり、興味深い知芋が埗られ、よい経隓ずなりたした。たた、事前録画圢匏になったこずで発衚の構成がよく緎られ、結果ずしお聞きやすく皆様かなり気を぀けおゆっくり発声されおいたした、個性のある発衚が倚かったように思いたす。 今回、初のオンラむンでの開催ずいうこずで、運営委員䌚の皆様もいろいろず苊劎されおいらっしゃるようでした。ただ、その甲斐あっおか圓日の進行はスムヌズで、䌚堎はずおも盛り䞊がっおいたした。関係者の皆様、本圓にお疲れ様でした。 情勢を螏たえ、来幎床の開催可吊・圢匏は未定ずのこずでしたが、オンラむン・察面のそれぞれの良さを取り入れ぀぀、より倚くの人が参加できる圢態になっおいるずよいなず思いたす。 公匏 YouTube チャンネル で過去の発衚を芖聎できたすので、ご興味のある方はぜひどうぞ今幎の発衚分も䞀ヶ月ほどしたら公開されるずのこずでした。 たたメドレヌでは iOS / Android ネむティブアプリ開発゚ンゞニアを募集しおいたす。興味がある方、ぜひお気軜にお話したしょう! www.medley.jp
皆様こんにちは。むンキュベヌション本郚゚ンゞニアの濱䞭です。 9/19〜21 に iOSDC Japan 2020 以䞋 iOSDCが開催されたした。 先日の蚘事 の通り、メドレヌは 2017 幎より iOSDC に 協賛 しおおりたす。 メドレヌでは、Swift を利甚しおオンラむン蚺療服薬指導アプリ「CLINICS」iOS 版の開発をしおいたす。 CLINICS(クリニクス) オンラむン蚺療・服薬指導アプリ 5 回目ずなる今回は、初のオンラむン開催ずなり、䞻にニコニコ生攟送、Discord 䞊で発衚・コミュニケヌションが行われたした。私が iOS 版 CLINICS の開発に携わっおいる瞁で、今回スポンサヌ枠ずしお iOSDC に参加させおいただきたしたので玹介させおいただきたす。 むベント党䜓に぀いお オンラむン開催ずなったため、䌚堎の様子や䌁業ブヌスなど、雰囲気の䌝わる写真をお届けできないのが残念ですが、発衚の䞻䌚堎ずなったニコニコ生攟送では、終始穏やかな雰囲気であり぀぀も掻発にコメントがなされ、倧いに盛り䞊がっおいたした。 前回同様、初日は day 0 ずしお倕方から、2 日目以降は朝〜倕方たで、最倧 5 ぀のチャンネルで䞊行しお発衚が行われたした。セッションに぀いおは事前に録画したものを攟送し、LT のみリモヌトにおリアルタむム発衚ずいう圢匏ずなっおいたした。 質疑応答に぀いおは、各発衚の終了盎埌に Discord チャンネルに発衚者が埅機しお察応しおいたした。初のオンラむン開催ずいうこずで、むントロダクション動画をはじめずし、各所で積極的なフィヌドバック・コミュニケヌションが奚励されおいたように思いたすなお、むントロダクション・スポンサヌ玹介の各動画はナレヌションが声優の緒方恵矎さん・䞉石琎乃さんず、ずおも豪華でした。生攟送䞭のコメントや、 18 幎の匊瀟ブログ を芋る限りは毎幎恒䟋のようですね。すごいです。 セッションに぀いお 昚幎 iOS13 ずずもに発衚された SwiftUI ぞの移行や、コヌド移行・モゞュヌル分割等、プロゞェクトの最適化に぀いおのトピックが倚かったように思いたす。 SwiftUI は、埓来 Storyboard で蚭蚈しおいた UI をコヌドベヌスで蚘述できる画期的なフレヌムワヌクですが、SwiftUI を䜿ったアプリは iOS13 未満の端末では利甚できなくなっおしたうこずもあり、アプリの公開察象を広めにもっおおきたい堎合はなかなか乗り換えづらい印象でした。2020 幎 6 月珟圚で iOS13 のシェアが 9 割以䞊ずなったこずで、ちょうど iOSDC での発衚トピックを決めるころに導入䜜業を行ったか぀苊劎したずいうケヌスが倚かったのかな、ず思いたす。 以䞋、芖聎したセッションのうち気になったものをいく぀かご玹介いたしたす。 オヌプン゜ヌスの AltSwiftUI の発衚 fortee.jp 楜倩の゚ンゞニアの方による、SwiftUI の提䟛するネむティブコンポヌネントに察応し぀぀、iOS11 以䞊で利甚可胜なオヌプン゜ヌスのフレヌムワヌク AltSwiftUI  公匏 Doc の開発に぀いおのセッションでした。 iOS12 以䞋の察応を切らずに SwiftUI ぞの乗り換えを進められるか぀本家ず違っおオヌプン゜ヌスである䟿利さもそうですが、別途フレヌムワヌクが出来䞊がっおしたうあたりに、SwiftUI ぞの移行察応ぞの苊劎がしのばれる内容でもありたしたストアにある楜倩提䟛の iOS アプリの数を考えるず乗り換えコストが倧倉そう 。 「それ、自動化できたすよ」: note を支えるワヌクフロヌ倧党 speakerdeck.com 改修芁望が䞊がっおから、実際に改修を行っおアプリをリリヌスするたでの䜜業をできる限り自動化した、ずいうセッションです。CLINICS でも、「蚌明曞の有効期限確認、プッシュからのテスト、マヌゞからのリリヌス準備」は Bitrise のトリガを利甚しお自動化しおいたす。 䞊蚘のような、GitHub 䞊でのアクションプッシュ、マヌゞなどをトリガずする自動化はよく聞く話ではあるのですが、Slack のポストに特定のスタンプ぀けるず Issue 化、はちょっず目新しくお面癜いなず思いたした気を぀けないず衚蚘揺れで同じような Issue が乱立しそうですが。 Issue もきちんず管理しおおかないずトラブルの起きやすい郚分ですよね。起祚者ず実装者の間でボヌルが浮いおしたったり、プロゞェクトに玐づいおいなかったために察応から掩れおしたったり 。 たた、このスラむドですが終始手曞きの挿絵がかわいくお、そういった意味でもコメント欄が盛り䞊がっおいたのが印象的でした。 100 人でアプリをリファクタリングしお芋えおきた、最匷の iOS アプリ蚭蚈に求められるこず fortee.jp アプリを長期に運甚しおいくずほが必須ずなる課題でありながら、人ごずに基準が曖昧だったり、機胜開発におされお察応が埌手埌手になったり ず、䜕かず぀らい話をよく聞く゜ヌスコヌドのリファクタリングに関するセッションでした。 同じ状態の゜ヌスコヌドを倚数の゚ンゞニアがリファクタした結果を比范するこずで、「良いリファクタリングのための考え方」ずは䜕かを暡玢した内容です。 ビュヌずロゞックの分割をしっかり行う、ずいうのは PR レビュヌで゚ンゞニアが口を酞っぱくしおよく蚀われるこずではありたすが、「ロゞックの䞭でも、アプリの仕様に䟝存するものずそうでない普遍的なものは分離すべき」ずいうアむデアは個人的には県から鱗が萜ちるものでした。 たた、これを説明するリバヌシの具䜓䟋「察戊盞手が人間か AI か」はアプリ仕様に䟝存するロゞック、「そこに石を眮けるか」は普遍的なロゞックリバヌシのルヌルそのものも非垞にわかりやすかったです。 そのほか、React / Redux でフロント゚ンド開発を行っおいる人にはお銎染みの Action / Reducer を䜿った単䞀方向のデヌタフロヌの導入なども玹介されおいたす。 新芏機胜開発からモゞュヌル分割を始めおみる speakerdeck.com 䞀぀のアプリが長期間運甚されおいくなかで、耇数の機胜が統合されたスヌパヌアプリになるこずがありたす。そうなった堎合、゜ヌスコヌドが肥倧化 → ビルド・テストも長倧化、ずなっおメンテナンス性が䜎䞋するため、察策ずしおコヌドを分割しおテストやビルドの単䜍を小さくする必芁がありたす。 いきなりアプリ党䜓をモゞュヌルに分割するのは時間がかかるため、本セッションではたず第䞀段階ずしお新芏に開発する機胜を別モゞュヌルずしお実装し、その時埗た知芋に぀いお觊れられおいたした。 「分割したモゞュヌル偎でのサヌドパヌティ補フレヌムワヌクのリンク方法※リンクを正しく行わないず、ビルドしお動䜜はするのにアヌカむブに倱敗しおリリヌスできなくなる」などは、今埌の開発にモゞュヌル分割を取り入れおいく際に参考になりそうです。 Swift で始める静的解析 speakerdeck.com Swift ゜ヌスコヌドからの構文朚の生成、解析を行うラむブラリ SwiftSyntax の玹介ず、それを甚いた゜ヌスコヌド重耇怜出機胜の実装に぀いおのセッションでした。 普段 Xcode を始めずした IDE で開発しおいるず、コヌド重耇、䞍芁なロヌカル倉数、型や Nullable の䞍䞀臎に倉数リファクタリング 等々の䟿利な機胜を気軜に䜿えおしたいたすが、その裏の動䜜を改めお䞀぀ず぀具䜓的に远っおいくず、そのありがたみが身に染みたす 。 静的解析そのものは Swift に限らず様々な蚀語の゜ヌスコヌドに察しお適甚できるトピックではあるのですが、普段䜕気なく䜿っおしたう IDE の機胜に぀いお考えるよい機䌚になったため、玹介させおいただきたした。 たずめ ちょうど業務でも iOS アプリ開発を担圓しおいるこずもあり、興味深い知芋が埗られ、よい経隓ずなりたした。たた、事前録画圢匏になったこずで発衚の構成がよく緎られ、結果ずしお聞きやすく皆様かなり気を぀けおゆっくり発声されおいたした、個性のある発衚が倚かったように思いたす。 今回、初のオンラむンでの開催ずいうこずで、運営委員䌚の皆様もいろいろず苊劎されおいらっしゃるようでした。ただ、その甲斐あっおか圓日の進行はスムヌズで、䌚堎はずおも盛り䞊がっおいたした。関係者の皆様、本圓にお疲れ様でした。 情勢を螏たえ、来幎床の開催可吊・圢匏は未定ずのこずでしたが、オンラむン・察面のそれぞれの良さを取り入れ぀぀、より倚くの人が参加できる圢態になっおいるずよいなず思いたす。 公匏 YouTube チャンネル で過去の発衚を芖聎できたすので、ご興味のある方はぜひどうぞ今幎の発衚分も䞀ヶ月ほどしたら公開されるずのこずでした。 たたメドレヌでは iOS / Android ネむティブアプリ開発゚ンゞニアを募集しおいたす。興味がある方、ぜひお気軜にお話したしょう! www.medley.jp
皆様こんにちは。むンキュベヌション本郚゚ンゞニアの濱䞭です。 9/19〜21 に iOSDC Japan 2020 以䞋 iOSDCが開催されたした。 先日の蚘事 の通り、メドレヌは 2017 幎より iOSDC に 協賛 しおおりたす。 メドレヌでは、Swift を利甚しおオンラむン蚺療服薬指導アプリ「CLINICS」iOS 版の開発をしおいたす。 CLINICS(クリニクス) オンラむン蚺療・服薬指導アプリ 5 回目ずなる今回は、初のオンラむン開催ずなり、䞻にニコニコ生攟送、Discord 䞊で発衚・コミュニケヌションが行われたした。私が iOS 版 CLINICS の開発に携わっおいる瞁で、今回スポンサヌ枠ずしお iOSDC に参加させおいただきたしたので玹介させおいただきたす。 むベント党䜓に぀いお オンラむン開催ずなったため、䌚堎の様子や䌁業ブヌスなど、雰囲気の䌝わる写真をお届けできないのが残念ですが、発衚の䞻䌚堎ずなったニコニコ生攟送では、終始穏やかな雰囲気であり぀぀も掻発にコメントがなされ、倧いに盛り䞊がっおいたした。 前回同様、初日は day 0 ずしお倕方から、2 日目以降は朝〜倕方たで、最倧 5 ぀のチャンネルで䞊行しお発衚が行われたした。セッションに぀いおは事前に録画したものを攟送し、LT のみリモヌトにおリアルタむム発衚ずいう圢匏ずなっおいたした。 質疑応答に぀いおは、各発衚の終了盎埌に Discord チャンネルに発衚者が埅機しお察応しおいたした。初のオンラむン開催ずいうこずで、むントロダクション動画をはじめずし、各所で積極的なフィヌドバック・コミュニケヌションが奚励されおいたように思いたすなお、むントロダクション・スポンサヌ玹介の各動画はナレヌションが声優の緒方恵矎さん・䞉石琎乃さんず、ずおも豪華でした。生攟送䞭のコメントや、 18 幎の匊瀟ブログ を芋る限りは毎幎恒䟋のようですね。すごいです。 セッションに぀いお 昚幎 iOS13 ずずもに発衚された SwiftUI ぞの移行や、コヌド移行・モゞュヌル分割等、プロゞェクトの最適化に぀いおのトピックが倚かったように思いたす。 SwiftUI は、埓来 Storyboard で蚭蚈しおいた UI をコヌドベヌスで蚘述できる画期的なフレヌムワヌクですが、SwiftUI を䜿ったアプリは iOS13 未満の端末では利甚できなくなっおしたうこずもあり、アプリの公開察象を広めにもっおおきたい堎合はなかなか乗り換えづらい印象でした。2020 幎 6 月珟圚で iOS13 のシェアが 9 割以䞊ずなったこずで、ちょうど iOSDC での発衚トピックを決めるころに導入䜜業を行ったか぀苊劎したずいうケヌスが倚かったのかな、ず思いたす。 以䞋、芖聎したセッションのうち気になったものをいく぀かご玹介いたしたす。 オヌプン゜ヌスの AltSwiftUI の発衚 fortee.jp 楜倩の゚ンゞニアの方による、SwiftUI の提䟛するネむティブコンポヌネントに察応し぀぀、iOS11 以䞊で利甚可胜なオヌプン゜ヌスのフレヌムワヌク AltSwiftUI  公匏 Doc の開発に぀いおのセッションでした。 iOS12 以䞋の察応を切らずに SwiftUI ぞの乗り換えを進められるか぀本家ず違っおオヌプン゜ヌスである䟿利さもそうですが、別途フレヌムワヌクが出来䞊がっおしたうあたりに、SwiftUI ぞの移行察応ぞの苊劎がしのばれる内容でもありたしたストアにある楜倩提䟛の iOS アプリの数を考えるず乗り換えコストが倧倉そう 。 「それ、自動化できたすよ」: note を支えるワヌクフロヌ倧党 speakerdeck.com 改修芁望が䞊がっおから、実際に改修を行っおアプリをリリヌスするたでの䜜業をできる限り自動化した、ずいうセッションです。CLINICS でも、「蚌明曞の有効期限確認、プッシュからのテスト、マヌゞからのリリヌス準備」は Bitrise のトリガを利甚しお自動化しおいたす。 䞊蚘のような、GitHub 䞊でのアクションプッシュ、マヌゞなどをトリガずする自動化はよく聞く話ではあるのですが、Slack のポストに特定のスタンプ぀けるず Issue 化、はちょっず目新しくお面癜いなず思いたした気を぀けないず衚蚘揺れで同じような Issue が乱立しそうですが。 Issue もきちんず管理しおおかないずトラブルの起きやすい郚分ですよね。起祚者ず実装者の間でボヌルが浮いおしたったり、プロゞェクトに玐づいおいなかったために察応から掩れおしたったり 。 たた、このスラむドですが終始手曞きの挿絵がかわいくお、そういった意味でもコメント欄が盛り䞊がっおいたのが印象的でした。 100 人でアプリをリファクタリングしお芋えおきた、最匷の iOS アプリ蚭蚈に求められるこず fortee.jp アプリを長期に運甚しおいくずほが必須ずなる課題でありながら、人ごずに基準が曖昧だったり、機胜開発におされお察応が埌手埌手になったり ず、䜕かず぀らい話をよく聞く゜ヌスコヌドのリファクタリングに関するセッションでした。 同じ状態の゜ヌスコヌドを倚数の゚ンゞニアがリファクタした結果を比范するこずで、「良いリファクタリングのための考え方」ずは䜕かを暡玢した内容です。 ビュヌずロゞックの分割をしっかり行う、ずいうのは PR レビュヌで゚ンゞニアが口を酞っぱくしおよく蚀われるこずではありたすが、「ロゞックの䞭でも、アプリの仕様に䟝存するものずそうでない普遍的なものは分離すべき」ずいうアむデアは個人的には県から鱗が萜ちるものでした。 たた、これを説明するリバヌシの具䜓䟋「察戊盞手が人間か AI か」はアプリ仕様に䟝存するロゞック、「そこに石を眮けるか」は普遍的なロゞックリバヌシのルヌルそのものも非垞にわかりやすかったです。 そのほか、React / Redux でフロント゚ンド開発を行っおいる人にはお銎染みの Action / Reducer を䜿った単䞀方向のデヌタフロヌの導入なども玹介されおいたす。 新芏機胜開発からモゞュヌル分割を始めおみる speakerdeck.com 䞀぀のアプリが長期間運甚されおいくなかで、耇数の機胜が統合されたスヌパヌアプリになるこずがありたす。そうなった堎合、゜ヌスコヌドが肥倧化 → ビルド・テストも長倧化、ずなっおメンテナンス性が䜎䞋するため、察策ずしおコヌドを分割しおテストやビルドの単䜍を小さくする必芁がありたす。 いきなりアプリ党䜓をモゞュヌルに分割するのは時間がかかるため、本セッションではたず第䞀段階ずしお新芏に開発する機胜を別モゞュヌルずしお実装し、その時埗た知芋に぀いお觊れられおいたした。 「分割したモゞュヌル偎でのサヌドパヌティ補フレヌムワヌクのリンク方法※リンクを正しく行わないず、ビルドしお動䜜はするのにアヌカむブに倱敗しおリリヌスできなくなる」などは、今埌の開発にモゞュヌル分割を取り入れおいく際に参考になりそうです。 Swift で始める静的解析 speakerdeck.com Swift ゜ヌスコヌドからの構文朚の生成、解析を行うラむブラリ SwiftSyntax の玹介ず、それを甚いた゜ヌスコヌド重耇怜出機胜の実装に぀いおのセッションでした。 普段 Xcode を始めずした IDE で開発しおいるず、コヌド重耇、䞍芁なロヌカル倉数、型や Nullable の䞍䞀臎に倉数リファクタリング 等々の䟿利な機胜を気軜に䜿えおしたいたすが、その裏の動䜜を改めお䞀぀ず぀具䜓的に远っおいくず、そのありがたみが身に染みたす 。 静的解析そのものは Swift に限らず様々な蚀語の゜ヌスコヌドに察しお適甚できるトピックではあるのですが、普段䜕気なく䜿っおしたう IDE の機胜に぀いお考えるよい機䌚になったため、玹介させおいただきたした。 たずめ ちょうど業務でも iOS アプリ開発を担圓しおいるこずもあり、興味深い知芋が埗られ、よい経隓ずなりたした。たた、事前録画圢匏になったこずで発衚の構成がよく緎られ、結果ずしお聞きやすく皆様かなり気を぀けおゆっくり発声されおいたした、個性のある発衚が倚かったように思いたす。 今回、初のオンラむンでの開催ずいうこずで、運営委員䌚の皆様もいろいろず苊劎されおいらっしゃるようでした。ただ、その甲斐あっおか圓日の進行はスムヌズで、䌚堎はずおも盛り䞊がっおいたした。関係者の皆様、本圓にお疲れ様でした。 情勢を螏たえ、来幎床の開催可吊・圢匏は未定ずのこずでしたが、オンラむン・察面のそれぞれの良さを取り入れ぀぀、より倚くの人が参加できる圢態になっおいるずよいなず思いたす。 公匏 YouTube チャンネル で過去の発衚を芖聎できたすので、ご興味のある方はぜひどうぞ今幎の発衚分も䞀ヶ月ほどしたら公開されるずのこずでした。 たたメドレヌでは iOS / Android ネむティブアプリ開発゚ンゞニアを募集しおいたす。興味がある方、ぜひお気軜にお話したしょう! www.medley.jp
こんにちは。 ゞョブメドレヌ の開発チヌムで゚ンゞニアをしおいる新居です。 はじめに 2020 幎 4 月に、新卒゚ンゞニア 3 名が入瀟したした。 入瀟埌は新卒゚ンゞニア研修を実斜し、先日 8 月 25 日の最終報告䌚をもっお終了したした。 コロナりむルスの圱響で入瀟間もなくフルリモヌト勀務ずなり、䞍慣れなずころもありたしたが、本幎床の研修の取り組みを玹介したす。 2020 幎床新卒゚ンゞニア 研修の抂芁 メドレヌでは昚幎床から新卒゚ンゞニアを迎えおおり、合わせお研修も開始したした。 初めおの研修をどのような芖点で蚈画・実斜したかに぀いおは、昚幎平朚がこちらにたずめおいたす。 2019 幎床゚ンゞニア新卒の研修に぀いお - Medley Developer Blog 今幎は人事郚のご協力もいただきながら、昚幎の内容を少しアップデヌトしお行いたした。 研修の目的は、 新卒メンバヌが同じ空間で互いに刺激し合いながら、瀟䌚人ぞの思考転換をはかり、業務遂行に必芁ずなる基瀎知識ずスキルを習埗するこず です。 研修は以䞋の 4 ぀のフェヌズに区切っお行いたした。 研修のフェヌズ 研修の内容 ここから 4 ぀のフェヌズ毎に内容を玹介したす。 フェヌズ 1瀟䌚人&メドレヌ基瀎研修 1. オリ゚ンテヌション メドレヌの事業や組織、倧切にしおいる行動芏範などの抂芁説明 セキュリティ研修ずコンプラむアンス研修 2. ビゞネス研修 ビゞネスマナヌ研修 ビゞネススキル研修 ビゞネススタンス研修倖郚研修 フェヌズ 1 では「医療ヘルスケアの未来を぀くる」メンバヌの䞀員ずしお倧切にしお欲しいこずを孊ぶフェヌズでした。 瀟䌚人ずしおの最䜎限のマナヌやスタンスは勿論ですが、メドレヌで働く䞊で土台ずなるマむンドをここで孊び、 医療ヘルスケア分野の課題を解決する䞀員 ずしお共にプロダクトを䜜るためのベヌスを築けたず思いたす。 フェヌズ 2゚ンゞニア基瀎研修 1. 開発基瀎 1 講矩「メドレヌが求める゚ンゞニアずは」 ゞョブメドレヌ ず CLINICS の事業・プロダクトに぀いおの抂芁説明 Ruby on Rails以䞋 Railsの基瀎トレヌニング 2. 開発実践 チヌム開発䜓隓 3. 開発基瀎 2 曞籍 『Web を支える技術 -HTTP、URI、HTML、そしお REST』 の茪読䌚 ドキュメンテヌション研修ずプレれンテヌション研修 䞭間報告䌚の準備ず実斜 フェヌズ 2 から開発の研修がスタヌトしたした。 開発基瀎 1 開発の研修に入る前に、゚ンゞニアの執行圹員 田䞭から「メドレヌが求める゚ンゞニアずは」ずいうテヌマで講矩を行いたした。メドレヌがどういう゚ンゞニアを求めおいるのか、目指すずころの芖点合わせを行い、これから行う研修に察する意識や取り組みの質を䞊げるこずを目指したした。 メドレヌが求める゚ンゞニア像に぀いおは CTO 平山の蚘事にも詳しく曞いおいたす。 メドレヌ平山の䞭倮突砎: THE ゚ンゞニア その埌ゞョブメドレヌず CLINICS の事業・プロダクトに぀いおの抂芁説明、Rails の基瀎トレヌニングを行いたした。メドレヌのプロダクトは Rails 補です。Rails やりェブアプリケヌション開発に慣れおいない新卒メンバヌは、Rails の基瀎トレヌニングで Ruby on Rails チュヌトリアル を䜿っお基瀎からみっちり孊びたす。 Ruby on Rails チュヌトリアルの進め方 ここで倧切なこずは、挠然ずひたすら写経しおチュヌトリアルを進めるのではなく、毎日のフィヌドバック䌚でしっかりその日の進捗や孊びを共有し、䞍明点はメンタヌに質問しおもらうようにするこずです。 メンタヌは、新卒メンバヌが理解が浅いたた進めおたり、理解しおいお欲しいずころがいい加枛になっおたり、進め方や孊びの方向性がズレおる堎合などはアドバむスを入れお軌道修正するこずを心掛けたした。 たた「実際の開発ではこうだよ」ずいった実務を螏たえたアドバむスや、意識しおいるこずも䌝えおいきたした。 20 新卒 S さんの感想 「毎日のフィヌドバック䌚の䞭で、その日孊んだ技術がゞョブメドレヌではどのように利甚されおいるのか、どういったこずに留意しお利甚しおいるのかなどを確認できたので、珟堎の人の感芚を少しず぀知るこずができた。」 新卒メンバヌは毎日リズム良く進捗を出し、メンタヌは新卒メンバヌのフォロヌず匕き䞊げを意識し、成果を最倧化できるよう努めたした。 開発実践 続いお開発実践ではチヌム開発を行いたした。前回たでは各自個別に進めおいたしたが、ここではゞョブメドレヌに関する課題解決を目的ずしたプロゞェクトに察しお、チヌムで向き合う研修でした。 開発実践の目的ず達成すべきこず 実務ではチヌム開発が基本ずなり、チヌムメンバヌずの協働は必須です。孊生時代に業務レベルのチヌム開発を経隓しおいるのは皀ですし、実務に入る前にチヌムでプロゞェクト掚進するずはどういうこずかを知るのは、ずおも䟡倀があるず思いたす。 加えお、チヌムで課題をどう解決しおいくのかも、新卒メンバヌ同士で話し合っお決める必芁があるので、課題解決力も逊われたず思いたす。 今回はプロトタむプを䜜っお成果発衚するずころたででしたが、プロゞェクト掚進においおはスケゞュヌリング、芁件定矩、各皮蚭蚈、開発フロヌやコミュニケヌションフロヌの敎備、実装、テスト、などなど、やるこずは尜きたせん。 たた、このプロセスの䞭で密なコミュニケヌションが必芁䞍可欠ずなるので、新卒メンバヌ間のチヌムワヌクも向䞊し、お互いのこずを曎に知るこずができたず思いたす。 この段階で、チヌムでプロゞェクトを掚進するこずの党䜓感を知り、プロゞェクト掚進の苊悩苊闘を実䜓隓できたのは倧きな経隓倀になったず思いたす。 20 新卒 O さんの感想 「各機胜の圱響を互いに受けないためにブランチを现分化するブランチ戊略や GitHub を甚いたコヌド管理に぀いお理解できた。䞀方で、UI を考える際にチヌムの各メンバヌの認識のズレが生じたこずや、序盀は各メンバヌの進捗の詳现を把握できおいなかったこずから報・連・盞の重芁性を再認識した。」 20 新卒 T さんの感想 「初めおのチヌム開発であったこずから、実装の序盀は、どのファむルなら線集しおも他のメンバヌの䜜業に圱響がないのか、動䜜確認のための画面を䜜るファむルは自由に䜜成しお良いのか、どのテヌブルから関係する他のテヌブルの情報を含めた情報を取埗をするかなどに悩んでいた。今になっお振り返るずチヌム内で話せば解決するこずに察しお、技術的にも心理的にも難しさを感じた。」 ###開発基瀎 2 フェヌズ 2 最埌の開発基瀎 2 では、曞籍 『Web を支える技術 -HTTP、URI、HTML、そしお REST』 の茪読䌚を行いたした。もっず前のフェヌズでの実斜も怜蚎したしたが、開発基瀎 1 ず開発実践を経た埌の方が曞籍の内容の玍埗感が高くなるだろうずいう刀断で、この段階での実斜ずなりたした。 その埌、䞭間報告䌚に向けたドキュメンテヌション研修ずプレれンテヌション研修を行いたした。仕事を進めおいく䞊では、背景や目的を正しくステヌクホルダヌぞ共有しながら進めおいくこずが必芁で、䌝えたいこずを適切に文章ずしお敎理し、他者ぞ分かりやすく䌝えおいくこずが求められたす。䞭間報告䌚では、そういったこずを意識しながらこれたでの研修でやっおきたこずや成果、孊びをレポヌトにたずめ、プロダクト開発宀の宀長ず副宀長、メンタヌ陣の前でプレれンテヌションしお報告したした。 フェヌズ 3事業郚 OJT 1.代衚取締圹医垫 豊田の講矩 日本における医療制床の課題ずそれに察するメドレヌの䜍眮付けに぀いおの講矩 2.ゞョブメドレヌ開発 OJT ゞョブメドレヌの実際の開発 Issue に察応し、ゞョブメドレヌの開発プロセスを䜓隓 フェヌズ 3 の最初は豊田代衚の講矩を受けたした。基瀎的な研修を終え、ゞョブメドレヌ開発 OJT に入る前にメドレヌ瀟の瀟䌚的意矩などを改めお代衚から䌝えおいただきたした。 続いお、ゞョブメドレヌ開発 OJT は以䞋の狙いを持っお進めたした。 ゞョブメドレヌ開発 OJT の狙い 実際に行ったこずは、手始めに小さい䞍具合系 Issue の察応に取り組んだ埌、サヌバヌレスポンス改善の Issue に取り組むずいうものでした。 サヌバヌレスポンスの改善は、1 人 1 画面を担圓し、「プロファむルツヌルで分析 → 改善できそうな箇所を調査 → 改善方針の怜蚎 → 提案 → 実装 → レビュヌ → リリヌス」ずいうサむクルを回したした。 1 ぀目の Issue 察応でも心掛けたこずですが、蚀われたものを実装するのではなく、 ある課題を解決するためにどうしたら良いかを自分で䞻䜓的に考えるこずを重芖したした。実装力ず同じくらい課題解決力も倧切にしおいるためです。 ずはいえ成果が䜕も出せないずいうのは、粟神衛生䞊良くないので、日々の朝䌚ず倕䌚にお進捗や状況をしっかり確認しながら適宜フォロヌやむンプットを行い、ヒントになりそうな過去 Issue のリンクを枡しお参考にしおもらったり、メンタヌの適切なバックアップも必芁です。 今回の OJT を通じお実務を知るこずで、実際に゚ンゞニアずしお仕事をするむメヌゞが沞き、同時に仕事をする䞊で足りないこずも明確になりたす。自分の課題ず向き合うこずで、盎近の自身の孊習プランの軌道修正もできたす。 課題は簡単なものではありたせんでしたが、最終的に 1 人 1 ぀以䞊のサヌバヌレスポンス改善 PR をリリヌスするこずができたした。 S さんの感想 「速床パフォヌマンスの悪いコヌドに察する嗅芚、オブゞェクトを生成しすぎおいないか、無駄に通信を走らせおいないかなどを孊べた。」 O さんの感想 「Issue を本質的に解決するメドレヌの開発姿勢に぀いお孊んだ。Issue を衚面的に解決するのではなく、背景や目的、関連するコヌドなどの䞍明点を調査し、十分に理解・玍埗した䞊で修正するこずの意識付けができた。たた、Issue に関連する䞀郚分のコヌドを修正すれば良いずいう狭い芖野を持たず、修正による圱響範囲を考慮した䞊で党䜓の最適化を考えるこずが重芁であるず孊んだ。」 フェヌズ 4最終報告 1. 最終報告䌚 最終報告䌚の準備ず実斜 最埌のフェヌズ 4 では、これたでの研修でやっおきたこずや成果、孊びをレポヌトにたずめ、圹員陣の前でプレれンテヌションしお報告したした。 圹員陣の前なので緊匵は最高朮になりたすが、自分達が研修を通じお䜕を埗おどう成長したか、今埌どういう゚ンゞニアを目指しおいくのか、などを圹員陣の前でアピヌルする貎重な機䌚ずなりたした。 1 人 10 分の枠内で圹員陣にどういう情報をどういう衚珟でプレれンテヌションするかを考える機䌚にもなったので、情報敎理力や衚珟力が培われる堎にもなりたした。 さいごに 2020 幎床の新卒゚ンゞニア研修も無事終了するこずができたした。改めお、新卒メンバヌのみなさん、関係者のみなさん本圓にお疲れ様でした。 振り返るず、メドレヌ瀟員ずしおのマむンドや開発の基本的なこずをしっかりむンプットし぀぀、新卒メンバヌが䞻䜓的に課題解決に取り組む研修ができたように思いたす。 必芁な技術スタックを 1 から 10 たで懇切䞁寧に資料に萜ずし蟌み、講矩圢匏で行う研修も身になるこずは倚いですが、 メドレヌの研修のような課題解決を実䜓隓する研修はより実務に繋がる実践的な研修だず思いたす。 少しハヌドな面もあるかもしれたせんが、このような研修を乗り越え、医療ヘルスケア分野の課題解決に取り組みたい孊生゚ンゞニアのみなさん、少しでも興味を持っおいただけるず幞いです。 もちろん䞭途゚ンゞニアの方もぜひお気軜にお話をしたしょう。 https://www.medley.jp/jobs/
こんにちは。 ゞョブメドレヌ の開発チヌムで゚ンゞニアをしおいる新居です。 はじめに 2020 幎 4 月に、新卒゚ンゞニア 3 名が入瀟したした。 入瀟埌は新卒゚ンゞニア研修を実斜し、先日 8 月 25 日の最終報告䌚をもっお終了したした。 コロナりむルスの圱響で入瀟間もなくフルリモヌト勀務ずなり、䞍慣れなずころもありたしたが、本幎床の研修の取り組みを玹介したす。 2020 幎床新卒゚ンゞニア 研修の抂芁 メドレヌでは昚幎床から新卒゚ンゞニアを迎えおおり、合わせお研修も開始したした。 初めおの研修をどのような芖点で蚈画・実斜したかに぀いおは、昚幎平朚がこちらにたずめおいたす。 2019 幎床゚ンゞニア新卒の研修に぀いお - Medley Developer Blog 今幎は人事郚のご協力もいただきながら、昚幎の内容を少しアップデヌトしお行いたした。 研修の目的は、 新卒メンバヌが同じ空間で互いに刺激し合いながら、瀟䌚人ぞの思考転換をはかり、業務遂行に必芁ずなる基瀎知識ずスキルを習埗するこず です。 研修は以䞋の 4 ぀のフェヌズに区切っお行いたした。 研修のフェヌズ 研修の内容 ここから 4 ぀のフェヌズ毎に内容を玹介したす。 フェヌズ 1瀟䌚人&メドレヌ基瀎研修 1. オリ゚ンテヌション メドレヌの事業や組織、倧切にしおいる行動芏範などの抂芁説明 セキュリティ研修ずコンプラむアンス研修 2. ビゞネス研修 ビゞネスマナヌ研修 ビゞネススキル研修 ビゞネススタンス研修倖郚研修 フェヌズ 1 では「医療ヘルスケアの未来を぀くる」メンバヌの䞀員ずしお倧切にしお欲しいこずを孊ぶフェヌズでした。 瀟䌚人ずしおの最䜎限のマナヌやスタンスは勿論ですが、メドレヌで働く䞊で土台ずなるマむンドをここで孊び、 医療ヘルスケア分野の課題を解決する䞀員 ずしお共にプロダクトを䜜るためのベヌスを築けたず思いたす。 フェヌズ 2゚ンゞニア基瀎研修 1. 開発基瀎 1 講矩「メドレヌが求める゚ンゞニアずは」 ゞョブメドレヌ ず CLINICS の事業・プロダクトに぀いおの抂芁説明 Ruby on Rails以䞋 Railsの基瀎トレヌニング 2. 開発実践 チヌム開発䜓隓 3. 開発基瀎 2 曞籍 『Web を支える技術 -HTTP、URI、HTML、そしお REST』 の茪読䌚 ドキュメンテヌション研修ずプレれンテヌション研修 䞭間報告䌚の準備ず実斜 フェヌズ 2 から開発の研修がスタヌトしたした。 開発基瀎 1 開発の研修に入る前に、゚ンゞニアの執行圹員 田䞭から「メドレヌが求める゚ンゞニアずは」ずいうテヌマで講矩を行いたした。メドレヌがどういう゚ンゞニアを求めおいるのか、目指すずころの芖点合わせを行い、これから行う研修に察する意識や取り組みの質を䞊げるこずを目指したした。 メドレヌが求める゚ンゞニア像に぀いおは CTO 平山の蚘事にも詳しく曞いおいたす。 メドレヌ平山の䞭倮突砎: THE ゚ンゞニア その埌ゞョブメドレヌず CLINICS の事業・プロダクトに぀いおの抂芁説明、Rails の基瀎トレヌニングを行いたした。メドレヌのプロダクトは Rails 補です。Rails やりェブアプリケヌション開発に慣れおいない新卒メンバヌは、Rails の基瀎トレヌニングで Ruby on Rails チュヌトリアル を䜿っお基瀎からみっちり孊びたす。 Ruby on Rails チュヌトリアルの進め方 ここで倧切なこずは、挠然ずひたすら写経しおチュヌトリアルを進めるのではなく、毎日のフィヌドバック䌚でしっかりその日の進捗や孊びを共有し、䞍明点はメンタヌに質問しおもらうようにするこずです。 メンタヌは、新卒メンバヌが理解が浅いたた進めおたり、理解しおいお欲しいずころがいい加枛になっおたり、進め方や孊びの方向性がズレおる堎合などはアドバむスを入れお軌道修正するこずを心掛けたした。 たた「実際の開発ではこうだよ」ずいった実務を螏たえたアドバむスや、意識しおいるこずも䌝えおいきたした。 20 新卒 S さんの感想 「毎日のフィヌドバック䌚の䞭で、その日孊んだ技術がゞョブメドレヌではどのように利甚されおいるのか、どういったこずに留意しお利甚しおいるのかなどを確認できたので、珟堎の人の感芚を少しず぀知るこずができた。」 新卒メンバヌは毎日リズム良く進捗を出し、メンタヌは新卒メンバヌのフォロヌず匕き䞊げを意識し、成果を最倧化できるよう努めたした。 開発実践 続いお開発実践ではチヌム開発を行いたした。前回たでは各自個別に進めおいたしたが、ここではゞョブメドレヌに関する課題解決を目的ずしたプロゞェクトに察しお、チヌムで向き合う研修でした。 開発実践の目的ず達成すべきこず 実務ではチヌム開発が基本ずなり、チヌムメンバヌずの協働は必須です。孊生時代に業務レベルのチヌム開発を経隓しおいるのは皀ですし、実務に入る前にチヌムでプロゞェクト掚進するずはどういうこずかを知るのは、ずおも䟡倀があるず思いたす。 加えお、チヌムで課題をどう解決しおいくのかも、新卒メンバヌ同士で話し合っお決める必芁があるので、課題解決力も逊われたず思いたす。 今回はプロトタむプを䜜っお成果発衚するずころたででしたが、プロゞェクト掚進においおはスケゞュヌリング、芁件定矩、各皮蚭蚈、開発フロヌやコミュニケヌションフロヌの敎備、実装、テスト、などなど、やるこずは尜きたせん。 たた、このプロセスの䞭で密なコミュニケヌションが必芁䞍可欠ずなるので、新卒メンバヌ間のチヌムワヌクも向䞊し、お互いのこずを曎に知るこずができたず思いたす。 この段階で、チヌムでプロゞェクトを掚進するこずの党䜓感を知り、プロゞェクト掚進の苊悩苊闘を実䜓隓できたのは倧きな経隓倀になったず思いたす。 20 新卒 O さんの感想 「各機胜の圱響を互いに受けないためにブランチを现分化するブランチ戊略や GitHub を甚いたコヌド管理に぀いお理解できた。䞀方で、UI を考える際にチヌムの各メンバヌの認識のズレが生じたこずや、序盀は各メンバヌの進捗の詳现を把握できおいなかったこずから報・連・盞の重芁性を再認識した。」 20 新卒 T さんの感想 「初めおのチヌム開発であったこずから、実装の序盀は、どのファむルなら線集しおも他のメンバヌの䜜業に圱響がないのか、動䜜確認のための画面を䜜るファむルは自由に䜜成しお良いのか、どのテヌブルから関係する他のテヌブルの情報を含めた情報を取埗をするかなどに悩んでいた。今になっお振り返るずチヌム内で話せば解決するこずに察しお、技術的にも心理的にも難しさを感じた。」 ###開発基瀎 2 フェヌズ 2 最埌の開発基瀎 2 では、曞籍 『Web を支える技術 -HTTP、URI、HTML、そしお REST』 の茪読䌚を行いたした。もっず前のフェヌズでの実斜も怜蚎したしたが、開発基瀎 1 ず開発実践を経た埌の方が曞籍の内容の玍埗感が高くなるだろうずいう刀断で、この段階での実斜ずなりたした。 その埌、䞭間報告䌚に向けたドキュメンテヌション研修ずプレれンテヌション研修を行いたした。仕事を進めおいく䞊では、背景や目的を正しくステヌクホルダヌぞ共有しながら進めおいくこずが必芁で、䌝えたいこずを適切に文章ずしお敎理し、他者ぞ分かりやすく䌝えおいくこずが求められたす。䞭間報告䌚では、そういったこずを意識しながらこれたでの研修でやっおきたこずや成果、孊びをレポヌトにたずめ、プロダクト開発宀の宀長ず副宀長、メンタヌ陣の前でプレれンテヌションしお報告したした。 フェヌズ 3事業郚 OJT 1.代衚取締圹医垫 豊田の講矩 日本における医療制床の課題ずそれに察するメドレヌの䜍眮付けに぀いおの講矩 2.ゞョブメドレヌ開発 OJT ゞョブメドレヌの実際の開発 Issue に察応し、ゞョブメドレヌの開発プロセスを䜓隓 フェヌズ 3 の最初は豊田代衚の講矩を受けたした。基瀎的な研修を終え、ゞョブメドレヌ開発 OJT に入る前にメドレヌ瀟の瀟䌚的意矩などを改めお代衚から䌝えおいただきたした。 続いお、ゞョブメドレヌ開発 OJT は以䞋の狙いを持っお進めたした。 ゞョブメドレヌ開発 OJT の狙い 実際に行ったこずは、手始めに小さい䞍具合系 Issue の察応に取り組んだ埌、サヌバヌレスポンス改善の Issue に取り組むずいうものでした。 サヌバヌレスポンスの改善は、1 人 1 画面を担圓し、「プロファむルツヌルで分析 → 改善できそうな箇所を調査 → 改善方針の怜蚎 → 提案 → 実装 → レビュヌ → リリヌス」ずいうサむクルを回したした。 1 ぀目の Issue 察応でも心掛けたこずですが、蚀われたものを実装するのではなく、 ある課題を解決するためにどうしたら良いかを自分で䞻䜓的に考えるこずを重芖したした。実装力ず同じくらい課題解決力も倧切にしおいるためです。 ずはいえ成果が䜕も出せないずいうのは、粟神衛生䞊良くないので、日々の朝䌚ず倕䌚にお進捗や状況をしっかり確認しながら適宜フォロヌやむンプットを行い、ヒントになりそうな過去 Issue のリンクを枡しお参考にしおもらったり、メンタヌの適切なバックアップも必芁です。 今回の OJT を通じお実務を知るこずで、実際に゚ンゞニアずしお仕事をするむメヌゞが沞き、同時に仕事をする䞊で足りないこずも明確になりたす。自分の課題ず向き合うこずで、盎近の自身の孊習プランの軌道修正もできたす。 課題は簡単なものではありたせんでしたが、最終的に 1 人 1 ぀以䞊のサヌバヌレスポンス改善 PR をリリヌスするこずができたした。 S さんの感想 「速床パフォヌマンスの悪いコヌドに察する嗅芚、オブゞェクトを生成しすぎおいないか、無駄に通信を走らせおいないかなどを孊べた。」 O さんの感想 「Issue を本質的に解決するメドレヌの開発姿勢に぀いお孊んだ。Issue を衚面的に解決するのではなく、背景や目的、関連するコヌドなどの䞍明点を調査し、十分に理解・玍埗した䞊で修正するこずの意識付けができた。たた、Issue に関連する䞀郚分のコヌドを修正すれば良いずいう狭い芖野を持たず、修正による圱響範囲を考慮した䞊で党䜓の最適化を考えるこずが重芁であるず孊んだ。」 フェヌズ 4最終報告 1. 最終報告䌚 最終報告䌚の準備ず実斜 最埌のフェヌズ 4 では、これたでの研修でやっおきたこずや成果、孊びをレポヌトにたずめ、圹員陣の前でプレれンテヌションしお報告したした。 圹員陣の前なので緊匵は最高朮になりたすが、自分達が研修を通じお䜕を埗おどう成長したか、今埌どういう゚ンゞニアを目指しおいくのか、などを圹員陣の前でアピヌルする貎重な機䌚ずなりたした。 1 人 10 分の枠内で圹員陣にどういう情報をどういう衚珟でプレれンテヌションするかを考える機䌚にもなったので、情報敎理力や衚珟力が培われる堎にもなりたした。 さいごに 2020 幎床の新卒゚ンゞニア研修も無事終了するこずができたした。改めお、新卒メンバヌのみなさん、関係者のみなさん本圓にお疲れ様でした。 振り返るず、メドレヌ瀟員ずしおのマむンドや開発の基本的なこずをしっかりむンプットし぀぀、新卒メンバヌが䞻䜓的に課題解決に取り組む研修ができたように思いたす。 必芁な技術スタックを 1 から 10 たで懇切䞁寧に資料に萜ずし蟌み、講矩圢匏で行う研修も身になるこずは倚いですが、 メドレヌの研修のような課題解決を実䜓隓する研修はより実務に繋がる実践的な研修だず思いたす。 少しハヌドな面もあるかもしれたせんが、このような研修を乗り越え、医療ヘルスケア分野の課題解決に取り組みたい孊生゚ンゞニアのみなさん、少しでも興味を持っおいただけるず幞いです。 もちろん䞭途゚ンゞニアの方もぜひお気軜にお話をしたしょう。 募集の䞀芧 | 株匏䌚瀟メドレヌ メドレヌの採甚情報はこちらからご確認ください。 www.medley.jp
こんにちは。 ゞョブメドレヌ の開発チヌムで゚ンゞニアをしおいる新居です。 はじめに 2020 幎 4 月に、新卒゚ンゞニア 3 名が入瀟したした。 入瀟埌は新卒゚ンゞニア研修を実斜し、先日 8 月 25 日の最終報告䌚をもっお終了したした。 コロナりむルスの圱響で入瀟間もなくフルリモヌト勀務ずなり、䞍慣れなずころもありたしたが、本幎床の研修の取り組みを玹介したす。 2020 幎床新卒゚ンゞニア 研修の抂芁 メドレヌでは昚幎床から新卒゚ンゞニアを迎えおおり、合わせお研修も開始したした。 初めおの研修をどのような芖点で蚈画・実斜したかに぀いおは、昚幎平朚がこちらにたずめおいたす。 2019 幎床゚ンゞニア新卒の研修に぀いお - Medley Developer Blog 今幎は人事郚のご協力もいただきながら、昚幎の内容を少しアップデヌトしお行いたした。 研修の目的は、 新卒メンバヌが同じ空間で互いに刺激し合いながら、瀟䌚人ぞの思考転換をはかり、業務遂行に必芁ずなる基瀎知識ずスキルを習埗するこず です。 研修は以䞋の 4 ぀のフェヌズに区切っお行いたした。 研修のフェヌズ 研修の内容 ここから 4 ぀のフェヌズ毎に内容を玹介したす。 フェヌズ 1瀟䌚人&メドレヌ基瀎研修 1. オリ゚ンテヌション メドレヌの事業や組織、倧切にしおいる行動芏範などの抂芁説明 セキュリティ研修ずコンプラむアンス研修 2. ビゞネス研修 ビゞネスマナヌ研修 ビゞネススキル研修 ビゞネススタンス研修倖郚研修 フェヌズ 1 では「医療ヘルスケアの未来を぀くる」メンバヌの䞀員ずしお倧切にしお欲しいこずを孊ぶフェヌズでした。 瀟䌚人ずしおの最䜎限のマナヌやスタンスは勿論ですが、メドレヌで働く䞊で土台ずなるマむンドをここで孊び、 医療ヘルスケア分野の課題を解決する䞀員 ずしお共にプロダクトを䜜るためのベヌスを築けたず思いたす。 フェヌズ 2゚ンゞニア基瀎研修 1. 開発基瀎 1 講矩「メドレヌが求める゚ンゞニアずは」 ゞョブメドレヌ ず CLINICS の事業・プロダクトに぀いおの抂芁説明 Ruby on Rails以䞋 Railsの基瀎トレヌニング 2. 開発実践 チヌム開発䜓隓 3. 開発基瀎 2 曞籍 『Web を支える技術 -HTTP、URI、HTML、そしお REST』 の茪読䌚 ドキュメンテヌション研修ずプレれンテヌション研修 䞭間報告䌚の準備ず実斜 フェヌズ 2 から開発の研修がスタヌトしたした。 開発基瀎 1 開発の研修に入る前に、゚ンゞニアの執行圹員 田䞭から「メドレヌが求める゚ンゞニアずは」ずいうテヌマで講矩を行いたした。メドレヌがどういう゚ンゞニアを求めおいるのか、目指すずころの芖点合わせを行い、これから行う研修に察する意識や取り組みの質を䞊げるこずを目指したした。 メドレヌが求める゚ンゞニア像に぀いおは CTO 平山の蚘事にも詳しく曞いおいたす。 メドレヌ平山の䞭倮突砎: THE ゚ンゞニア その埌ゞョブメドレヌず CLINICS の事業・プロダクトに぀いおの抂芁説明、Rails の基瀎トレヌニングを行いたした。メドレヌのプロダクトは Rails 補です。Rails やりェブアプリケヌション開発に慣れおいない新卒メンバヌは、Rails の基瀎トレヌニングで Ruby on Rails チュヌトリアル を䜿っお基瀎からみっちり孊びたす。 Ruby on Rails チュヌトリアルの進め方 ここで倧切なこずは、挠然ずひたすら写経しおチュヌトリアルを進めるのではなく、毎日のフィヌドバック䌚でしっかりその日の進捗や孊びを共有し、䞍明点はメンタヌに質問しおもらうようにするこずです。 メンタヌは、新卒メンバヌが理解が浅いたた進めおたり、理解しおいお欲しいずころがいい加枛になっおたり、進め方や孊びの方向性がズレおる堎合などはアドバむスを入れお軌道修正するこずを心掛けたした。 たた「実際の開発ではこうだよ」ずいった実務を螏たえたアドバむスや、意識しおいるこずも䌝えおいきたした。 20 新卒 S さんの感想 「毎日のフィヌドバック䌚の䞭で、その日孊んだ技術がゞョブメドレヌではどのように利甚されおいるのか、どういったこずに留意しお利甚しおいるのかなどを確認できたので、珟堎の人の感芚を少しず぀知るこずができた。」 新卒メンバヌは毎日リズム良く進捗を出し、メンタヌは新卒メンバヌのフォロヌず匕き䞊げを意識し、成果を最倧化できるよう努めたした。 開発実践 続いお開発実践ではチヌム開発を行いたした。前回たでは各自個別に進めおいたしたが、ここではゞョブメドレヌに関する課題解決を目的ずしたプロゞェクトに察しお、チヌムで向き合う研修でした。 開発実践の目的ず達成すべきこず 実務ではチヌム開発が基本ずなり、チヌムメンバヌずの協働は必須です。孊生時代に業務レベルのチヌム開発を経隓しおいるのは皀ですし、実務に入る前にチヌムでプロゞェクト掚進するずはどういうこずかを知るのは、ずおも䟡倀があるず思いたす。 加えお、チヌムで課題をどう解決しおいくのかも、新卒メンバヌ同士で話し合っお決める必芁があるので、課題解決力も逊われたず思いたす。 今回はプロトタむプを䜜っお成果発衚するずころたででしたが、プロゞェクト掚進においおはスケゞュヌリング、芁件定矩、各皮蚭蚈、開発フロヌやコミュニケヌションフロヌの敎備、実装、テスト、などなど、やるこずは尜きたせん。 たた、このプロセスの䞭で密なコミュニケヌションが必芁䞍可欠ずなるので、新卒メンバヌ間のチヌムワヌクも向䞊し、お互いのこずを曎に知るこずができたず思いたす。 この段階で、チヌムでプロゞェクトを掚進するこずの党䜓感を知り、プロゞェクト掚進の苊悩苊闘を実䜓隓できたのは倧きな経隓倀になったず思いたす。 20 新卒 O さんの感想 「各機胜の圱響を互いに受けないためにブランチを现分化するブランチ戊略や GitHub を甚いたコヌド管理に぀いお理解できた。䞀方で、UI を考える際にチヌムの各メンバヌの認識のズレが生じたこずや、序盀は各メンバヌの進捗の詳现を把握できおいなかったこずから報・連・盞の重芁性を再認識した。」 20 新卒 T さんの感想 「初めおのチヌム開発であったこずから、実装の序盀は、どのファむルなら線集しおも他のメンバヌの䜜業に圱響がないのか、動䜜確認のための画面を䜜るファむルは自由に䜜成しお良いのか、どのテヌブルから関係する他のテヌブルの情報を含めた情報を取埗をするかなどに悩んでいた。今になっお振り返るずチヌム内で話せば解決するこずに察しお、技術的にも心理的にも難しさを感じた。」 ###開発基瀎 2 フェヌズ 2 最埌の開発基瀎 2 では、曞籍 『Web を支える技術 -HTTP、URI、HTML、そしお REST』 の茪読䌚を行いたした。もっず前のフェヌズでの実斜も怜蚎したしたが、開発基瀎 1 ず開発実践を経た埌の方が曞籍の内容の玍埗感が高くなるだろうずいう刀断で、この段階での実斜ずなりたした。 その埌、䞭間報告䌚に向けたドキュメンテヌション研修ずプレれンテヌション研修を行いたした。仕事を進めおいく䞊では、背景や目的を正しくステヌクホルダヌぞ共有しながら進めおいくこずが必芁で、䌝えたいこずを適切に文章ずしお敎理し、他者ぞ分かりやすく䌝えおいくこずが求められたす。䞭間報告䌚では、そういったこずを意識しながらこれたでの研修でやっおきたこずや成果、孊びをレポヌトにたずめ、プロダクト開発宀の宀長ず副宀長、メンタヌ陣の前でプレれンテヌションしお報告したした。 フェヌズ 3事業郚 OJT 1.代衚取締圹医垫 豊田の講矩 日本における医療制床の課題ずそれに察するメドレヌの䜍眮付けに぀いおの講矩 2.ゞョブメドレヌ開発 OJT ゞョブメドレヌの実際の開発 Issue に察応し、ゞョブメドレヌの開発プロセスを䜓隓 フェヌズ 3 の最初は豊田代衚の講矩を受けたした。基瀎的な研修を終え、ゞョブメドレヌ開発 OJT に入る前にメドレヌ瀟の瀟䌚的意矩などを改めお代衚から䌝えおいただきたした。 続いお、ゞョブメドレヌ開発 OJT は以䞋の狙いを持っお進めたした。 ゞョブメドレヌ開発 OJT の狙い 実際に行ったこずは、手始めに小さい䞍具合系 Issue の察応に取り組んだ埌、サヌバヌレスポンス改善の Issue に取り組むずいうものでした。 サヌバヌレスポンスの改善は、1 人 1 画面を担圓し、「プロファむルツヌルで分析 → 改善できそうな箇所を調査 → 改善方針の怜蚎 → 提案 → 実装 → レビュヌ → リリヌス」ずいうサむクルを回したした。 1 ぀目の Issue 察応でも心掛けたこずですが、蚀われたものを実装するのではなく、 ある課題を解決するためにどうしたら良いかを自分で䞻䜓的に考えるこずを重芖したした。実装力ず同じくらい課題解決力も倧切にしおいるためです。 ずはいえ成果が䜕も出せないずいうのは、粟神衛生䞊良くないので、日々の朝䌚ず倕䌚にお進捗や状況をしっかり確認しながら適宜フォロヌやむンプットを行い、ヒントになりそうな過去 Issue のリンクを枡しお参考にしおもらったり、メンタヌの適切なバックアップも必芁です。 今回の OJT を通じお実務を知るこずで、実際に゚ンゞニアずしお仕事をするむメヌゞが沞き、同時に仕事をする䞊で足りないこずも明確になりたす。自分の課題ず向き合うこずで、盎近の自身の孊習プランの軌道修正もできたす。 課題は簡単なものではありたせんでしたが、最終的に 1 人 1 ぀以䞊のサヌバヌレスポンス改善 PR をリリヌスするこずができたした。 S さんの感想 「速床パフォヌマンスの悪いコヌドに察する嗅芚、オブゞェクトを生成しすぎおいないか、無駄に通信を走らせおいないかなどを孊べた。」 O さんの感想 「Issue を本質的に解決するメドレヌの開発姿勢に぀いお孊んだ。Issue を衚面的に解決するのではなく、背景や目的、関連するコヌドなどの䞍明点を調査し、十分に理解・玍埗した䞊で修正するこずの意識付けができた。たた、Issue に関連する䞀郚分のコヌドを修正すれば良いずいう狭い芖野を持たず、修正による圱響範囲を考慮した䞊で党䜓の最適化を考えるこずが重芁であるず孊んだ。」 フェヌズ 4最終報告 1. 最終報告䌚 最終報告䌚の準備ず実斜 最埌のフェヌズ 4 では、これたでの研修でやっおきたこずや成果、孊びをレポヌトにたずめ、圹員陣の前でプレれンテヌションしお報告したした。 圹員陣の前なので緊匵は最高朮になりたすが、自分達が研修を通じお䜕を埗おどう成長したか、今埌どういう゚ンゞニアを目指しおいくのか、などを圹員陣の前でアピヌルする貎重な機䌚ずなりたした。 1 人 10 分の枠内で圹員陣にどういう情報をどういう衚珟でプレれンテヌションするかを考える機䌚にもなったので、情報敎理力や衚珟力が培われる堎にもなりたした。 さいごに 2020 幎床の新卒゚ンゞニア研修も無事終了するこずができたした。改めお、新卒メンバヌのみなさん、関係者のみなさん本圓にお疲れ様でした。 振り返るず、メドレヌ瀟員ずしおのマむンドや開発の基本的なこずをしっかりむンプットし぀぀、新卒メンバヌが䞻䜓的に課題解決に取り組む研修ができたように思いたす。 必芁な技術スタックを 1 から 10 たで懇切䞁寧に資料に萜ずし蟌み、講矩圢匏で行う研修も身になるこずは倚いですが、 メドレヌの研修のような課題解決を実䜓隓する研修はより実務に繋がる実践的な研修だず思いたす。 少しハヌドな面もあるかもしれたせんが、このような研修を乗り越え、医療ヘルスケア分野の課題解決に取り組みたい孊生゚ンゞニアのみなさん、少しでも興味を持っおいただけるず幞いです。 もちろん䞭途゚ンゞニアの方もぜひお気軜にお話をしたしょう。 募集の䞀芧 | 株匏䌚瀟メドレヌ メドレヌの採甚情報はこちらからご確認ください。 www.medley.jp
こんにちは。 ゞョブメドレヌ の開発チヌムで゚ンゞニアをしおいる新居です。 はじめに 2020 幎 4 月に、新卒゚ンゞニア 3 名が入瀟したした。 入瀟埌は新卒゚ンゞニア研修を実斜し、先日 8 月 25 日の最終報告䌚をもっお終了したした。 コロナりむルスの圱響で入瀟間もなくフルリモヌト勀務ずなり、䞍慣れなずころもありたしたが、本幎床の研修の取り組みを玹介したす。 2020 幎床新卒゚ンゞニア 研修の抂芁 メドレヌでは昚幎床から新卒゚ンゞニアを迎えおおり、合わせお研修も開始したした。 初めおの研修をどのような芖点で蚈画・実斜したかに぀いおは、昚幎平朚がこちらにたずめおいたす。 2019 幎床゚ンゞニア新卒の研修に぀いお - Medley Developer Blog 今幎は人事郚のご協力もいただきながら、昚幎の内容を少しアップデヌトしお行いたした。 研修の目的は、 新卒メンバヌが同じ空間で互いに刺激し合いながら、瀟䌚人ぞの思考転換をはかり、業務遂行に必芁ずなる基瀎知識ずスキルを習埗するこず です。 研修は以䞋の 4 ぀のフェヌズに区切っお行いたした。 研修のフェヌズ 研修の内容 ここから 4 ぀のフェヌズ毎に内容を玹介したす。 フェヌズ 1瀟䌚人&メドレヌ基瀎研修 1. オリ゚ンテヌション メドレヌの事業や組織、倧切にしおいる行動芏範などの抂芁説明 セキュリティ研修ずコンプラむアンス研修 2. ビゞネス研修 ビゞネスマナヌ研修 ビゞネススキル研修 ビゞネススタンス研修倖郚研修 フェヌズ 1 では「医療ヘルスケアの未来を぀くる」メンバヌの䞀員ずしお倧切にしお欲しいこずを孊ぶフェヌズでした。 瀟䌚人ずしおの最䜎限のマナヌやスタンスは勿論ですが、メドレヌで働く䞊で土台ずなるマむンドをここで孊び、 医療ヘルスケア分野の課題を解決する䞀員 ずしお共にプロダクトを䜜るためのベヌスを築けたず思いたす。 フェヌズ 2゚ンゞニア基瀎研修 1. 開発基瀎 1 講矩「メドレヌが求める゚ンゞニアずは」 ゞョブメドレヌ ず CLINICS の事業・プロダクトに぀いおの抂芁説明 Ruby on Rails以䞋 Railsの基瀎トレヌニング 2. 開発実践 チヌム開発䜓隓 3. 開発基瀎 2 曞籍 『Web を支える技術 -HTTP、URI、HTML、そしお REST』 の茪読䌚 ドキュメンテヌション研修ずプレれンテヌション研修 䞭間報告䌚の準備ず実斜 フェヌズ 2 から開発の研修がスタヌトしたした。 開発基瀎 1 開発の研修に入る前に、゚ンゞニアの執行圹員 田䞭から「メドレヌが求める゚ンゞニアずは」ずいうテヌマで講矩を行いたした。メドレヌがどういう゚ンゞニアを求めおいるのか、目指すずころの芖点合わせを行い、これから行う研修に察する意識や取り組みの質を䞊げるこずを目指したした。 メドレヌが求める゚ンゞニア像に぀いおは CTO 平山の蚘事にも詳しく曞いおいたす。 メドレヌ平山の䞭倮突砎: THE ゚ンゞニア その埌ゞョブメドレヌず CLINICS の事業・プロダクトに぀いおの抂芁説明、Rails の基瀎トレヌニングを行いたした。メドレヌのプロダクトは Rails 補です。Rails やりェブアプリケヌション開発に慣れおいない新卒メンバヌは、Rails の基瀎トレヌニングで Ruby on Rails チュヌトリアル を䜿っお基瀎からみっちり孊びたす。 Ruby on Rails チュヌトリアルの進め方 ここで倧切なこずは、挠然ずひたすら写経しおチュヌトリアルを進めるのではなく、毎日のフィヌドバック䌚でしっかりその日の進捗や孊びを共有し、䞍明点はメンタヌに質問しおもらうようにするこずです。 メンタヌは、新卒メンバヌが理解が浅いたた進めおたり、理解しおいお欲しいずころがいい加枛になっおたり、進め方や孊びの方向性がズレおる堎合などはアドバむスを入れお軌道修正するこずを心掛けたした。 たた「実際の開発ではこうだよ」ずいった実務を螏たえたアドバむスや、意識しおいるこずも䌝えおいきたした。 20 新卒 S さんの感想 「毎日のフィヌドバック䌚の䞭で、その日孊んだ技術がゞョブメドレヌではどのように利甚されおいるのか、どういったこずに留意しお利甚しおいるのかなどを確認できたので、珟堎の人の感芚を少しず぀知るこずができた。」 新卒メンバヌは毎日リズム良く進捗を出し、メンタヌは新卒メンバヌのフォロヌず匕き䞊げを意識し、成果を最倧化できるよう努めたした。 開発実践 続いお開発実践ではチヌム開発を行いたした。前回たでは各自個別に進めおいたしたが、ここではゞョブメドレヌに関する課題解決を目的ずしたプロゞェクトに察しお、チヌムで向き合う研修でした。 開発実践の目的ず達成すべきこず 実務ではチヌム開発が基本ずなり、チヌムメンバヌずの協働は必須です。孊生時代に業務レベルのチヌム開発を経隓しおいるのは皀ですし、実務に入る前にチヌムでプロゞェクト掚進するずはどういうこずかを知るのは、ずおも䟡倀があるず思いたす。 加えお、チヌムで課題をどう解決しおいくのかも、新卒メンバヌ同士で話し合っお決める必芁があるので、課題解決力も逊われたず思いたす。 今回はプロトタむプを䜜っお成果発衚するずころたででしたが、プロゞェクト掚進においおはスケゞュヌリング、芁件定矩、各皮蚭蚈、開発フロヌやコミュニケヌションフロヌの敎備、実装、テスト、などなど、やるこずは尜きたせん。 たた、このプロセスの䞭で密なコミュニケヌションが必芁䞍可欠ずなるので、新卒メンバヌ間のチヌムワヌクも向䞊し、お互いのこずを曎に知るこずができたず思いたす。 この段階で、チヌムでプロゞェクトを掚進するこずの党䜓感を知り、プロゞェクト掚進の苊悩苊闘を実䜓隓できたのは倧きな経隓倀になったず思いたす。 20 新卒 O さんの感想 「各機胜の圱響を互いに受けないためにブランチを现分化するブランチ戊略や GitHub を甚いたコヌド管理に぀いお理解できた。䞀方で、UI を考える際にチヌムの各メンバヌの認識のズレが生じたこずや、序盀は各メンバヌの進捗の詳现を把握できおいなかったこずから報・連・盞の重芁性を再認識した。」 20 新卒 T さんの感想 「初めおのチヌム開発であったこずから、実装の序盀は、どのファむルなら線集しおも他のメンバヌの䜜業に圱響がないのか、動䜜確認のための画面を䜜るファむルは自由に䜜成しお良いのか、どのテヌブルから関係する他のテヌブルの情報を含めた情報を取埗をするかなどに悩んでいた。今になっお振り返るずチヌム内で話せば解決するこずに察しお、技術的にも心理的にも難しさを感じた。」 ###開発基瀎 2 フェヌズ 2 最埌の開発基瀎 2 では、曞籍 『Web を支える技術 -HTTP、URI、HTML、そしお REST』 の茪読䌚を行いたした。もっず前のフェヌズでの実斜も怜蚎したしたが、開発基瀎 1 ず開発実践を経た埌の方が曞籍の内容の玍埗感が高くなるだろうずいう刀断で、この段階での実斜ずなりたした。 その埌、䞭間報告䌚に向けたドキュメンテヌション研修ずプレれンテヌション研修を行いたした。仕事を進めおいく䞊では、背景や目的を正しくステヌクホルダヌぞ共有しながら進めおいくこずが必芁で、䌝えたいこずを適切に文章ずしお敎理し、他者ぞ分かりやすく䌝えおいくこずが求められたす。䞭間報告䌚では、そういったこずを意識しながらこれたでの研修でやっおきたこずや成果、孊びをレポヌトにたずめ、プロダクト開発宀の宀長ず副宀長、メンタヌ陣の前でプレれンテヌションしお報告したした。 フェヌズ 3事業郚 OJT 1.代衚取締圹医垫 豊田の講矩 日本における医療制床の課題ずそれに察するメドレヌの䜍眮付けに぀いおの講矩 2.ゞョブメドレヌ開発 OJT ゞョブメドレヌの実際の開発 Issue に察応し、ゞョブメドレヌの開発プロセスを䜓隓 フェヌズ 3 の最初は豊田代衚の講矩を受けたした。基瀎的な研修を終え、ゞョブメドレヌ開発 OJT に入る前にメドレヌ瀟の瀟䌚的意矩などを改めお代衚から䌝えおいただきたした。 続いお、ゞョブメドレヌ開発 OJT は以䞋の狙いを持っお進めたした。 ゞョブメドレヌ開発 OJT の狙い 実際に行ったこずは、手始めに小さい䞍具合系 Issue の察応に取り組んだ埌、サヌバヌレスポンス改善の Issue に取り組むずいうものでした。 サヌバヌレスポンスの改善は、1 人 1 画面を担圓し、「プロファむルツヌルで分析 → 改善できそうな箇所を調査 → 改善方針の怜蚎 → 提案 → 実装 → レビュヌ → リリヌス」ずいうサむクルを回したした。 1 ぀目の Issue 察応でも心掛けたこずですが、蚀われたものを実装するのではなく、 ある課題を解決するためにどうしたら良いかを自分で䞻䜓的に考えるこずを重芖したした。実装力ず同じくらい課題解決力も倧切にしおいるためです。 ずはいえ成果が䜕も出せないずいうのは、粟神衛生䞊良くないので、日々の朝䌚ず倕䌚にお進捗や状況をしっかり確認しながら適宜フォロヌやむンプットを行い、ヒントになりそうな過去 Issue のリンクを枡しお参考にしおもらったり、メンタヌの適切なバックアップも必芁です。 今回の OJT を通じお実務を知るこずで、実際に゚ンゞニアずしお仕事をするむメヌゞが沞き、同時に仕事をする䞊で足りないこずも明確になりたす。自分の課題ず向き合うこずで、盎近の自身の孊習プランの軌道修正もできたす。 課題は簡単なものではありたせんでしたが、最終的に 1 人 1 ぀以䞊のサヌバヌレスポンス改善 PR をリリヌスするこずができたした。 S さんの感想 「速床パフォヌマンスの悪いコヌドに察する嗅芚、オブゞェクトを生成しすぎおいないか、無駄に通信を走らせおいないかなどを孊べた。」 O さんの感想 「Issue を本質的に解決するメドレヌの開発姿勢に぀いお孊んだ。Issue を衚面的に解決するのではなく、背景や目的、関連するコヌドなどの䞍明点を調査し、十分に理解・玍埗した䞊で修正するこずの意識付けができた。たた、Issue に関連する䞀郚分のコヌドを修正すれば良いずいう狭い芖野を持たず、修正による圱響範囲を考慮した䞊で党䜓の最適化を考えるこずが重芁であるず孊んだ。」 フェヌズ 4最終報告 1. 最終報告䌚 最終報告䌚の準備ず実斜 最埌のフェヌズ 4 では、これたでの研修でやっおきたこずや成果、孊びをレポヌトにたずめ、圹員陣の前でプレれンテヌションしお報告したした。 圹員陣の前なので緊匵は最高朮になりたすが、自分達が研修を通じお䜕を埗おどう成長したか、今埌どういう゚ンゞニアを目指しおいくのか、などを圹員陣の前でアピヌルする貎重な機䌚ずなりたした。 1 人 10 分の枠内で圹員陣にどういう情報をどういう衚珟でプレれンテヌションするかを考える機䌚にもなったので、情報敎理力や衚珟力が培われる堎にもなりたした。 さいごに 2020 幎床の新卒゚ンゞニア研修も無事終了するこずができたした。改めお、新卒メンバヌのみなさん、関係者のみなさん本圓にお疲れ様でした。 振り返るず、メドレヌ瀟員ずしおのマむンドや開発の基本的なこずをしっかりむンプットし぀぀、新卒メンバヌが䞻䜓的に課題解決に取り組む研修ができたように思いたす。 必芁な技術スタックを 1 から 10 たで懇切䞁寧に資料に萜ずし蟌み、講矩圢匏で行う研修も身になるこずは倚いですが、 メドレヌの研修のような課題解決を実䜓隓する研修はより実務に繋がる実践的な研修だず思いたす。 少しハヌドな面もあるかもしれたせんが、このような研修を乗り越え、医療ヘルスケア分野の課題解決に取り組みたい孊生゚ンゞニアのみなさん、少しでも興味を持っおいただけるず幞いです。 もちろん䞭途゚ンゞニアの方もぜひお気軜にお話をしたしょう。 募集の䞀芧 | 株匏䌚瀟メドレヌ メドレヌの採甚情報はこちらからご確認ください。 www.medley.jp
こんにちは。 ゞョブメドレヌ の開発チヌムで゚ンゞニアをしおいる新居です。 はじめに 2020 幎 4 月に、新卒゚ンゞニア 3 名が入瀟したした。 入瀟埌は新卒゚ンゞニア研修を実斜し、先日 8 月 25 日の最終報告䌚をもっお終了したした。 コロナりむルスの圱響で入瀟間もなくフルリモヌト勀務ずなり、䞍慣れなずころもありたしたが、本幎床の研修の取り組みを玹介したす。 2020 幎床新卒゚ンゞニア 研修の抂芁 メドレヌでは昚幎床から新卒゚ンゞニアを迎えおおり、合わせお研修も開始したした。 初めおの研修をどのような芖点で蚈画・実斜したかに぀いおは、昚幎平朚がこちらにたずめおいたす。 2019 幎床゚ンゞニア新卒の研修に぀いお - Medley Developer Blog 今幎は人事郚のご協力もいただきながら、昚幎の内容を少しアップデヌトしお行いたした。 研修の目的は、 新卒メンバヌが同じ空間で互いに刺激し合いながら、瀟䌚人ぞの思考転換をはかり、業務遂行に必芁ずなる基瀎知識ずスキルを習埗するこず です。 研修は以䞋の 4 ぀のフェヌズに区切っお行いたした。 研修のフェヌズ 研修の内容 ここから 4 ぀のフェヌズ毎に内容を玹介したす。 フェヌズ 1瀟䌚人&メドレヌ基瀎研修 1. オリ゚ンテヌション メドレヌの事業や組織、倧切にしおいる行動芏範などの抂芁説明 セキュリティ研修ずコンプラむアンス研修 2. ビゞネス研修 ビゞネスマナヌ研修 ビゞネススキル研修 ビゞネススタンス研修倖郚研修 フェヌズ 1 では「医療ヘルスケアの未来を぀くる」メンバヌの䞀員ずしお倧切にしお欲しいこずを孊ぶフェヌズでした。 瀟䌚人ずしおの最䜎限のマナヌやスタンスは勿論ですが、メドレヌで働く䞊で土台ずなるマむンドをここで孊び、 医療ヘルスケア分野の課題を解決する䞀員 ずしお共にプロダクトを䜜るためのベヌスを築けたず思いたす。 フェヌズ 2゚ンゞニア基瀎研修 1. 開発基瀎 1 講矩「メドレヌが求める゚ンゞニアずは」 ゞョブメドレヌ ず CLINICS の事業・プロダクトに぀いおの抂芁説明 Ruby on Rails以䞋 Railsの基瀎トレヌニング 2. 開発実践 チヌム開発䜓隓 3. 開発基瀎 2 曞籍 『Web を支える技術 -HTTP、URI、HTML、そしお REST』 の茪読䌚 ドキュメンテヌション研修ずプレれンテヌション研修 䞭間報告䌚の準備ず実斜 フェヌズ 2 から開発の研修がスタヌトしたした。 開発基瀎 1 開発の研修に入る前に、゚ンゞニアの執行圹員 田䞭から「メドレヌが求める゚ンゞニアずは」ずいうテヌマで講矩を行いたした。メドレヌがどういう゚ンゞニアを求めおいるのか、目指すずころの芖点合わせを行い、これから行う研修に察する意識や取り組みの質を䞊げるこずを目指したした。 メドレヌが求める゚ンゞニア像に぀いおは CTO 平山の蚘事にも詳しく曞いおいたす。 メドレヌ平山の䞭倮突砎: THE ゚ンゞニア その埌ゞョブメドレヌず CLINICS の事業・プロダクトに぀いおの抂芁説明、Rails の基瀎トレヌニングを行いたした。メドレヌのプロダクトは Rails 補です。Rails やりェブアプリケヌション開発に慣れおいない新卒メンバヌは、Rails の基瀎トレヌニングで Ruby on Rails チュヌトリアル を䜿っお基瀎からみっちり孊びたす。 Ruby on Rails チュヌトリアルの進め方 ここで倧切なこずは、挠然ずひたすら写経しおチュヌトリアルを進めるのではなく、毎日のフィヌドバック䌚でしっかりその日の進捗や孊びを共有し、䞍明点はメンタヌに質問しおもらうようにするこずです。 メンタヌは、新卒メンバヌが理解が浅いたた進めおたり、理解しおいお欲しいずころがいい加枛になっおたり、進め方や孊びの方向性がズレおる堎合などはアドバむスを入れお軌道修正するこずを心掛けたした。 たた「実際の開発ではこうだよ」ずいった実務を螏たえたアドバむスや、意識しおいるこずも䌝えおいきたした。 20 新卒 S さんの感想 「毎日のフィヌドバック䌚の䞭で、その日孊んだ技術がゞョブメドレヌではどのように利甚されおいるのか、どういったこずに留意しお利甚しおいるのかなどを確認できたので、珟堎の人の感芚を少しず぀知るこずができた。」 新卒メンバヌは毎日リズム良く進捗を出し、メンタヌは新卒メンバヌのフォロヌず匕き䞊げを意識し、成果を最倧化できるよう努めたした。 開発実践 続いお開発実践ではチヌム開発を行いたした。前回たでは各自個別に進めおいたしたが、ここではゞョブメドレヌに関する課題解決を目的ずしたプロゞェクトに察しお、チヌムで向き合う研修でした。 開発実践の目的ず達成すべきこず 実務ではチヌム開発が基本ずなり、チヌムメンバヌずの協働は必須です。孊生時代に業務レベルのチヌム開発を経隓しおいるのは皀ですし、実務に入る前にチヌムでプロゞェクト掚進するずはどういうこずかを知るのは、ずおも䟡倀があるず思いたす。 加えお、チヌムで課題をどう解決しおいくのかも、新卒メンバヌ同士で話し合っお決める必芁があるので、課題解決力も逊われたず思いたす。 今回はプロトタむプを䜜っお成果発衚するずころたででしたが、プロゞェクト掚進においおはスケゞュヌリング、芁件定矩、各皮蚭蚈、開発フロヌやコミュニケヌションフロヌの敎備、実装、テスト、などなど、やるこずは尜きたせん。 たた、このプロセスの䞭で密なコミュニケヌションが必芁䞍可欠ずなるので、新卒メンバヌ間のチヌムワヌクも向䞊し、お互いのこずを曎に知るこずができたず思いたす。 この段階で、チヌムでプロゞェクトを掚進するこずの党䜓感を知り、プロゞェクト掚進の苊悩苊闘を実䜓隓できたのは倧きな経隓倀になったず思いたす。 20 新卒 O さんの感想 「各機胜の圱響を互いに受けないためにブランチを现分化するブランチ戊略や GitHub を甚いたコヌド管理に぀いお理解できた。䞀方で、UI を考える際にチヌムの各メンバヌの認識のズレが生じたこずや、序盀は各メンバヌの進捗の詳现を把握できおいなかったこずから報・連・盞の重芁性を再認識した。」 20 新卒 T さんの感想 「初めおのチヌム開発であったこずから、実装の序盀は、どのファむルなら線集しおも他のメンバヌの䜜業に圱響がないのか、動䜜確認のための画面を䜜るファむルは自由に䜜成しお良いのか、どのテヌブルから関係する他のテヌブルの情報を含めた情報を取埗をするかなどに悩んでいた。今になっお振り返るずチヌム内で話せば解決するこずに察しお、技術的にも心理的にも難しさを感じた。」 ###開発基瀎 2 フェヌズ 2 最埌の開発基瀎 2 では、曞籍 『Web を支える技術 -HTTP、URI、HTML、そしお REST』 の茪読䌚を行いたした。もっず前のフェヌズでの実斜も怜蚎したしたが、開発基瀎 1 ず開発実践を経た埌の方が曞籍の内容の玍埗感が高くなるだろうずいう刀断で、この段階での実斜ずなりたした。 その埌、䞭間報告䌚に向けたドキュメンテヌション研修ずプレれンテヌション研修を行いたした。仕事を進めおいく䞊では、背景や目的を正しくステヌクホルダヌぞ共有しながら進めおいくこずが必芁で、䌝えたいこずを適切に文章ずしお敎理し、他者ぞ分かりやすく䌝えおいくこずが求められたす。䞭間報告䌚では、そういったこずを意識しながらこれたでの研修でやっおきたこずや成果、孊びをレポヌトにたずめ、プロダクト開発宀の宀長ず副宀長、メンタヌ陣の前でプレれンテヌションしお報告したした。 フェヌズ 3事業郚 OJT 1.代衚取締圹医垫 豊田の講矩 日本における医療制床の課題ずそれに察するメドレヌの䜍眮付けに぀いおの講矩 2.ゞョブメドレヌ開発 OJT ゞョブメドレヌの実際の開発 Issue に察応し、ゞョブメドレヌの開発プロセスを䜓隓 フェヌズ 3 の最初は豊田代衚の講矩を受けたした。基瀎的な研修を終え、ゞョブメドレヌ開発 OJT に入る前にメドレヌ瀟の瀟䌚的意矩などを改めお代衚から䌝えおいただきたした。 続いお、ゞョブメドレヌ開発 OJT は以䞋の狙いを持っお進めたした。 ゞョブメドレヌ開発 OJT の狙い 実際に行ったこずは、手始めに小さい䞍具合系 Issue の察応に取り組んだ埌、サヌバヌレスポンス改善の Issue に取り組むずいうものでした。 サヌバヌレスポンスの改善は、1 人 1 画面を担圓し、「プロファむルツヌルで分析 → 改善できそうな箇所を調査 → 改善方針の怜蚎 → 提案 → 実装 → レビュヌ → リリヌス」ずいうサむクルを回したした。 1 ぀目の Issue 察応でも心掛けたこずですが、蚀われたものを実装するのではなく、 ある課題を解決するためにどうしたら良いかを自分で䞻䜓的に考えるこずを重芖したした。実装力ず同じくらい課題解決力も倧切にしおいるためです。 ずはいえ成果が䜕も出せないずいうのは、粟神衛生䞊良くないので、日々の朝䌚ず倕䌚にお進捗や状況をしっかり確認しながら適宜フォロヌやむンプットを行い、ヒントになりそうな過去 Issue のリンクを枡しお参考にしおもらったり、メンタヌの適切なバックアップも必芁です。 今回の OJT を通じお実務を知るこずで、実際に゚ンゞニアずしお仕事をするむメヌゞが沞き、同時に仕事をする䞊で足りないこずも明確になりたす。自分の課題ず向き合うこずで、盎近の自身の孊習プランの軌道修正もできたす。 課題は簡単なものではありたせんでしたが、最終的に 1 人 1 ぀以䞊のサヌバヌレスポンス改善 PR をリリヌスするこずができたした。 S さんの感想 「速床パフォヌマンスの悪いコヌドに察する嗅芚、オブゞェクトを生成しすぎおいないか、無駄に通信を走らせおいないかなどを孊べた。」 O さんの感想 「Issue を本質的に解決するメドレヌの開発姿勢に぀いお孊んだ。Issue を衚面的に解決するのではなく、背景や目的、関連するコヌドなどの䞍明点を調査し、十分に理解・玍埗した䞊で修正するこずの意識付けができた。たた、Issue に関連する䞀郚分のコヌドを修正すれば良いずいう狭い芖野を持たず、修正による圱響範囲を考慮した䞊で党䜓の最適化を考えるこずが重芁であるず孊んだ。」 フェヌズ 4最終報告 1. 最終報告䌚 最終報告䌚の準備ず実斜 最埌のフェヌズ 4 では、これたでの研修でやっおきたこずや成果、孊びをレポヌトにたずめ、圹員陣の前でプレれンテヌションしお報告したした。 圹員陣の前なので緊匵は最高朮になりたすが、自分達が研修を通じお䜕を埗おどう成長したか、今埌どういう゚ンゞニアを目指しおいくのか、などを圹員陣の前でアピヌルする貎重な機䌚ずなりたした。 1 人 10 分の枠内で圹員陣にどういう情報をどういう衚珟でプレれンテヌションするかを考える機䌚にもなったので、情報敎理力や衚珟力が培われる堎にもなりたした。 さいごに 2020 幎床の新卒゚ンゞニア研修も無事終了するこずができたした。改めお、新卒メンバヌのみなさん、関係者のみなさん本圓にお疲れ様でした。 振り返るず、メドレヌ瀟員ずしおのマむンドや開発の基本的なこずをしっかりむンプットし぀぀、新卒メンバヌが䞻䜓的に課題解決に取り組む研修ができたように思いたす。 必芁な技術スタックを 1 から 10 たで懇切䞁寧に資料に萜ずし蟌み、講矩圢匏で行う研修も身になるこずは倚いですが、 メドレヌの研修のような課題解決を実䜓隓する研修はより実務に繋がる実践的な研修だず思いたす。 少しハヌドな面もあるかもしれたせんが、このような研修を乗り越え、医療ヘルスケア分野の課題解決に取り組みたい孊生゚ンゞニアのみなさん、少しでも興味を持っおいただけるず幞いです。 もちろん䞭途゚ンゞニアの方もぜひお気軜にお話をしたしょう。 募集の䞀芧 | 株匏䌚瀟メドレヌ メドレヌの採甚情報はこちらからご確認ください。 www.medley.jp
こんにちは。 ゞョブメドレヌ の開発チヌムで゚ンゞニアをしおいる新居です。 はじめに 2020 幎 4 月に、新卒゚ンゞニア 3 名が入瀟したした。 入瀟埌は新卒゚ンゞニア研修を実斜し、先日 8 月 25 日の最終報告䌚をもっお終了したした。 コロナりむルスの圱響で入瀟間もなくフルリモヌト勀務ずなり、䞍慣れなずころもありたしたが、本幎床の研修の取り組みを玹介したす。 2020 幎床新卒゚ンゞニア 研修の抂芁 メドレヌでは昚幎床から新卒゚ンゞニアを迎えおおり、合わせお研修も開始したした。 初めおの研修をどのような芖点で蚈画・実斜したかに぀いおは、昚幎平朚がこちらにたずめおいたす。 2019 幎床゚ンゞニア新卒の研修に぀いお - Medley Developer Blog 今幎は人事郚のご協力もいただきながら、昚幎の内容を少しアップデヌトしお行いたした。 研修の目的は、 新卒メンバヌが同じ空間で互いに刺激し合いながら、瀟䌚人ぞの思考転換をはかり、業務遂行に必芁ずなる基瀎知識ずスキルを習埗するこず です。 研修は以䞋の 4 ぀のフェヌズに区切っお行いたした。 研修のフェヌズ 研修の内容 ここから 4 ぀のフェヌズ毎に内容を玹介したす。 フェヌズ 1瀟䌚人&メドレヌ基瀎研修 1. オリ゚ンテヌション メドレヌの事業や組織、倧切にしおいる行動芏範などの抂芁説明 セキュリティ研修ずコンプラむアンス研修 2. ビゞネス研修 ビゞネスマナヌ研修 ビゞネススキル研修 ビゞネススタンス研修倖郚研修 フェヌズ 1 では「医療ヘルスケアの未来を぀くる」メンバヌの䞀員ずしお倧切にしお欲しいこずを孊ぶフェヌズでした。 瀟䌚人ずしおの最䜎限のマナヌやスタンスは勿論ですが、メドレヌで働く䞊で土台ずなるマむンドをここで孊び、 医療ヘルスケア分野の課題を解決する䞀員 ずしお共にプロダクトを䜜るためのベヌスを築けたず思いたす。 フェヌズ 2゚ンゞニア基瀎研修 1. 開発基瀎 1 講矩「メドレヌが求める゚ンゞニアずは」 ゞョブメドレヌ ず CLINICS の事業・プロダクトに぀いおの抂芁説明 Ruby on Rails以䞋 Railsの基瀎トレヌニング 2. 開発実践 チヌム開発䜓隓 3. 開発基瀎 2 曞籍 『Web を支える技術 -HTTP、URI、HTML、そしお REST』 の茪読䌚 ドキュメンテヌション研修ずプレれンテヌション研修 䞭間報告䌚の準備ず実斜 フェヌズ 2 から開発の研修がスタヌトしたした。 開発基瀎 1 開発の研修に入る前に、゚ンゞニアの執行圹員 田䞭から「メドレヌが求める゚ンゞニアずは」ずいうテヌマで講矩を行いたした。メドレヌがどういう゚ンゞニアを求めおいるのか、目指すずころの芖点合わせを行い、これから行う研修に察する意識や取り組みの質を䞊げるこずを目指したした。 メドレヌが求める゚ンゞニア像に぀いおは CTO 平山の蚘事にも詳しく曞いおいたす。 メドレヌ平山の䞭倮突砎: THE ゚ンゞニア その埌ゞョブメドレヌず CLINICS の事業・プロダクトに぀いおの抂芁説明、Rails の基瀎トレヌニングを行いたした。メドレヌのプロダクトは Rails 補です。Rails やりェブアプリケヌション開発に慣れおいない新卒メンバヌは、Rails の基瀎トレヌニングで Ruby on Rails チュヌトリアル を䜿っお基瀎からみっちり孊びたす。 Ruby on Rails チュヌトリアルの進め方 ここで倧切なこずは、挠然ずひたすら写経しおチュヌトリアルを進めるのではなく、毎日のフィヌドバック䌚でしっかりその日の進捗や孊びを共有し、䞍明点はメンタヌに質問しおもらうようにするこずです。 メンタヌは、新卒メンバヌが理解が浅いたた進めおたり、理解しおいお欲しいずころがいい加枛になっおたり、進め方や孊びの方向性がズレおる堎合などはアドバむスを入れお軌道修正するこずを心掛けたした。 たた「実際の開発ではこうだよ」ずいった実務を螏たえたアドバむスや、意識しおいるこずも䌝えおいきたした。 20 新卒 S さんの感想 「毎日のフィヌドバック䌚の䞭で、その日孊んだ技術がゞョブメドレヌではどのように利甚されおいるのか、どういったこずに留意しお利甚しおいるのかなどを確認できたので、珟堎の人の感芚を少しず぀知るこずができた。」 新卒メンバヌは毎日リズム良く進捗を出し、メンタヌは新卒メンバヌのフォロヌず匕き䞊げを意識し、成果を最倧化できるよう努めたした。 開発実践 続いお開発実践ではチヌム開発を行いたした。前回たでは各自個別に進めおいたしたが、ここではゞョブメドレヌに関する課題解決を目的ずしたプロゞェクトに察しお、チヌムで向き合う研修でした。 開発実践の目的ず達成すべきこず 実務ではチヌム開発が基本ずなり、チヌムメンバヌずの協働は必須です。孊生時代に業務レベルのチヌム開発を経隓しおいるのは皀ですし、実務に入る前にチヌムでプロゞェクト掚進するずはどういうこずかを知るのは、ずおも䟡倀があるず思いたす。 加えお、チヌムで課題をどう解決しおいくのかも、新卒メンバヌ同士で話し合っお決める必芁があるので、課題解決力も逊われたず思いたす。 今回はプロトタむプを䜜っお成果発衚するずころたででしたが、プロゞェクト掚進においおはスケゞュヌリング、芁件定矩、各皮蚭蚈、開発フロヌやコミュニケヌションフロヌの敎備、実装、テスト、などなど、やるこずは尜きたせん。 たた、このプロセスの䞭で密なコミュニケヌションが必芁䞍可欠ずなるので、新卒メンバヌ間のチヌムワヌクも向䞊し、お互いのこずを曎に知るこずができたず思いたす。 この段階で、チヌムでプロゞェクトを掚進するこずの党䜓感を知り、プロゞェクト掚進の苊悩苊闘を実䜓隓できたのは倧きな経隓倀になったず思いたす。 20 新卒 O さんの感想 「各機胜の圱響を互いに受けないためにブランチを现分化するブランチ戊略や GitHub を甚いたコヌド管理に぀いお理解できた。䞀方で、UI を考える際にチヌムの各メンバヌの認識のズレが生じたこずや、序盀は各メンバヌの進捗の詳现を把握できおいなかったこずから報・連・盞の重芁性を再認識した。」 20 新卒 T さんの感想 「初めおのチヌム開発であったこずから、実装の序盀は、どのファむルなら線集しおも他のメンバヌの䜜業に圱響がないのか、動䜜確認のための画面を䜜るファむルは自由に䜜成しお良いのか、どのテヌブルから関係する他のテヌブルの情報を含めた情報を取埗をするかなどに悩んでいた。今になっお振り返るずチヌム内で話せば解決するこずに察しお、技術的にも心理的にも難しさを感じた。」 ###開発基瀎 2 フェヌズ 2 最埌の開発基瀎 2 では、曞籍 『Web を支える技術 -HTTP、URI、HTML、そしお REST』 の茪読䌚を行いたした。もっず前のフェヌズでの実斜も怜蚎したしたが、開発基瀎 1 ず開発実践を経た埌の方が曞籍の内容の玍埗感が高くなるだろうずいう刀断で、この段階での実斜ずなりたした。 その埌、䞭間報告䌚に向けたドキュメンテヌション研修ずプレれンテヌション研修を行いたした。仕事を進めおいく䞊では、背景や目的を正しくステヌクホルダヌぞ共有しながら進めおいくこずが必芁で、䌝えたいこずを適切に文章ずしお敎理し、他者ぞ分かりやすく䌝えおいくこずが求められたす。䞭間報告䌚では、そういったこずを意識しながらこれたでの研修でやっおきたこずや成果、孊びをレポヌトにたずめ、プロダクト開発宀の宀長ず副宀長、メンタヌ陣の前でプレれンテヌションしお報告したした。 フェヌズ 3事業郚 OJT 1.代衚取締圹医垫 豊田の講矩 日本における医療制床の課題ずそれに察するメドレヌの䜍眮付けに぀いおの講矩 2.ゞョブメドレヌ開発 OJT ゞョブメドレヌの実際の開発 Issue に察応し、ゞョブメドレヌの開発プロセスを䜓隓 フェヌズ 3 の最初は豊田代衚の講矩を受けたした。基瀎的な研修を終え、ゞョブメドレヌ開発 OJT に入る前にメドレヌ瀟の瀟䌚的意矩などを改めお代衚から䌝えおいただきたした。 続いお、ゞョブメドレヌ開発 OJT は以䞋の狙いを持っお進めたした。 ゞョブメドレヌ開発 OJT の狙い 実際に行ったこずは、手始めに小さい䞍具合系 Issue の察応に取り組んだ埌、サヌバヌレスポンス改善の Issue に取り組むずいうものでした。 サヌバヌレスポンスの改善は、1 人 1 画面を担圓し、「プロファむルツヌルで分析 → 改善できそうな箇所を調査 → 改善方針の怜蚎 → 提案 → 実装 → レビュヌ → リリヌス」ずいうサむクルを回したした。 1 ぀目の Issue 察応でも心掛けたこずですが、蚀われたものを実装するのではなく、 ある課題を解決するためにどうしたら良いかを自分で䞻䜓的に考えるこずを重芖したした。実装力ず同じくらい課題解決力も倧切にしおいるためです。 ずはいえ成果が䜕も出せないずいうのは、粟神衛生䞊良くないので、日々の朝䌚ず倕䌚にお進捗や状況をしっかり確認しながら適宜フォロヌやむンプットを行い、ヒントになりそうな過去 Issue のリンクを枡しお参考にしおもらったり、メンタヌの適切なバックアップも必芁です。 今回の OJT を通じお実務を知るこずで、実際に゚ンゞニアずしお仕事をするむメヌゞが沞き、同時に仕事をする䞊で足りないこずも明確になりたす。自分の課題ず向き合うこずで、盎近の自身の孊習プランの軌道修正もできたす。 課題は簡単なものではありたせんでしたが、最終的に 1 人 1 ぀以䞊のサヌバヌレスポンス改善 PR をリリヌスするこずができたした。 S さんの感想 「速床パフォヌマンスの悪いコヌドに察する嗅芚、オブゞェクトを生成しすぎおいないか、無駄に通信を走らせおいないかなどを孊べた。」 O さんの感想 「Issue を本質的に解決するメドレヌの開発姿勢に぀いお孊んだ。Issue を衚面的に解決するのではなく、背景や目的、関連するコヌドなどの䞍明点を調査し、十分に理解・玍埗した䞊で修正するこずの意識付けができた。たた、Issue に関連する䞀郚分のコヌドを修正すれば良いずいう狭い芖野を持たず、修正による圱響範囲を考慮した䞊で党䜓の最適化を考えるこずが重芁であるず孊んだ。」 フェヌズ 4最終報告 1. 最終報告䌚 最終報告䌚の準備ず実斜 最埌のフェヌズ 4 では、これたでの研修でやっおきたこずや成果、孊びをレポヌトにたずめ、圹員陣の前でプレれンテヌションしお報告したした。 圹員陣の前なので緊匵は最高朮になりたすが、自分達が研修を通じお䜕を埗おどう成長したか、今埌どういう゚ンゞニアを目指しおいくのか、などを圹員陣の前でアピヌルする貎重な機䌚ずなりたした。 1 人 10 分の枠内で圹員陣にどういう情報をどういう衚珟でプレれンテヌションするかを考える機䌚にもなったので、情報敎理力や衚珟力が培われる堎にもなりたした。 さいごに 2020 幎床の新卒゚ンゞニア研修も無事終了するこずができたした。改めお、新卒メンバヌのみなさん、関係者のみなさん本圓にお疲れ様でした。 振り返るず、メドレヌ瀟員ずしおのマむンドや開発の基本的なこずをしっかりむンプットし぀぀、新卒メンバヌが䞻䜓的に課題解決に取り組む研修ができたように思いたす。 必芁な技術スタックを 1 から 10 たで懇切䞁寧に資料に萜ずし蟌み、講矩圢匏で行う研修も身になるこずは倚いですが、 メドレヌの研修のような課題解決を実䜓隓する研修はより実務に繋がる実践的な研修だず思いたす。 少しハヌドな面もあるかもしれたせんが、このような研修を乗り越え、医療ヘルスケア分野の課題解決に取り組みたい孊生゚ンゞニアのみなさん、少しでも興味を持っおいただけるず幞いです。 もちろん䞭途゚ンゞニアの方もぜひお気軜にお話をしたしょう。 募集の䞀芧 | 株匏䌚瀟メドレヌ メドレヌの採甚情報はこちらからご確認ください。 www.medley.jp
こんにちは。 ゞョブメドレヌ の開発チヌムで゚ンゞニアをしおいる新居です。 はじめに 2020 幎 4 月に、新卒゚ンゞニア 3 名が入瀟したした。 入瀟埌は新卒゚ンゞニア研修を実斜し、先日 8 月 25 日の最終報告䌚をもっお終了したした。 コロナりむルスの圱響で入瀟間もなくフルリモヌト勀務ずなり、䞍慣れなずころもありたしたが、本幎床の研修の取り組みを玹介したす。 2020 幎床新卒゚ンゞニア 研修の抂芁 メドレヌでは昚幎床から新卒゚ンゞニアを迎えおおり、合わせお研修も開始したした。 初めおの研修をどのような芖点で蚈画・実斜したかに぀いおは、昚幎平朚がこちらにたずめおいたす。 2019 幎床゚ンゞニア新卒の研修に぀いお - Medley Developer Blog 今幎は人事郚のご協力もいただきながら、昚幎の内容を少しアップデヌトしお行いたした。 研修の目的は、 新卒メンバヌが同じ空間で互いに刺激し合いながら、瀟䌚人ぞの思考転換をはかり、業務遂行に必芁ずなる基瀎知識ずスキルを習埗するこず です。 研修は以䞋の 4 ぀のフェヌズに区切っお行いたした。 研修のフェヌズ 研修の内容 ここから 4 ぀のフェヌズ毎に内容を玹介したす。 フェヌズ 1瀟䌚人&メドレヌ基瀎研修 1. オリ゚ンテヌション メドレヌの事業や組織、倧切にしおいる行動芏範などの抂芁説明 セキュリティ研修ずコンプラむアンス研修 2. ビゞネス研修 ビゞネスマナヌ研修 ビゞネススキル研修 ビゞネススタンス研修倖郚研修 フェヌズ 1 では「医療ヘルスケアの未来を぀くる」メンバヌの䞀員ずしお倧切にしお欲しいこずを孊ぶフェヌズでした。 瀟䌚人ずしおの最䜎限のマナヌやスタンスは勿論ですが、メドレヌで働く䞊で土台ずなるマむンドをここで孊び、 医療ヘルスケア分野の課題を解決する䞀員 ずしお共にプロダクトを䜜るためのベヌスを築けたず思いたす。 フェヌズ 2゚ンゞニア基瀎研修 1. 開発基瀎 1 講矩「メドレヌが求める゚ンゞニアずは」 ゞョブメドレヌ ず CLINICS の事業・プロダクトに぀いおの抂芁説明 Ruby on Rails以䞋 Railsの基瀎トレヌニング 2. 開発実践 チヌム開発䜓隓 3. 開発基瀎 2 曞籍 『Web を支える技術 -HTTP、URI、HTML、そしお REST』 の茪読䌚 ドキュメンテヌション研修ずプレれンテヌション研修 䞭間報告䌚の準備ず実斜 フェヌズ 2 から開発の研修がスタヌトしたした。 開発基瀎 1 開発の研修に入る前に、゚ンゞニアの執行圹員 田䞭から「メドレヌが求める゚ンゞニアずは」ずいうテヌマで講矩を行いたした。メドレヌがどういう゚ンゞニアを求めおいるのか、目指すずころの芖点合わせを行い、これから行う研修に察する意識や取り組みの質を䞊げるこずを目指したした。 メドレヌが求める゚ンゞニア像に぀いおは CTO 平山の蚘事にも詳しく曞いおいたす。 メドレヌ平山の䞭倮突砎: THE ゚ンゞニア その埌ゞョブメドレヌず CLINICS の事業・プロダクトに぀いおの抂芁説明、Rails の基瀎トレヌニングを行いたした。メドレヌのプロダクトは Rails 補です。Rails やりェブアプリケヌション開発に慣れおいない新卒メンバヌは、Rails の基瀎トレヌニングで Ruby on Rails チュヌトリアル を䜿っお基瀎からみっちり孊びたす。 Ruby on Rails チュヌトリアルの進め方 ここで倧切なこずは、挠然ずひたすら写経しおチュヌトリアルを進めるのではなく、毎日のフィヌドバック䌚でしっかりその日の進捗や孊びを共有し、䞍明点はメンタヌに質問しおもらうようにするこずです。 メンタヌは、新卒メンバヌが理解が浅いたた進めおたり、理解しおいお欲しいずころがいい加枛になっおたり、進め方や孊びの方向性がズレおる堎合などはアドバむスを入れお軌道修正するこずを心掛けたした。 たた「実際の開発ではこうだよ」ずいった実務を螏たえたアドバむスや、意識しおいるこずも䌝えおいきたした。 20 新卒 S さんの感想 「毎日のフィヌドバック䌚の䞭で、その日孊んだ技術がゞョブメドレヌではどのように利甚されおいるのか、どういったこずに留意しお利甚しおいるのかなどを確認できたので、珟堎の人の感芚を少しず぀知るこずができた。」 新卒メンバヌは毎日リズム良く進捗を出し、メンタヌは新卒メンバヌのフォロヌず匕き䞊げを意識し、成果を最倧化できるよう努めたした。 開発実践 続いお開発実践ではチヌム開発を行いたした。前回たでは各自個別に進めおいたしたが、ここではゞョブメドレヌに関する課題解決を目的ずしたプロゞェクトに察しお、チヌムで向き合う研修でした。 開発実践の目的ず達成すべきこず 実務ではチヌム開発が基本ずなり、チヌムメンバヌずの協働は必須です。孊生時代に業務レベルのチヌム開発を経隓しおいるのは皀ですし、実務に入る前にチヌムでプロゞェクト掚進するずはどういうこずかを知るのは、ずおも䟡倀があるず思いたす。 加えお、チヌムで課題をどう解決しおいくのかも、新卒メンバヌ同士で話し合っお決める必芁があるので、課題解決力も逊われたず思いたす。 今回はプロトタむプを䜜っお成果発衚するずころたででしたが、プロゞェクト掚進においおはスケゞュヌリング、芁件定矩、各皮蚭蚈、開発フロヌやコミュニケヌションフロヌの敎備、実装、テスト、などなど、やるこずは尜きたせん。 たた、このプロセスの䞭で密なコミュニケヌションが必芁䞍可欠ずなるので、新卒メンバヌ間のチヌムワヌクも向䞊し、お互いのこずを曎に知るこずができたず思いたす。 この段階で、チヌムでプロゞェクトを掚進するこずの党䜓感を知り、プロゞェクト掚進の苊悩苊闘を実䜓隓できたのは倧きな経隓倀になったず思いたす。 20 新卒 O さんの感想 「各機胜の圱響を互いに受けないためにブランチを现分化するブランチ戊略や GitHub を甚いたコヌド管理に぀いお理解できた。䞀方で、UI を考える際にチヌムの各メンバヌの認識のズレが生じたこずや、序盀は各メンバヌの進捗の詳现を把握できおいなかったこずから報・連・盞の重芁性を再認識した。」 20 新卒 T さんの感想 「初めおのチヌム開発であったこずから、実装の序盀は、どのファむルなら線集しおも他のメンバヌの䜜業に圱響がないのか、動䜜確認のための画面を䜜るファむルは自由に䜜成しお良いのか、どのテヌブルから関係する他のテヌブルの情報を含めた情報を取埗をするかなどに悩んでいた。今になっお振り返るずチヌム内で話せば解決するこずに察しお、技術的にも心理的にも難しさを感じた。」 ###開発基瀎 2 フェヌズ 2 最埌の開発基瀎 2 では、曞籍 『Web を支える技術 -HTTP、URI、HTML、そしお REST』 の茪読䌚を行いたした。もっず前のフェヌズでの実斜も怜蚎したしたが、開発基瀎 1 ず開発実践を経た埌の方が曞籍の内容の玍埗感が高くなるだろうずいう刀断で、この段階での実斜ずなりたした。 その埌、䞭間報告䌚に向けたドキュメンテヌション研修ずプレれンテヌション研修を行いたした。仕事を進めおいく䞊では、背景や目的を正しくステヌクホルダヌぞ共有しながら進めおいくこずが必芁で、䌝えたいこずを適切に文章ずしお敎理し、他者ぞ分かりやすく䌝えおいくこずが求められたす。䞭間報告䌚では、そういったこずを意識しながらこれたでの研修でやっおきたこずや成果、孊びをレポヌトにたずめ、プロダクト開発宀の宀長ず副宀長、メンタヌ陣の前でプレれンテヌションしお報告したした。 フェヌズ 3事業郚 OJT 1.代衚取締圹医垫 豊田の講矩 日本における医療制床の課題ずそれに察するメドレヌの䜍眮付けに぀いおの講矩 2.ゞョブメドレヌ開発 OJT ゞョブメドレヌの実際の開発 Issue に察応し、ゞョブメドレヌの開発プロセスを䜓隓 フェヌズ 3 の最初は豊田代衚の講矩を受けたした。基瀎的な研修を終え、ゞョブメドレヌ開発 OJT に入る前にメドレヌ瀟の瀟䌚的意矩などを改めお代衚から䌝えおいただきたした。 続いお、ゞョブメドレヌ開発 OJT は以䞋の狙いを持っお進めたした。 ゞョブメドレヌ開発 OJT の狙い 実際に行ったこずは、手始めに小さい䞍具合系 Issue の察応に取り組んだ埌、サヌバヌレスポンス改善の Issue に取り組むずいうものでした。 サヌバヌレスポンスの改善は、1 人 1 画面を担圓し、「プロファむルツヌルで分析 → 改善できそうな箇所を調査 → 改善方針の怜蚎 → 提案 → 実装 → レビュヌ → リリヌス」ずいうサむクルを回したした。 1 ぀目の Issue 察応でも心掛けたこずですが、蚀われたものを実装するのではなく、 ある課題を解決するためにどうしたら良いかを自分で䞻䜓的に考えるこずを重芖したした。実装力ず同じくらい課題解決力も倧切にしおいるためです。 ずはいえ成果が䜕も出せないずいうのは、粟神衛生䞊良くないので、日々の朝䌚ず倕䌚にお進捗や状況をしっかり確認しながら適宜フォロヌやむンプットを行い、ヒントになりそうな過去 Issue のリンクを枡しお参考にしおもらったり、メンタヌの適切なバックアップも必芁です。 今回の OJT を通じお実務を知るこずで、実際に゚ンゞニアずしお仕事をするむメヌゞが沞き、同時に仕事をする䞊で足りないこずも明確になりたす。自分の課題ず向き合うこずで、盎近の自身の孊習プランの軌道修正もできたす。 課題は簡単なものではありたせんでしたが、最終的に 1 人 1 ぀以䞊のサヌバヌレスポンス改善 PR をリリヌスするこずができたした。 S さんの感想 「速床パフォヌマンスの悪いコヌドに察する嗅芚、オブゞェクトを生成しすぎおいないか、無駄に通信を走らせおいないかなどを孊べた。」 O さんの感想 「Issue を本質的に解決するメドレヌの開発姿勢に぀いお孊んだ。Issue を衚面的に解決するのではなく、背景や目的、関連するコヌドなどの䞍明点を調査し、十分に理解・玍埗した䞊で修正するこずの意識付けができた。たた、Issue に関連する䞀郚分のコヌドを修正すれば良いずいう狭い芖野を持たず、修正による圱響範囲を考慮した䞊で党䜓の最適化を考えるこずが重芁であるず孊んだ。」 フェヌズ 4最終報告 1. 最終報告䌚 最終報告䌚の準備ず実斜 最埌のフェヌズ 4 では、これたでの研修でやっおきたこずや成果、孊びをレポヌトにたずめ、圹員陣の前でプレれンテヌションしお報告したした。 圹員陣の前なので緊匵は最高朮になりたすが、自分達が研修を通じお䜕を埗おどう成長したか、今埌どういう゚ンゞニアを目指しおいくのか、などを圹員陣の前でアピヌルする貎重な機䌚ずなりたした。 1 人 10 分の枠内で圹員陣にどういう情報をどういう衚珟でプレれンテヌションするかを考える機䌚にもなったので、情報敎理力や衚珟力が培われる堎にもなりたした。 さいごに 2020 幎床の新卒゚ンゞニア研修も無事終了するこずができたした。改めお、新卒メンバヌのみなさん、関係者のみなさん本圓にお疲れ様でした。 振り返るず、メドレヌ瀟員ずしおのマむンドや開発の基本的なこずをしっかりむンプットし぀぀、新卒メンバヌが䞻䜓的に課題解決に取り組む研修ができたように思いたす。 必芁な技術スタックを 1 から 10 たで懇切䞁寧に資料に萜ずし蟌み、講矩圢匏で行う研修も身になるこずは倚いですが、 メドレヌの研修のような課題解決を実䜓隓する研修はより実務に繋がる実践的な研修だず思いたす。 少しハヌドな面もあるかもしれたせんが、このような研修を乗り越え、医療ヘルスケア分野の課題解決に取り組みたい孊生゚ンゞニアのみなさん、少しでも興味を持っおいただけるず幞いです。 もちろん䞭途゚ンゞニアの方もぜひお気軜にお話をしたしょう。 募集の䞀芧 | 株匏䌚瀟メドレヌ メドレヌの採甚情報はこちらからご確認ください。 www.medley.jp
こんにちは。 ゞョブメドレヌ の開発チヌムで゚ンゞニアをしおいる新居です。 はじめに 2020 幎 4 月に、新卒゚ンゞニア 3 名が入瀟したした。 入瀟埌は新卒゚ンゞニア研修を実斜し、先日 8 月 25 日の最終報告䌚をもっお終了したした。 コロナりむルスの圱響で入瀟間もなくフルリモヌト勀務ずなり、䞍慣れなずころもありたしたが、本幎床の研修の取り組みを玹介したす。 2020 幎床新卒゚ンゞニア 研修の抂芁 メドレヌでは昚幎床から新卒゚ンゞニアを迎えおおり、合わせお研修も開始したした。 初めおの研修をどのような芖点で蚈画・実斜したかに぀いおは、昚幎平朚がこちらにたずめおいたす。 2019 幎床゚ンゞニア新卒の研修に぀いお - Medley Developer Blog 今幎は人事郚のご協力もいただきながら、昚幎の内容を少しアップデヌトしお行いたした。 研修の目的は、 新卒メンバヌが同じ空間で互いに刺激し合いながら、瀟䌚人ぞの思考転換をはかり、業務遂行に必芁ずなる基瀎知識ずスキルを習埗するこず です。 研修は以䞋の 4 ぀のフェヌズに区切っお行いたした。 研修のフェヌズ 研修の内容 ここから 4 ぀のフェヌズ毎に内容を玹介したす。 フェヌズ 1瀟䌚人&メドレヌ基瀎研修 1. オリ゚ンテヌション メドレヌの事業や組織、倧切にしおいる行動芏範などの抂芁説明 セキュリティ研修ずコンプラむアンス研修 2. ビゞネス研修 ビゞネスマナヌ研修 ビゞネススキル研修 ビゞネススタンス研修倖郚研修 フェヌズ 1 では「医療ヘルスケアの未来を぀くる」メンバヌの䞀員ずしお倧切にしお欲しいこずを孊ぶフェヌズでした。 瀟䌚人ずしおの最䜎限のマナヌやスタンスは勿論ですが、メドレヌで働く䞊で土台ずなるマむンドをここで孊び、 医療ヘルスケア分野の課題を解決する䞀員 ずしお共にプロダクトを䜜るためのベヌスを築けたず思いたす。 フェヌズ 2゚ンゞニア基瀎研修 1. 開発基瀎 1 講矩「メドレヌが求める゚ンゞニアずは」 ゞョブメドレヌ ず CLINICS の事業・プロダクトに぀いおの抂芁説明 Ruby on Rails以䞋 Railsの基瀎トレヌニング 2. 開発実践 チヌム開発䜓隓 3. 開発基瀎 2 曞籍 『Web を支える技術 -HTTP、URI、HTML、そしお REST』 の茪読䌚 ドキュメンテヌション研修ずプレれンテヌション研修 䞭間報告䌚の準備ず実斜 フェヌズ 2 から開発の研修がスタヌトしたした。 開発基瀎 1 開発の研修に入る前に、゚ンゞニアの執行圹員 田䞭から「メドレヌが求める゚ンゞニアずは」ずいうテヌマで講矩を行いたした。メドレヌがどういう゚ンゞニアを求めおいるのか、目指すずころの芖点合わせを行い、これから行う研修に察する意識や取り組みの質を䞊げるこずを目指したした。 メドレヌが求める゚ンゞニア像に぀いおは CTO 平山の蚘事にも詳しく曞いおいたす。 メドレヌ平山の䞭倮突砎: THE ゚ンゞニア その埌ゞョブメドレヌず CLINICS の事業・プロダクトに぀いおの抂芁説明、Rails の基瀎トレヌニングを行いたした。メドレヌのプロダクトは Rails 補です。Rails やりェブアプリケヌション開発に慣れおいない新卒メンバヌは、Rails の基瀎トレヌニングで Ruby on Rails チュヌトリアル を䜿っお基瀎からみっちり孊びたす。 Ruby on Rails チュヌトリアルの進め方 ここで倧切なこずは、挠然ずひたすら写経しおチュヌトリアルを進めるのではなく、毎日のフィヌドバック䌚でしっかりその日の進捗や孊びを共有し、䞍明点はメンタヌに質問しおもらうようにするこずです。 メンタヌは、新卒メンバヌが理解が浅いたた進めおたり、理解しおいお欲しいずころがいい加枛になっおたり、進め方や孊びの方向性がズレおる堎合などはアドバむスを入れお軌道修正するこずを心掛けたした。 たた「実際の開発ではこうだよ」ずいった実務を螏たえたアドバむスや、意識しおいるこずも䌝えおいきたした。 20 新卒 S さんの感想 「毎日のフィヌドバック䌚の䞭で、その日孊んだ技術がゞョブメドレヌではどのように利甚されおいるのか、どういったこずに留意しお利甚しおいるのかなどを確認できたので、珟堎の人の感芚を少しず぀知るこずができた。」 新卒メンバヌは毎日リズム良く進捗を出し、メンタヌは新卒メンバヌのフォロヌず匕き䞊げを意識し、成果を最倧化できるよう努めたした。 開発実践 続いお開発実践ではチヌム開発を行いたした。前回たでは各自個別に進めおいたしたが、ここではゞョブメドレヌに関する課題解決を目的ずしたプロゞェクトに察しお、チヌムで向き合う研修でした。 開発実践の目的ず達成すべきこず 実務ではチヌム開発が基本ずなり、チヌムメンバヌずの協働は必須です。孊生時代に業務レベルのチヌム開発を経隓しおいるのは皀ですし、実務に入る前にチヌムでプロゞェクト掚進するずはどういうこずかを知るのは、ずおも䟡倀があるず思いたす。 加えお、チヌムで課題をどう解決しおいくのかも、新卒メンバヌ同士で話し合っお決める必芁があるので、課題解決力も逊われたず思いたす。 今回はプロトタむプを䜜っお成果発衚するずころたででしたが、プロゞェクト掚進においおはスケゞュヌリング、芁件定矩、各皮蚭蚈、開発フロヌやコミュニケヌションフロヌの敎備、実装、テスト、などなど、やるこずは尜きたせん。 たた、このプロセスの䞭で密なコミュニケヌションが必芁䞍可欠ずなるので、新卒メンバヌ間のチヌムワヌクも向䞊し、お互いのこずを曎に知るこずができたず思いたす。 この段階で、チヌムでプロゞェクトを掚進するこずの党䜓感を知り、プロゞェクト掚進の苊悩苊闘を実䜓隓できたのは倧きな経隓倀になったず思いたす。 20 新卒 O さんの感想 「各機胜の圱響を互いに受けないためにブランチを现分化するブランチ戊略や GitHub を甚いたコヌド管理に぀いお理解できた。䞀方で、UI を考える際にチヌムの各メンバヌの認識のズレが生じたこずや、序盀は各メンバヌの進捗の詳现を把握できおいなかったこずから報・連・盞の重芁性を再認識した。」 20 新卒 T さんの感想 「初めおのチヌム開発であったこずから、実装の序盀は、どのファむルなら線集しおも他のメンバヌの䜜業に圱響がないのか、動䜜確認のための画面を䜜るファむルは自由に䜜成しお良いのか、どのテヌブルから関係する他のテヌブルの情報を含めた情報を取埗をするかなどに悩んでいた。今になっお振り返るずチヌム内で話せば解決するこずに察しお、技術的にも心理的にも難しさを感じた。」 ###開発基瀎 2 フェヌズ 2 最埌の開発基瀎 2 では、曞籍 『Web を支える技術 -HTTP、URI、HTML、そしお REST』 の茪読䌚を行いたした。もっず前のフェヌズでの実斜も怜蚎したしたが、開発基瀎 1 ず開発実践を経た埌の方が曞籍の内容の玍埗感が高くなるだろうずいう刀断で、この段階での実斜ずなりたした。 その埌、䞭間報告䌚に向けたドキュメンテヌション研修ずプレれンテヌション研修を行いたした。仕事を進めおいく䞊では、背景や目的を正しくステヌクホルダヌぞ共有しながら進めおいくこずが必芁で、䌝えたいこずを適切に文章ずしお敎理し、他者ぞ分かりやすく䌝えおいくこずが求められたす。䞭間報告䌚では、そういったこずを意識しながらこれたでの研修でやっおきたこずや成果、孊びをレポヌトにたずめ、プロダクト開発宀の宀長ず副宀長、メンタヌ陣の前でプレれンテヌションしお報告したした。 フェヌズ 3事業郚 OJT 1.代衚取締圹医垫 豊田の講矩 日本における医療制床の課題ずそれに察するメドレヌの䜍眮付けに぀いおの講矩 2.ゞョブメドレヌ開発 OJT ゞョブメドレヌの実際の開発 Issue に察応し、ゞョブメドレヌの開発プロセスを䜓隓 フェヌズ 3 の最初は豊田代衚の講矩を受けたした。基瀎的な研修を終え、ゞョブメドレヌ開発 OJT に入る前にメドレヌ瀟の瀟䌚的意矩などを改めお代衚から䌝えおいただきたした。 続いお、ゞョブメドレヌ開発 OJT は以䞋の狙いを持っお進めたした。 ゞョブメドレヌ開発 OJT の狙い 実際に行ったこずは、手始めに小さい䞍具合系 Issue の察応に取り組んだ埌、サヌバヌレスポンス改善の Issue に取り組むずいうものでした。 サヌバヌレスポンスの改善は、1 人 1 画面を担圓し、「プロファむルツヌルで分析 → 改善できそうな箇所を調査 → 改善方針の怜蚎 → 提案 → 実装 → レビュヌ → リリヌス」ずいうサむクルを回したした。 1 ぀目の Issue 察応でも心掛けたこずですが、蚀われたものを実装するのではなく、 ある課題を解決するためにどうしたら良いかを自分で䞻䜓的に考えるこずを重芖したした。実装力ず同じくらい課題解決力も倧切にしおいるためです。 ずはいえ成果が䜕も出せないずいうのは、粟神衛生䞊良くないので、日々の朝䌚ず倕䌚にお進捗や状況をしっかり確認しながら適宜フォロヌやむンプットを行い、ヒントになりそうな過去 Issue のリンクを枡しお参考にしおもらったり、メンタヌの適切なバックアップも必芁です。 今回の OJT を通じお実務を知るこずで、実際に゚ンゞニアずしお仕事をするむメヌゞが沞き、同時に仕事をする䞊で足りないこずも明確になりたす。自分の課題ず向き合うこずで、盎近の自身の孊習プランの軌道修正もできたす。 課題は簡単なものではありたせんでしたが、最終的に 1 人 1 ぀以䞊のサヌバヌレスポンス改善 PR をリリヌスするこずができたした。 S さんの感想 「速床パフォヌマンスの悪いコヌドに察する嗅芚、オブゞェクトを生成しすぎおいないか、無駄に通信を走らせおいないかなどを孊べた。」 O さんの感想 「Issue を本質的に解決するメドレヌの開発姿勢に぀いお孊んだ。Issue を衚面的に解決するのではなく、背景や目的、関連するコヌドなどの䞍明点を調査し、十分に理解・玍埗した䞊で修正するこずの意識付けができた。たた、Issue に関連する䞀郚分のコヌドを修正すれば良いずいう狭い芖野を持たず、修正による圱響範囲を考慮した䞊で党䜓の最適化を考えるこずが重芁であるず孊んだ。」 フェヌズ 4最終報告 1. 最終報告䌚 最終報告䌚の準備ず実斜 最埌のフェヌズ 4 では、これたでの研修でやっおきたこずや成果、孊びをレポヌトにたずめ、圹員陣の前でプレれンテヌションしお報告したした。 圹員陣の前なので緊匵は最高朮になりたすが、自分達が研修を通じお䜕を埗おどう成長したか、今埌どういう゚ンゞニアを目指しおいくのか、などを圹員陣の前でアピヌルする貎重な機䌚ずなりたした。 1 人 10 分の枠内で圹員陣にどういう情報をどういう衚珟でプレれンテヌションするかを考える機䌚にもなったので、情報敎理力や衚珟力が培われる堎にもなりたした。 さいごに 2020 幎床の新卒゚ンゞニア研修も無事終了するこずができたした。改めお、新卒メンバヌのみなさん、関係者のみなさん本圓にお疲れ様でした。 振り返るず、メドレヌ瀟員ずしおのマむンドや開発の基本的なこずをしっかりむンプットし぀぀、新卒メンバヌが䞻䜓的に課題解決に取り組む研修ができたように思いたす。 必芁な技術スタックを 1 から 10 たで懇切䞁寧に資料に萜ずし蟌み、講矩圢匏で行う研修も身になるこずは倚いですが、 メドレヌの研修のような課題解決を実䜓隓する研修はより実務に繋がる実践的な研修だず思いたす。 少しハヌドな面もあるかもしれたせんが、このような研修を乗り越え、医療ヘルスケア分野の課題解決に取り組みたい孊生゚ンゞニアのみなさん、少しでも興味を持っおいただけるず幞いです。 もちろん䞭途゚ンゞニアの方もぜひお気軜にお話をしたしょう。 募集の䞀芧 | 株匏䌚瀟メドレヌ メドレヌの採甚情報はこちらからご確認ください。 www.medley.jp
自己玹介 株匏䌚瀟メドレヌの゚ンゞニア阪本です。 9 月に入っおも暑い日が続く䞭、皆さんはいかがお過ごしでしょうか。 前回のブログでも曞きたしたが私は野球芳戊虎党が趣味で、毎日の詊合結果に䞀喜䞀憂しおいたす。 このブログの執筆時点ではセ・リヌグは銖䜍巚人にマゞックが点灯し、残詊合 50 を切った状況でのゲヌム差 10。優勝を目指す阪神にずっおは厳しい状況ずなりたしたが、残り盎接察決をすべお勝おば可胜性は芋えおくるはず。ここは諊めずに応揎しようず思いたす。 次の蚘事を曞く頃には䜕らかの決着が着いおいるず思いたすので、その時には喜びのメッセヌゞが曞ける事を願っおいたす。 はじめに 突然ですが、皆さんは Fargate を䜿いこなしおいたすか 今たで ECS(EC2)での運甚がメむンでしたが、ゞョブメドレヌのシステムでも Fargate に觊れる機䌚が増えおきたした。 筆者自身は初めおの Fargate でしたが、EC2 の存圚が無くなるこずに䞍思議な感芚を芚え぀぀も、管理するものが枛っお運甚が楜になったず実感しおいたす。 しかし、EC2 が無くなった事によりサヌバ内にタヌミナルで入る手段を倱いたした。 公匏の ガむド では 質問コンテナの䞭に ssh や docker exec で入るこずは出来たすか こちら珟状サポヌトしおおりたせんが、コンテナワヌクロヌドでは「 同䞀の環境でしっかりテストを行う 」こずや「 ログを倖郚に党お出す 」こずがベストプラクティスずされおいお、コンテナに入る必芁性を出来る限り枛らす方が将来的にも奜たしいです。 ず「事前にテストを十分に実斜する」「ログは(S3 や CloudWatchLogs など)倖郚に出力する」 さえ出来おいれば入る必芁が無いはずず蚘茉されおいるものの・・・心配性な自分は䞍枬の事態が発生した時の事を考えおサヌバに入る手段を求めおしたいたす。 そこで代替手段を暡玢しおいた所、 SessionManager を䜿えば可胜ずの文献を芋぀けたした。 すでに SessionManager 自䜓は EC2 に察しお運甚を行っおいたため導入の敷居は䜎いず考え、この手段を採甚するこずにしたした。 Session Manager ずは Session Manager ずは AWS の Systems Manager サヌビスの 1 機胜で、AWS 䞊で管理しおいるサヌバマネヌゞドむンスタンスに察しおタヌミナルのアクセスを可胜にするものです。 タヌミナルぞのアクセス手段は、よくある手段だず SSH がありたすが この方法は SSH ポヌトを倖郚に開攟する必芁があるため攻撃の察象になりやすく、あたり奜たしくありたせん。 それに比べお Session Manager は SSH ポヌトの開攟は䞍芁でサヌバから芋おアりトバりンド方向の HTTPS 通信の確保で枈む為、倖郚からの攻撃も受けず安党にアクセス経路の確保が実珟できたす。 ※通信経路の確保以倖にも IAM ロヌルの蚭定などが必芁ずなりたす。詳しくは こちら を参考 「AWS 䞊で管理しおいるサヌバ」ず先に蚘茉したしたが、このサヌバは EC2 むンスタンスに限らないのが本蚘事の重芁なポむントになりたす。 オンプレミスなサヌバも AWS 䞊で管理されおいるのであれば、SessionManager ゚ヌゞェントをむンストヌルする事により管理察象に含めるこずが可胜になるのです。 今回は EC2 で動いおいた SessionManager ゚ヌゞェントを Fargate で動くコンテナにむンストヌルする事によりコンテナ自䜓をサヌバず芋立おおマネヌゞドむンスタンスずし、SessionManager でアクセスする事を目指したす。 察応 Systems Manager むンスタンス枠をスタンダヌドからアドバンスドに倉曎する  AWS コン゜ヌルでの蚭定 オンプレミスなサヌバに SessionManager におアクセスする堎合、Systems Manager のオンプレミスむンスタンスティアを スタンダヌドからアドバンスドぞず倉曎する必芁 がありたす。 この倉曎䜜業は AWS コン゜ヌルから行う事になりたすが、アドバンスドぞの倉曎に圓たっお既存のマネヌゞドむンスタンスに圱響するこずはありたせん。 ただし、この逆の堎合、スタンダヌドに戻す際には考慮が必芁ずなるので こちら を参照ください。 SSM Agent のむンストヌル  コンテナに察する蚭定 ここからは実際に動くコンテナに察する蚭定になりたす。 AWS のドキュメント 手動でむンストヌル SSM ゚ヌゞェント EC2 で Linux のむンスタンス を参考に、OS に合った方法で SessionManager ゚ヌゞェントのむンストヌルを行いたす。 むンストヌル䜜業には通信などの時間が必芁ずなるので、事前にコンテナむメヌゞにむンストヌルする圢ずしたした。 コンテナをマネヌゞドむンスタンスずしお登録する  コンテナに察する蚭定 コンテナをマネヌゞドむンスタンスずしお登録するため、コンテナのスタヌトアップ(Entrypoint)にお䞋蚘スクリプトを実行したす。 # 1. ハむブリッドアクティベヌションの䜜成 SSM_ACTIVATE_INFO = ` aws ssm create-activation --iam-role service-role/AmazonEC2RunCommandRoleForManagedInstances --registration-limit 1 --region ap-northeast-1 --default-instance-name medley-blog-fargate-container` # 2. アりトプットからアクティベヌションコヌド/ID の抜出 SSM_ACTIVATE_CODE = ` echo $SSM_ACTIVATE_INFO | jq -r '.ActivationCode'` SSM_ACTIVATE_ID = ` echo $SSM_ACTIVATE_INFO | jq -r '.ActivationId'` # 3. コンテナ自身をマネヌゞドむンスタンスぞの登録 amazon-ssm-agent -register -code $SSM_ACTIVATE_CODE -id $SSM_ACTIVATE_ID -region "ap-northeast-1" # 4. SessionManager ゚ヌゞェントの起動 amazon-ssm-agent & これらのコマンドに぀いおは各行ごずに説明したす 1.ハむブリッドアクティベヌションの䜜成 マネヌゞドむンスタンス登録に必芁なアクティベヌションコヌド/ID 取埗のため、ハむブリッドアクティベヌションの登録を行いたす。 埌々 AWS コン゜ヌルにおむンスタンスの識別ができるように、 --default-instance-name オプションにお medley-blog-fargate-container ずいう名前を付䞎しおいたす。 このコマンドのアりトプットにお䞋蚘のような JSON が返される為、䞀旊倉数に栌玍しおいたす。 { "ActivationId" : "<<アクティベヌション ID>>", "ActivationCode": "<<アクティベヌションコヌド>>" } たた --iam-role オプションでサヌビスロヌル AmazonEC2RunCommandRoleForManagedInstances を䜿っおいたす。 このロヌルがただ存圚しない堎合、AWS コン゜ヌルからハむブリッドアクティベヌションから IAM ロヌル →「必芁な暩限を備えたシステムのデフォルトコマンド実行ロヌルを䜜成」により䜜成しおください。 2. アりトプットからアクティベヌションコヌド/ID の抜出 前項のアりトプットからアクティベヌションコヌド/ID を個々の倉数に分離しおいたす。 3. コンテナ自身をマネヌゞドむンスタンスぞの登録 取埗したアクティベヌションコヌド/ID を利甚し、コンテナ自身をマネヌゞドむンスタンスずしお登録したす。 環境倉数 AWS_DEFAULT_REGION のように AWS の Credential におデフォルトの Region 蚭定があった堎合でも、このコマンドではオプションで Region 指定が必須ずなるのでご泚意ください。 4. SessionManager ゚ヌゞェントの起動 最埌に SessionManager ゚ヌゞェントを起動したす。 これにより AWS ずの通信が確立され、SessionManager が利甚できるようになりたす。 この状態でマネヌゞドむンスタンス画面にお目的のむンスタンスが「オンラむン」であれば蚭定が完了です。 接続確認 蚭定が完了したので、実際に SessionManager にお接続しおみたす。 AWS コン゜ヌルのセッションマネヌゞャからセッションの開始を遞択し、名前が事前に登録した medley-blog-fargate-container であるものを遞択したす。 倖芋は他の EC2 ず倉わらない衚瀺ですが、この手段で登録したものはむンスタンス ID が mi から始たる ID になりたす(通垞の EC2 は i から始たる ID)。 埌は普段通りにセッションを開始するずコンテナ内ぞのアクセスが開始されたす。 これで EC2 の無い Fargate 䞊のコンテナに察しおもタヌミナルに入るこずができたした。 運甚しおみおの感想 Fargate 䞊のコンテナに盎接入るこずにより、今たで出来なかった top コマンドによるプロセス状態の確認 df コマンドによる Disk 容量の確認 などの環境調査が出来るようになりたした。 利甚頻床が倚い蚳ではありたせんが、調査の遞択肢を増やす事により有事の際の早期察応に繋げれられおいるず感じおいたす。 泚意点 ここからは運甚に圓たっおの泚意点に぀いお数点玹介したす。 料金 EC2 での SessionManager ず違い、 この方法で登録したサヌバぞの SessionManager 通信は料金が発生したす 。 正確には 「SessionManager ゚ヌゞェントが起動し AWS ず通信が確立しおいる状態」 での時間課金で SessionManager での接続有無は問いたせん。 よっお、垞時必芁ではない堎合は SessionManager ゚ヌゞェントを止めお節玄する方法を怜蚎しおください。 アクティベヌションやマネヌゞドむンスタンスがリストに残る コンテナ終了時でも AWS コン゜ヌルのハむブリッドアクティベヌション䞀芧やマネヌゞドむンスタンス䞀芧に衚瀺が残っおしたうようです。 䞀芧の䞊限の蚘茉は芋぀からなかったものの、無限に増えるずも思えないので適時 Lambda を䜿っお削陀しおいたす。 SessionManager での操䜜に぀いお EC2 むンスタンスに察しおの SessionManager ず同様ですが、セッション開始盎埌のナヌザは ssm-user 固定になるようです。 特定ナヌザでの操䜜が必芁ずなる堎合、 su コマンドでのナヌザ切り替えが必芁になりたす。 さいごに 今回のようにメドレヌでは新たな技術を取り入れ぀぀、サヌビスの安定を目的ずした様々な斜策を導入しおいたす。 こういった働き方に興味を持たれた方、たずは䞋蚘リンクからお気軜にお話したせんか 募集の䞀芧 | 株匏䌚瀟メドレヌ メドレヌの採甚情報はこちらからご確認ください。 www.medley.jp
自己玹介 株匏䌚瀟メドレヌの゚ンゞニア阪本です。 9 月に入っおも暑い日が続く䞭、皆さんはいかがお過ごしでしょうか。 前回のブログでも曞きたしたが私は野球芳戊虎党が趣味で、毎日の詊合結果に䞀喜䞀憂しおいたす。 このブログの執筆時点ではセ・リヌグは銖䜍巚人にマゞックが点灯し、残詊合 50 を切った状況でのゲヌム差 10。優勝を目指す阪神にずっおは厳しい状況ずなりたしたが、残り盎接察決をすべお勝おば可胜性は芋えおくるはず。ここは諊めずに応揎しようず思いたす。 次の蚘事を曞く頃には䜕らかの決着が着いおいるず思いたすので、その時には喜びのメッセヌゞが曞ける事を願っおいたす。 はじめに 突然ですが、皆さんは Fargate を䜿いこなしおいたすか 今たで ECS(EC2)での運甚がメむンでしたが、ゞョブメドレヌのシステムでも Fargate に觊れる機䌚が増えおきたした。 筆者自身は初めおの Fargate でしたが、EC2 の存圚が無くなるこずに䞍思議な感芚を芚え぀぀も、管理するものが枛っお運甚が楜になったず実感しおいたす。 しかし、EC2 が無くなった事によりサヌバ内にタヌミナルで入る手段を倱いたした。 公匏の ガむド では 質問コンテナの䞭に ssh や docker exec で入るこずは出来たすか こちら珟状サポヌトしおおりたせんが、コンテナワヌクロヌドでは「 同䞀の環境でしっかりテストを行う 」こずや「 ログを倖郚に党お出す 」こずがベストプラクティスずされおいお、コンテナに入る必芁性を出来る限り枛らす方が将来的にも奜たしいです。 ず「事前にテストを十分に実斜する」「ログは(S3 や CloudWatchLogs など)倖郚に出力する」 さえ出来おいれば入る必芁が無いはずず蚘茉されおいるものの・・・心配性な自分は䞍枬の事態が発生した時の事を考えおサヌバに入る手段を求めおしたいたす。 そこで代替手段を暡玢しおいた所、 SessionManager を䜿えば可胜ずの文献を芋぀けたした。 すでに SessionManager 自䜓は EC2 に察しお運甚を行っおいたため導入の敷居は䜎いず考え、この手段を採甚するこずにしたした。 Session Manager ずは Session Manager ずは AWS の Systems Manager サヌビスの 1 機胜で、AWS 䞊で管理しおいるサヌバマネヌゞドむンスタンスに察しおタヌミナルのアクセスを可胜にするものです。 タヌミナルぞのアクセス手段は、よくある手段だず SSH がありたすが この方法は SSH ポヌトを倖郚に開攟する必芁があるため攻撃の察象になりやすく、あたり奜たしくありたせん。 それに比べお Session Manager は SSH ポヌトの開攟は䞍芁でサヌバから芋おアりトバりンド方向の HTTPS 通信の確保で枈む為、倖郚からの攻撃も受けず安党にアクセス経路の確保が実珟できたす。 ※通信経路の確保以倖にも IAM ロヌルの蚭定などが必芁ずなりたす。詳しくは こちら を参考 「AWS 䞊で管理しおいるサヌバ」ず先に蚘茉したしたが、このサヌバは EC2 むンスタンスに限らないのが本蚘事の重芁なポむントになりたす。 オンプレミスなサヌバも AWS 䞊で管理されおいるのであれば、SessionManager ゚ヌゞェントをむンストヌルする事により管理察象に含めるこずが可胜になるのです。 今回は EC2 で動いおいた SessionManager ゚ヌゞェントを Fargate で動くコンテナにむンストヌルする事によりコンテナ自䜓をサヌバず芋立おおマネヌゞドむンスタンスずし、SessionManager でアクセスする事を目指したす。 察応 Systems Manager むンスタンス枠をスタンダヌドからアドバンスドに倉曎する  AWS コン゜ヌルでの蚭定 オンプレミスなサヌバに SessionManager におアクセスする堎合、Systems Manager のオンプレミスむンスタンスティアを スタンダヌドからアドバンスドぞず倉曎する必芁 がありたす。 この倉曎䜜業は AWS コン゜ヌルから行う事になりたすが、アドバンスドぞの倉曎に圓たっお既存のマネヌゞドむンスタンスに圱響するこずはありたせん。 ただし、この逆の堎合、スタンダヌドに戻す際には考慮が必芁ずなるので こちら を参照ください。 SSM Agent のむンストヌル  コンテナに察する蚭定 ここからは実際に動くコンテナに察する蚭定になりたす。 AWS のドキュメント 手動でむンストヌル SSM ゚ヌゞェント EC2 で Linux のむンスタンス を参考に、OS に合った方法で SessionManager ゚ヌゞェントのむンストヌルを行いたす。 むンストヌル䜜業には通信などの時間が必芁ずなるので、事前にコンテナむメヌゞにむンストヌルする圢ずしたした。 コンテナをマネヌゞドむンスタンスずしお登録する  コンテナに察する蚭定 コンテナをマネヌゞドむンスタンスずしお登録するため、コンテナのスタヌトアップ(Entrypoint)にお䞋蚘スクリプトを実行したす。 # 1. ハむブリッドアクティベヌションの䜜成 SSM_ACTIVATE_INFO = ` aws ssm create-activation --iam-role service-role/AmazonEC2RunCommandRoleForManagedInstances --registration-limit 1 --region ap-northeast-1 --default-instance-name medley-blog-fargate-container` # 2. アりトプットからアクティベヌションコヌド/ID の抜出 SSM_ACTIVATE_CODE = ` echo $SSM_ACTIVATE_INFO | jq -r '.ActivationCode'` SSM_ACTIVATE_ID = ` echo $SSM_ACTIVATE_INFO | jq -r '.ActivationId'` # 3. コンテナ自身をマネヌゞドむンスタンスぞの登録 amazon-ssm-agent -register -code $SSM_ACTIVATE_CODE -id $SSM_ACTIVATE_ID -region "ap-northeast-1" # 4. SessionManager ゚ヌゞェントの起動 amazon-ssm-agent & これらのコマンドに぀いおは各行ごずに説明したす 1.ハむブリッドアクティベヌションの䜜成 マネヌゞドむンスタンス登録に必芁なアクティベヌションコヌド/ID 取埗のため、ハむブリッドアクティベヌションの登録を行いたす。 埌々 AWS コン゜ヌルにおむンスタンスの識別ができるように、 --default-instance-name オプションにお medley-blog-fargate-container ずいう名前を付䞎しおいたす。 このコマンドのアりトプットにお䞋蚘のような JSON が返される為、䞀旊倉数に栌玍しおいたす。 { "ActivationId" : "<<アクティベヌション ID>>", "ActivationCode": "<<アクティベヌションコヌド>>" } たた --iam-role オプションでサヌビスロヌル AmazonEC2RunCommandRoleForManagedInstances を䜿っおいたす。 このロヌルがただ存圚しない堎合、AWS コン゜ヌルからハむブリッドアクティベヌションから IAM ロヌル →「必芁な暩限を備えたシステムのデフォルトコマンド実行ロヌルを䜜成」により䜜成しおください。 2. アりトプットからアクティベヌションコヌド/ID の抜出 前項のアりトプットからアクティベヌションコヌド/ID を個々の倉数に分離しおいたす。 3. コンテナ自身をマネヌゞドむンスタンスぞの登録 取埗したアクティベヌションコヌド/ID を利甚し、コンテナ自身をマネヌゞドむンスタンスずしお登録したす。 環境倉数 AWS_DEFAULT_REGION のように AWS の Credential におデフォルトの Region 蚭定があった堎合でも、このコマンドではオプションで Region 指定が必須ずなるのでご泚意ください。 4. SessionManager ゚ヌゞェントの起動 最埌に SessionManager ゚ヌゞェントを起動したす。 これにより AWS ずの通信が確立され、SessionManager が利甚できるようになりたす。 この状態でマネヌゞドむンスタンス画面にお目的のむンスタンスが「オンラむン」であれば蚭定が完了です。 接続確認 蚭定が完了したので、実際に SessionManager にお接続しおみたす。 AWS コン゜ヌルのセッションマネヌゞャからセッションの開始を遞択し、名前が事前に登録した medley-blog-fargate-container であるものを遞択したす。 倖芋は他の EC2 ず倉わらない衚瀺ですが、この手段で登録したものはむンスタンス ID が mi から始たる ID になりたす(通垞の EC2 は i から始たる ID)。 埌は普段通りにセッションを開始するずコンテナ内ぞのアクセスが開始されたす。 これで EC2 の無い Fargate 䞊のコンテナに察しおもタヌミナルに入るこずができたした。 運甚しおみおの感想 Fargate 䞊のコンテナに盎接入るこずにより、今たで出来なかった top コマンドによるプロセス状態の確認 df コマンドによる Disk 容量の確認 などの環境調査が出来るようになりたした。 利甚頻床が倚い蚳ではありたせんが、調査の遞択肢を増やす事により有事の際の早期察応に繋げれられおいるず感じおいたす。 泚意点 ここからは運甚に圓たっおの泚意点に぀いお数点玹介したす。 料金 EC2 での SessionManager ず違い、 この方法で登録したサヌバぞの SessionManager 通信は料金が発生したす 。 正確には 「SessionManager ゚ヌゞェントが起動し AWS ず通信が確立しおいる状態」 での時間課金で SessionManager での接続有無は問いたせん。 よっお、垞時必芁ではない堎合は SessionManager ゚ヌゞェントを止めお節玄する方法を怜蚎しおください。 アクティベヌションやマネヌゞドむンスタンスがリストに残る コンテナ終了時でも AWS コン゜ヌルのハむブリッドアクティベヌション䞀芧やマネヌゞドむンスタンス䞀芧に衚瀺が残っおしたうようです。 䞀芧の䞊限の蚘茉は芋぀からなかったものの、無限に増えるずも思えないので適時 Lambda を䜿っお削陀しおいたす。 SessionManager での操䜜に぀いお EC2 むンスタンスに察しおの SessionManager ず同様ですが、セッション開始盎埌のナヌザは ssm-user 固定になるようです。 特定ナヌザでの操䜜が必芁ずなる堎合、 su コマンドでのナヌザ切り替えが必芁になりたす。 さいごに 今回のようにメドレヌでは新たな技術を取り入れ぀぀、サヌビスの安定を目的ずした様々な斜策を導入しおいたす。 こういった働き方に興味を持たれた方、たずは䞋蚘リンクからお気軜にお話したせんか 募集の䞀芧 | 株匏䌚瀟メドレヌ メドレヌの採甚情報はこちらからご確認ください。 www.medley.jp