TalentX Tech Blog

フィード

記事のアイキャッチ画像
aws-sdk-go-v2で試すAWS Bedrockナレッジベース:Retrieve & RetrieveAndGenerate API活用
TalentX Tech Blog
TalentXの籔下です。 TalentXでは生成AIを用いた機能開発や業務効率化を進めており、その取り組みの中でAWS BedrockのナレッジベースのAPIであるRetrieve APIとRetrieveAndGenerate APIを、aws-sdk-go-v2経由で試してみました。 本記事では、S3にアップロードしたPDFの読み込み方法、事前に用意したベクトルデータベースを利用したRAG(Retrieval Augmented Generation)の使い方などを紹介します。 API概要 Retrieve API 実行してみる Retrieve APIの実装 RetrieveAndGe…
16日前
記事のアイキャッチ画像
Amazon BedrockのConverse APIにてPDFを利用する時の注意点
TalentX Tech Blog
MyTalentという採用MAサービスの開発を担当している、バックエンドエンジニアの樋口です。 今回はAmazon BedrockのConverse APIにてPDFを扱う際に、期待していた動作と違う部分があったので紹介します。 使用したモデルはAnthropic Claude 3.5 Sonnetで、2024年11月29日に動作確認した内容です。 はじめに - Converse APIのドキュメント機能について Amazon BedrockのConverse APIでは、Knowledge Baseを使用せずに各種ドキュメントファイル(PDF、Excel、Word等)を用いたチャットが可能で…
1ヶ月前
記事のアイキャッチ画像
Inbound Parse Webhookを使用してシステムでメールを受信する
TalentX Tech Blog
はじめまして、TalentXの内之丸です。 TalentXではバックエンドの開発を行っています。 今回はSendGridの機能であるInbound Parse Webhookを使用して、システムでメールを受信する方法について、ご紹介いたします。 Inbound Parse Webhookとは Inbound Parse Webhookとは、特定ホストへのメールをSendGridが受け取り、本文、添付ファイル、ヘッダなどの情報をパースし、指定されたURLへPOSTする機能です。 Myシリーズでは、人事、候補者間のメッセージやりとりにて、候補者からの返信メッセージをMyシリーズ画面で表示するために…
2ヶ月前
記事のアイキャッチ画像
TSConfigの厳格化対応の利点と進め方
TalentX Tech Blog
はじめに TSConfigの厳格化とは 当時のプロダクトの背景 対応方針 対応した結果 まとめ 最後に 参考 はじめに はじめまして、フロントエンドエンジニアで最近はMyReferプロダクトの開発を担当している佐久間です。 MyReferフロントエンドの技術刷新の取り組みの一環としてTypeScriptの設定(TSConfig)を厳格化しました。 TSConfigの厳格化が必要な理由や、その対応プロセス、直面した課題、そして学んだことについて共有します。 TSConfigの厳格化とは TypeScriptには多くの設定オプションがありますが、中でもstrictオプションは、型チェックをより厳密…
3ヶ月前
記事のアイキャッチ画像
golangci-lintとGitHub Actionsでlinterの新たなissueのみを通知する
TalentX Tech Blog
MyTalentという採用MAサービスの開発を担当している、バックエンドエンジニアの樋口です! MyTalentではGo言語でバックエンドの開発を行っています。サービス運用開始から2年が経過したタイミングで、新たなバックエンドエンジニアが増えても一定のコード品質を保つために、golangci-lintを導入しました。 この記事では、golangci-lintを導入した際に発生した問題と解決方法について記載します。これからgolangci-lintの導入を検討している方の参考になれば幸いです。 golangci-lintとは golangci-lintはGo言語用のlinter実行ツールです。 …
7ヶ月前
記事のアイキャッチ画像
モバイルアプリをSwift、Kotlinから、Flutterに移植した話
TalentX Tech Blog
はじめまして!バックエンドエンジニアで、主にMyReferプロダクトのバックエンド開発を担当している政家です。 MyReferプロダクトでは、従業員の方がリファラル活動を行いやすくするために、Webブラウザ版だけでなくモバイルアプリも提供しています。 〜モバイルアプリイメージ〜 そのモバイルアプリはこれまで、iOSはSwift、AndroidはKotlinで開発をしてきましたが、 昨年2023年7月、Flutterへの移植を行い、リリースしました。 今回は、Flutterに移植した背景や、どのようにFlutter移植を進めていったのか、移植後に感じているメリットやデメリットに関してご紹介したい…
8ヶ月前
記事のアイキャッチ画像
TalentXにおけるフロントエンド組織の役割
TalentX Tech Blog
はじめまして!フロントエンドエンジニアで、Myシリーズ管理の開発を担当している髙木です。 2023年11月に TalentX に入社し、約半年が経ち、慣れてきたこの頃、 当社の開発体制の中でフロントエンドチームは主にどんな領域を担当しているのか、社歴の浅いフレッシュな目線で感じたことなど含めフロントエンドのご紹介させていただきます! はじめに 開発体制とフロントエンドの役割 フロントエンドの主な担当領域 技術スタックの選定 UI/UXの設計に基づくフロントエンドの開発 フロントエンドとバックエンドの統合、テスト フロントエンド専任の特徴 まとめ 最後に はじめに TalentX の開発でフロン…
8ヶ月前
記事のアイキャッチ画像
Stoplight と OpenAPI generator でAPI開発をより便利にする
TalentX Tech Blog
はじめまして、TalentX, EMの岸本です。 TalentXでは開発業務の他、バックエンドチームのマネジメントを担当しています。 昨今のAPI開発において、OpenAPIを用いた仕様の定義は一般化していると思いますが、 その運用方法に関して、TalentXで工夫している点などを踏まえてご紹介させていただきます。 スプレッドシートからの脱却 私が入社した数年前のタイミングでは、APIの仕様はスプレッドシートで管理されていました。 その際の課題として バージョン管理が難しく、適切なロールバックや変更タイミングの把握ができない。 Slack等でのコミュニケーションになってしまう、変更場所の把握が…
9ヶ月前
記事のアイキャッチ画像
TalentX内製UIライブラリとStorybookでデザインシステムの堅牢化
TalentX Tech Blog
はじめまして、フロントエンドエンジニアの神長です。 普段はフロントエンド組織とMyシリーズのフロントエンド技術のリードをしています。 現在TalentXではMyシリーズの開発にあたり、ボタンや入力ボックスなど様々なコンポーネントをtalentx-uiというUIライブラリとしてStorybookで管理しています。 なぜそのような運用に至ったのかをご紹介していきます。 なぜUIライブラリを自社で作る必要があった? 2023年2月に複数のプロダクトをMyシリーズとして共通PF化した直後、それぞれのプロダクトをあたかも同じプロダクトのようにシームレスに行き来できるUXにするためにどのプロダクトも同じよ…
10ヶ月前
記事のアイキャッチ画像
QAエンジニアがいない会社に入社してやったこと、まだやれてないこと
TalentX Tech Blog
はじめまして。2023年2月に入社したQAエンジニアの大出です。 前職はフリマアプリを開発する会社で約8年QAエンジニアとして働いていて、TalentXで初めてtoBのサービスのQA業務を行うことになりました。 入社前の状況 やったこと 新規開発の検証 テストプロセス改善 テスト計画の作成 ドキュメントの整理 バグチケットの整理 ドッグフーディング 採用 まだやれてないこと 終わりに TalentXは2015年にMyReferというサービスをリリースして以来、2023年2月に自分が入社するまで社内にソフトウェアテストを専門に行うメンバーは在籍しておらず、開発エンジニアが自分達で全てテストを行っ…
10ヶ月前
記事のアイキャッチ画像
Gormを使用する際に向き合うMySQLプリペアドステートメントの制限と解決策
TalentX Tech Blog
はじめまして、バックエンドエンジニアの穴原です。 普段はMyTalentという採用MAサービスの開発を担当しています。 MyTalentのバックエンドはGoを利用しており、データベース操作にはGormを利用しています。 GormでMySQLを操作する場合、発行されるクエリはプリペアドステートメントを利用して作成されます。 MySQLのプリペアドステートメントのプレースホルダーの数は65535個までと決まっており、変更もできません。 そのため、大量のデータを操作しようとするとこの制限に引っかかり、エラーとなります。 対策としては複数回に分けて処理を行うか、安全な型に限りプレースホルダーを利用しな…
1年前
記事のアイキャッチ画像
デプロイ頻度を改善した話
TalentX Tech Blog
はじめまして!バックエンドエンジニアの中山です。 今回はMyReferチームでFour Keysの1つであるデプロイ頻度を改善した話をご紹介いたします。 Four Keysとは Four Keysの導入 改善前のデプロイ頻度 なぜデプロイ頻度を改善するのか? とにかくまずは自動化 デプロイの自動化 デプロイの並列実行 リリースノートの自動生成 デプロイ頻度と変更のリードタイムの自動集計 改善結果 リリースフローを整備する 小さなPRを作る リリースフロー 改善結果 〜脱・定常リリース〜 まとめ 今後の展望 最後に Four Keysとは Four Keysとは、Google社が提唱するソフトウ…
1年前
記事のアイキャッチ画像
TalentX Tech Blogをリスタートします
TalentX Tech Blog
はじめに TalentXでCTOをしている籔下です。 3〜4年ほど前にtech blogを数本書いたまま更新ができていなかったのですが、この数年でエンジニアの人数も3〜4倍ほどになり、新しいプロダクトのリリースや社名変更、インフラのアーキテクチャリプレイスなども行い、大幅にアップデートしています。 これらのアップデートにとどまらず、今後も様々なチャレンジを控えており、これからもっと発信していきたいということでtech blogを再開することにしました。 新装第一弾ということでこの3〜4年の取り組みなどをまとめてTalentXのプロダクト開発の現状を伝えていきたいと思います。 開発組織 体制 リ…
1年前
記事のアイキャッチ画像
まじめにスクラム開発に取り組みはじめた話
TalentX Tech Blog
Tech Leadの籔下(@ybalexdp)です。MyReferではスクラム開発を導入しており、これまでスプリントプランニングでざっくり誰がこの一週間何をやるのかを決めていましたが、スプリント期間中に終わらないチケットも散見し、そもそもスプリントで予定のなかったチケットをやったり、ほぼ機能していませんでした。 一度着手したものの優先度が落ちたタスクのステータスが「進行中」から放置され、延々とスプリントバックログに残り続けるみたいな状況もあり、現在の開発がオンスケなのか、組織としてどれくらいの規模の開発を1週間にこなせるのかなどの状態が見えづらい状況でした。 また現在エンジニアチームが総勢20…
5年前
記事のアイキャッチ画像
バックエンドAPI開発にスキーマ駆動開発を導入している話
TalentX Tech Blog
Tech Leadの籔下(@ybalexdp)です。本記事では現在MyReferが取り組んでいるスキーマ駆動開発に関して紹介します。 導入に至った経緯 現在MyReferではフレームワークにFuelPHPを採用し、Hack1でプロダクトを開発しています。 しかし、HHVM2がPHPのサポート終了を発表したため、FuelPHPを捨てHackでいくか、HHVMを捨てPHP7でいくか、他の言語にリプレイスするか選択に迫られました。さらにFulePHP自体も開発が過疎化している状況でLTSも定められておらず、PHP7にした場合、LaravelなどLTSが定まっているフレームワークに変更するなどの検討も…
5年前
記事のアイキャッチ画像
gitlab runnerをAmazon EC2スポットインスタンス+docker in dockerで実現する
TalentX Tech Blog
はじめましてMyReferでエンジニアとして主にバックエンドとインフラを担当している籔下です。MyReferのエンジニアチームにてtech blogを始めることにしました。今回は、MyReferで動かしているgitlab runnerの構成などについて紹介します。
6年前