フラクショナルCTO
フルタイムで採用することなく、シニアレベルの技術リーダーシップを。開発の手だけでなく、方向性を必要とするチームのために。
- アーキテクチャとテクノロジー戦略
- ロードマップ、内製か購入かの判断、コスト管理
- 採用、コードレビュー、チームのメンタリング
すべての案件は、同じ問いから始まります。何を実現したいのか、そして何がそれを阻んでいるのか。私たちのクライアントの多くは、現実の締め切りと制約を抱え、ソフトウェアを入れ替える間も業務を止められません。だからこそ、仕事は請求時間ではなく、お客様が求める成果を軸に設計します。
ご依頼いただく方法は3つあります。多くのお客様は1つから始め、やがて別の形態へと広げていきます。
フルタイムで採用することなく、シニアレベルの技術リーダーシップを。開発の手だけでなく、方向性を必要とするチームのために。
初日から成果を出し、参画前よりもチームを強くして去るシニアエンジニアを、すぐにチームへ投入します。
ビジネス分析とディスカバリーによって、大まかなコンセプトを、スコープとコストが明確で実現可能な計画に落とし込みます。
アーキテクチャ、スプリント計画と見積もり、ディスカバリーとロードマップ策定、エンジニアリング標準、.NET MAUIとXamarin移行、Bluetooth LEとバックグラウンド実行、モダン.NET、AIに関するプライベートワークショップ。お客様自身のコードベースをもとに構成し、プロジェクトファイルに記載されているライブラリを書いた本人が講師を務めます。
ほとんどのAIプロジェクトは、モデルが問題になるずっと前に行き詰まります。必要なデータがデバイス上やレガシーシステムの中にあったり、どこからもクエリできない形式だったりするのです。私たちは、データが生まれる場所から、アシスタントが安全に利用できる地点まで、その道筋全体を手がけます。
地味だけれど欠かせない半分。データが生まれる場所から、モデルが参照できる場所まで、途中で失うことなく届けます。
コピー&ペーストではなく、意図的に設計された形で自社システムをアシスタントに公開します。何を参照し、何を実行できるかの境界を明確にしたうえで。
ユーザーが覚えておかなければならない新しいタブではなく、すでに開いているアプリの中に、アシスタント、音声、自動化を組み込みます。
失敗の原因がテクノロジーであることはまれです。誰も効果を測定しなかった展開、行くべきでない場所へ流出したデータ、誰も責任を負わないままモデルに任されてしまった業務プロセス。以下は、すべてのAI案件で私たちが守っているルールです。
コストを実際に測定できる1つのワークフローで効果を実証してから、範囲を広げます。思いつきでの全社展開こそ、AI予算が打ち切られる原因です。
何が社外のネットワークに出るのか、ベンダーが何を学習に使ってよいのか、規制対象のデータをどこに置いてよいのか。最初のプロンプトを送る前に、意図的に決定し、文書化します。
お金、安全、顧客に関わるものは必ず人が承認し、誰が何を決めたかをシステムが記録します。AIが下書きし、御社のチームが承認します。
御社の実際の事例に照らして評価するため、顧客が気づく前に精度を把握できます。また、モデルの挙動が変わり始めたときにも気づけます。
モデルは交換可能な部品です。資産となるのは御社のデータ、ツール、評価の仕組みであり、次に市場が動いたときにも持ち運べる状態を保ちます。
自動化すべきでないプロセスもあれば、より良い画面を作るほうが安く解決できる課題もあります。別の手段に費用を払っていただく前に、そうお伝えします。
まず、すでに保有しているデータ、捨ててしまっているデータ、そして事業にとって重要な問いに答えるためにモデルが実際に必要とするデータを簡単にレビューします。通常は2週間ほどで完了し、費用を見積もれる計画をお渡しします。多くの場合、「最初のフェーズはAIではなくデータ基盤の整備だ」という有益な結論が得られます。
あえて絞り込んだリストです。モバイル、コネクテッドデバイス、そしてそれらをつなぐクラウドサービス。いずれも、課題に取り組む際に本当に頼りにしていただける分野です。
.NET MAUI、iOS、Androidの本番アプリ開発と、XamarinからMAUIへの移行。多くのチームがつまずくバックグラウンド処理、オフライン対応、ライフサイクル管理まで対応します。MAUIの立ち上げ当初から、Microsoftの.NET MAUIチームと協力しています。
BLEのセントラルとペリフェラル、デバイスフリート、ハードウェア連携。業界で使われているライブラリを書いたのは私たちです。
通信環境が保証されない場所で働く車両やスタッフのための、位置情報トラッキング、ジオフェンス、テレマティクス。
Apple Watch、Wear OS、CarPlay、Android Auto向けのアプリで、モバイルアプリを手首とダッシュボードへ広げます。縮小したスマートフォン画面ではなく、ひと目で分かる表示や音声操作を前提に設計します。スマートフォンとウォッチの連携には、私たちが開発したライブラリを使用しています。
デバイスを支えるASP.NET CoreのサービスとAPI。スムーズにデプロイでき、低コストで運用でき、フリート全体が一斉にデータを送ってきても崩れない設計です。
レガシーな.NET Frameworkや老朽化したモバイルのコードベースを、開発を止めることなく最新のプラットフォームへ移行します。
トラック、倉庫、建設現場、病院のフロア、コールセンターの待ち行列など、ソフトウェアが現実の現場で通用しなければならない業務に25年間携わってきました。
XamarinからMAUIへの移行は当社の得意分野であり、.NET MAUIそのものも同様です。MAUIの立ち上げ当初からMicrosoftの.NET MAUIチームと協力しており、当社のライブラリは現在のMAUIアプリを支えるエコシステムの形成にも貢献してきました。
Xamarinのサポートは2024年5月に終了しました。こうした移行が停滞する原因は、UIの変換であることはほとんどありません。依存関係のリストです。Bluetooth、バックグラウンドジョブ、位置情報、プッシュ通知、ストレージ、同期を支えていた放置されたプラグインを、チームの誰も本番環境で使ったことのない何かに置き換えなければなりません。その評価に何か月もかかり、そこにリスクが潜んでいます。
モバイルアプリのどの部分についても、「選択肢のリストをお渡しするのでご自身で調査してください」ということはありません。旧アプリのどこを選んでいただいても、答えはすでに用意されています。
既存ソリューションの依存関係とリスクを洗い出します。そのまま移行できるもの、同等の代替がないもの、そもそも移行すべきでないもの。その結果を、費用を見積もれる段階的な計画としてお渡しします。移行はロードマップを凍結することなく、プラットフォームごとに並行して進めます。
MAUIの案件がすべて移行というわけではありません。すでに移行を終えたチームも支援しています。パフォーマンスや起動時間、OSアップデート後に動かなくなったバックグラウンド処理、ハンドラーやプラットフォームコード、実機でしか再現しないクラッシュ、そして.NETの新しいリリースへの追従。レビュー、手ごわい課題の解決、あるいは御社チームと並ぶシニアMAUIエンジニアとして、ぜひご依頼ください。
レガシー.NETは、ひとつの問題ではありません。WebFormsアプリ、WCFサービス層、WinFormsクライアントは、それぞれまったく異なる理由で行き詰まります。そして見積もりの精度は、そのスタックを実際に経験してきた人の力量で決まります。私たちは、誰も開きたがらないVB.NETのものも含め、そのすべてで本番コードを書いてきました。だからこそ、アセスメントはお客様が費用を負担する調査フェーズではなく、経験に基づいて行えます。
ページライフサイクル、ViewState、サーバーコントロールには同等のものがないため、マークアップは実際に書き直すことになります。しかし、その下のビジネスロジックは通常そのまま使えます。この2つを切り離すことが、作業の大半を占めます。
バインディング、ビヘイビア、SOAPの契約はそのままでは移行できません。呼び出し元が変更できない外部の組織である場合は、CoreWCFで契約を維持したまま、その裏側をすべて移行します。
移行先はありません。ランタイムはすべてのブラウザから姿を消しています。まずは、そのアプリケーションが本当に何をする必要があったのかを整理するところから始めます。
データ層は、単純な移行が高くつくポイントです。クエリ変換、トランザクション、遅延読み込みの挙動はすべて異なり、その違いはコンパイル時ではなく本番環境で表面化します。
このリストの中で最も機械的に移行できるものです。本当の作業はコントローラーではなく、ホスティング、構成、依存性注入、ミドルウェアパイプラインにあります。
どちらもモダン.NET上で動作するため、書き直しになることはまれです。障害となるのは、サポートが終了したサードパーティのコントロールスイートとCOM相互運用であり、私たちはまずそこから調べます。
共有ライブラリこそが、新旧のシステムを並行稼働させる鍵です。まずマルチターゲット化することが、このリストの他のすべてを進める突破口になるのが一般的です。
地味ですが、これがあるからこそ他の作業を再現可能にできます。移行が完了するずっと前から効果が出るため、最初に取り組むべきことである場合も少なくありません。
このリストのどれも、一度に置き換えることはしません。うまくいくのはストラングラーパターンです。新しいスタックを旧システムの横に立ち上げ、同じURLの裏側で少しずつ機能を移し、旧システム側に何も残らなくなるまで両方を並行稼働させます。計画上は遅く見えますが、私たちが見てきた中で最後までやり遂げられたのは、この方法だけです。
当サイトでは、どのページがより充実させる価値があるかを把握するためにGoogle Analyticsを使用しています。同意いただくまでは無効のままで、当サイトの機能がこれに依存することはありません。詳しくはプライバシーポリシーをご覧ください。