ASSIGNのフィード

https://zenn.dev/p/assign

アサインは「人」と「技術」の力で、若手ハイエンド向けのキャリア支援サービスを提供しています。 転職サイト『ASSIGN』は、長期のキャリア形成をサポートするために、キャリア実現に欠かせないパーソナライズされた情報へのアクセスを容易にしています。技術の力を最大限活用し、ユーザーへの

フィード

記事のアイキャッチ画像
Next.js × Hono × モノレポで実践する「リアルオプション戦略」:初期の開発速度と将来の柔軟性を両立させるWebシステム設計
はてなブックマークアイコン 1
ASSIGNのフィード
はじめにASSIGN CTOの須永と申します。弊社では転職エージェントの支援品質の高度化・顧客価値の最大化を目指し、面談・選考管理、各種書類作成、求人マッチング、データ分析などの機能を持つ業務管理システムを内製で開発しています。昨年度からは新たに新卒就活支援事業を開始し、転職支援事業と同様に業務管理システムの開発プロジェクトを本格的に推進することになりました。この記事では、上記システムの設計で採用した「リアルオプション戦略」に基づく技術選定の背景と、その具体的な内容についてご紹介します。 プロジェクトにおける不確実性このプロジェクトには、いくつかの大きな制約や考慮すべ...
2日前
記事のアイキャッチ画像
Adjust RawデータをBigQuery経由でスプレッドシートに自動連携する仕組み
ASSIGNのフィード
はじめに本記事では、AdjustのrawデータをBigQuery経由でスプレッドシートに自動連携する仕組みを紹介します。「マーケチームから広告の学習データが欲しいと言われたけど、どうやって整備すればいい?」そんな悩みを持っている方に役立つ内容になればと思います。 背景マーケティングチームからの具体的な依頼は、「ユーザーがどの広告経由で、アプリ内でどんな行動をしたか」という時系列データ(rawデータ)を、Google広告の機械学習に利用したい、というものでした。マーケチームからの要件は以下の3点です。Google広告の学習に使える直近3ヶ月分の最新データがほしい1時...
7日前
記事のアイキャッチ画像
A/Bテスト理解のための統計学 〜 具体例から専門用語へ、段階的に理解する仮説検定
ASSIGNのフィード
はじめに弊社では、モバイルアプリの会員登録導線の中でA/Bテストを実施しています。会員登録時の質問の順番を入れ替えることで、登録率に変化が出るのかを検証するためです。A/Bテストの結果を見てみると、以下のような内容が表示されていました。「結果が統計的に有意ではありません」これは一体どのような状態なのか、テストの結果を正しく理解するためにも、仮説検定について改めて勉強してみました。しかしいざ勉強を始めてみると、専門用語が多く、なかなかイメージがつかみにくいものだと感じました。また、自分の中では理解できても、他の人に伝えていくのが難しい内容だとも思いました。そこで、具体例...
21日前
記事のアイキャッチ画像
Android APIアップデートで詰まって気づいた、Flutterアプリのアーキテクチャ理解の重要性
ASSIGNのフィード
はじめにFlutterアプリケーションのAndroid API Level 35への移行作業において、想定以上に複雑な問題に直面し、当初は単純なバージョン更新作業と考えていたものが、最終的にはビルドシステム全体の理解を必要とする大規模な作業となりました。マルチプラットフォーム開発の魅力はネイティブ側をあまり意識せず動作してくれる抽象化にありますが、その抽象化層で問題が発生した際、影響範囲が広範囲に及ぶため、独力で解決するにはFlutterのマルチプラットフォームアーキテクチャへの深い理解が不可欠であることを痛感しました。本記事では、私の体験を元に移行作業で直面した具体的な問題と...
22日前
記事のアイキャッチ画像
Next.js15へのアップデート手順と破壊的変更の背景
ASSIGNのフィード
はじめに先日、社内プロダクトのフロントエンド基盤を Next.js v14 から v15 にアップデートしました。本記事では、実施した進め方の全体像と、Next.js 15の破壊的変更の背景をご紹介します。 Next.js 15へのアップデートの背景対象アプリは、社内エージェントの生産性向上や、採用企業の活動を高度化するための Web システムです。候補者検索、スカウト送信、メッセージ送受信などの機能を備え、Next.js 14/React 18系で運用していました。しかし課題として、Next.js のデフォルトキャッシュや状態管理設計に起因する「使いづらさ」がありました...
1ヶ月前
記事のアイキャッチ画像
Claude CodeのHooksでSlackに会話内容を通知する
ASSIGNのフィード
はじめに株式会社アサインでプロダクトエンジニアとBizDevをしている坂井です。Claude CodeのHooks機能を使いAIからの返答内容をSlackに自動通知する仕組みを作成したので紹介します。こんな感じでslackの指定したチャンネルに投稿してくれます。Claude Code Hooksとは何かを知りたい方はこの記事が参考になるので、そちらをご覧ください。簡単に言うと、Claude Codeの特定のアクション(応答完了時、Tool使用時、通知発生時)にシェルコマンドを実行することができる機能です。https://dev.classmethod.jp/articl...
1ヶ月前
記事のアイキャッチ画像
検索条件の卒業年次を動的に計算して定数管理を不要にする設計
ASSIGNのフィード
はじめにASSIGNでは、新卒就活生向けアプリ 「ASSIGN新卒」 を Flutter / Dart で開発しています。今回、新機能として 「募集機能」 をリリースしました。募集機能は、インターンや新卒採用に関する募集情報を学生が検索・閲覧できる機能です。本記事では、この募集機能の開発において工夫した、検索条件の卒業年次を動的に計算して定数管理を不要にする設計について紹介します。 実現したいこと募集機能では、募集対象の卒業年次を管理する必要がありました。実現したいことは以下の通りです。募集カードに対象の卒業年次を表示(例:26卒)募集一覧を絞り込む検索条件として...
1ヶ月前
記事のアイキャッチ画像
Tailwind CSS v4アップデートのリアルな実務課題と対策
ASSIGNのフィード
はじめに株式会社ASSIGNでWebフロント開発を担当している中水です。先日、弊社で開発しているプロダクトでTailwind CSS v4へのアップデートを実施しました。v4が提供する新機能に期待してアップデート作業に取り掛かりましたが、いざ進めてみると、いくつかの予期しない問題に直面しました。実プロダクトでのv4アップデート事例は自分が調べた範囲では見当たらなかったため、これからv4への移行を考えている方にとって少しでも参考になる情報をお届けできればと思います。 アップデートの背景今回、v4へのアップデートに踏み切った理由は、主に2つの大きなメリットを享受するためです...
1ヶ月前
記事のアイキャッチ画像
Vibe Codingならぬ、Vibe Slidingのススメ(?)
ASSIGNのフィード
はじめに今回は vibe codingならぬvibe sliding に挑戦してみました(slideにスライドを作るという意味はない気がするが)。要するに、AI エージェントにスライド作成を任せるという試みです。結論から言うと、想像以上にリッチなスライドを簡単に作ることができました。この記事ではvibe slidingで試した中で気づいたSlidevの紹介やAIとの相性の良さなどについて紹介します。利用したAIツールはClaudeCodeでモデルはOpus 4.1です。 成果物実際に作成したスライドはこちら。 スライドhttps://vibe-sliding.ver...
1ヶ月前
記事のアイキャッチ画像
Prismaのスキーマファイルを分割するのじゃ
ASSIGNのフィード
はじめにPrismaのスキーマファイルを分割しました。Prismaの標準機能としてmulti file schemaがサポートされており、この機能を利用しました。ナレッジをご紹介します。 分割の背景弊社のバックエンドはモジュラモノリスな作りになっており、複数のプロダクトのテーブル設計が一つのスキーマファイルで管理されていました。それぞれのプロダクトが機能改修を行うたびにスキーマファイルは巨大化し、分割前時点で数千行にも及んでいました。この状況により大きく2点の課題が発生していました。1点目は、プロダクト間のコンフリクトです。複数のプロダクトがそれぞれ独自に同じファイルを編...
1ヶ月前