FURYU Tech Blog - フリュー株式会社
https://tech.furyu.jp/
フリュー株式会社の開発者が技術情報を発信するブログです。
フィード

Figma Code Connect を進めて見えてきた改善ポイント
FURYU Tech Blog - フリュー株式会社
こんにちは。ピクトリンク開発部 サイトチーム に所属しています松本です🐹 はじめに 昨年のアドベントカレンダーにて、『Figma Code Connect がなかなか進まない話』というタイトルで記事を書きました。 tech.furyu.jp今回の記事では、その後少しずつ整備を行い実際にCode Connectを進め始めて見えてきた改善ポイントを実作業をベースに紹介します。 前提条件 Figma Dev Modeが契約されていること Figmaデスクトップアプリがインストールされていること 事前準備 MCPサーバーを設定します。Figma公式のYoutubeチャンネルに投稿されている、『Figm…
1ヶ月前

運用スクリプトのお作法:argparseとバリデーションで安全なスクリプトを作る
FURYU Tech Blog - フリュー株式会社
こんにちは、ピクトリンク開発で運用保守を担当している藤本です。 はじめに 社内運用保守業務で、S3から特定の大量オブジェクトを調査用に取得する必要がありました。 最初は「動けばいい」で書き始めましたが、レビューを経て「プロ仕様」に進化していった過程を紹介します。 1. 1,000件の壁を越える:boto3 Paginatorの活用 S3バケット内に大量のファイル(数千〜数万件)がある場合、通常の list_objects_v2 リクエスト1回では最大1,000件までしか取得できません。 Before: # 1,000件を超えると古いファイルしか取れない response = s3.list_o…
1ヶ月前

AWS SSO環境のDocker運用でハマった話 〜miseとローカル実行でAD管理ツールを救う〜
FURYU Tech Blog - フリュー株式会社
はじめに こんにちは、ピクトリンク開発で運用保守を担当している藤本です。 今回、Active Directory(AD)のアカウント運用を効率化するために、AWS Secrets Managerからパスワードを取得してLDAP操作を行うPythonスクリプトを開発しました。 当初は開発環境のポータビリティを考えてDockerで構築していましたが、AWS SSOの認証情報共有において、WSL環境とMac環境で挙動が異なるという「環境の壁」にぶつかりました。 本記事では、Dockerに固執するのを辞め、miseを活用したローカル実行に切り替えて課題を解決したプロセスを紹介します。 直面した課題:M…
1ヶ月前

ONNX形式のMoveNetをC++で動かすまで[姿勢検出]
FURYU Tech Blog - フリュー株式会社
まず最初に 最近キャンプにはまっている、フリューでプリントシール機開発を行っている画像処理担当の三上です。 以前のブログでは、ONNX RuntimeをC++で組み込む方法をご紹介しました。 tech.furyu.jp 今回はその続編として、プリントシール機でも使用している ONNX形式のMoveNetモデルを紹介し、姿勢検出の実装手順を解説します。 特におすすめしたい方 C++で機械学習モデルを動かしたい方 姿勢推定に興味がある方 ONNX形式のモデルを活用したい方 フリューのソフトウェアエンジニアの取り組みに関心がある方 ONNX形式のMoveNetをC++で動かす手順を理解し、簡単な姿勢…
1ヶ月前

コスパ良くフロントエンドビルド改善: webpackからRspackへの移行事例
FURYU Tech Blog - フリュー株式会社
自社のプロダクトについて、webpackからRspackに移行したことでフロントエンドビルド時間が大幅に短縮した事例を紹介します。
2ヶ月前

フロントエンジニアがUI/UX設計をするときに考えている10のこと(※個人の感想です):後半
FURYU Tech Blog - フリュー株式会社
はじめに こんにちは!ピクトリンク事業部開発部の今川です。 こちらの記事はフロントエンジニアがUI/UX設計をするときに考えている10のこと(※個人の感想です):前半の続きになります。 前半ではUI設計の際に気をつけていることを5つまとめました。後半では、フロントエンジニアがどんなことを考えながらUX設計をしているかを言語化してみようと思います。 はじめに 大量の情報をいかに見やすく、限られた画面に収めるか 6. 情報の整理・取捨選択 7. 情報の表示の仕方 8. 文字じゃないと表現できない? 判断や迷いを減らせているか 9. ユーザーが「今どの状態にいるか」を把握できるか 10. 操作や判断…
2ヶ月前

Amazon Linux 2 EOL をきっかけに Rundeck を ECS 化してハマった話(暗号化エラーと時刻・通知の環境差異編):その③
FURYU Tech Blog - フリュー株式会社
こんにちは、ピクトリンク開発で運用保守を担当している藤本です。 ※この記事は、前回の記事 Rundeck ECS 化:SSH / resources.xml / Network Error 編 の続きです。 今回は、リプレース作業中に発生した「既存 EC2 環境の破壊」と、新環境での「ジョブ実行・通知のトラブル」について、その原因と対応をまとめます。 1. 既存 EC2 Rundeck が 500 エラーで悲鳴を上げた話 新しく構築した ECS 側での動作確認のため、ブラウザからジョブを作成・実行したところ、思わぬ副作用が出ました。既存のEC2 Rundeckにアクセスすると500 エラー が…
2ヶ月前

フロントエンジニアがUI/UX設計をするときに考えている10のこと(※個人の感想です):前半
FURYU Tech Blog - フリュー株式会社
はじめに こんにちは!ピクトリンク事業部開発部の今川です。 今回は、フロントエンドエンジニアとして普段どんなことを考えながらUI/UX設計をしているかを、自分なりに言語化してみようと思います💪 前半のこの記事ではUIに関する5項目をまとめます! はじめに UI/UX設計ってデザイナーさんの仕事とちゃうん? デザインガイドラインを作る 1. 色の意味 2. 文字や要素の大きさ 3. 余白を揃える 再利用性を考える 4. パーツ分け 5. 同じ操作が同じ見た目になっているか 後半につづく! UI/UX設計ってデザイナーさんの仕事とちゃうん? 弊社では、お客様に使っていただくサービスの開発には基本的…
2ヶ月前

Godot(C#)のExport属性とUnityのSerializeField属性を徹底比較!!
FURYU Tech Blog - フリュー株式会社
はじめに 背景 前提知識 Godotとは SerializeField属性とは 比較 プリミティブ型・String型 ゲームエンジン組み込み型 配列とコレクション プロパティ Enum アクセス修飾子 static・const・readonly インターフェース Scene(Unity・Godot)・Prefab(Unity) GameObject(Unity)・Node(Godot) Asset等 自作クラス グループ化 まとめ 所感 はじめに こんにちは! プリントシール機のソフトウェア開発を担当している小川です。 今回の記事ですが、タイトル通り、Godot(C#)のExport属性とUn…
2ヶ月前

Amazon Linux 2 EOL をきっかけに Rundeck を ECS 化してハマった話(ノード・SSH編):その➁
FURYU Tech Blog - フリュー株式会社
こんにちは、ピクトリンク開発で運用保守を担当している藤本です。 ※この記事は、前回の記事 Amazon Linux 2 EOL をきっかけに Rundeck を ECS 化してハマった話(環境変数編):その① の続きです。 前回の記事では、ECS コンテナ内で Rundeck を起動する際の環境変数や entrypoint の設定でハマったポイントをまとめました。 その➁では、SSH 接続・ノード定義・Network Error などのハマりどころを紹介します。 ノード定義と Network Error の問題 ECS 上で Rundeck を起動したとき、resources.xml に定義し…
3ヶ月前

Amazon Linux 2 EOL をきっかけに Rundeck を ECS 化してハマった話(環境変数編):その①
FURYU Tech Blog - フリュー株式会社
こんにちは、ピクトリンク開発で運用保守を担当している藤本です。 今回は、Rundeck を EC2 から ECS に移行する際にハマったポイントをまとめます。 その①では、環境変数・CDK・entrypoint 周りのトラブルと解決策を紹介します。 1. はじめに Rundeck はこれまで Amazon Linux 2 の EC2 上で運用していました。しかし、Amazon Linux 2 は EOL(サポート終了)を迎える予定で、OS アップデートやサポート継続の観点から見直しが必要になりました。 単純に EC2 を作り直して OS を入れ替える方法もありましたが、 OS バージョンアップ…
3ヶ月前

テストの知見が全くない2年目iOSエンジニアが、マイページのユニテカバレッジ率を0%から90%以上に引き上げた話
FURYU Tech Blog - フリュー株式会社
この記事はフリューAdvent Calendar 2025 25日目の記事です。 qiita.com ピクトリンク開発部でiOSアプリの開発を担当している牛尾です。フリューAdvent Calendar 2025の最終日を担当させていただきます。 今回は、ピクトリンクiOSのマイページにおける、ユニットテストのカバレッジ向上に向けた取り組みについてお話しさせていただきます。 テスト改善着手前の状態 テストピラミッドとは E2Eテスト 結合テスト ユニットテスト テストピラミッドの理想形とのギャップ 理想形に近づくために 進めていく上での課題 課題1:あれもこれもstatic 課題2:Mock乱…
4ヶ月前

Figma Code Connect がなかなか進まない話
FURYU Tech Blog - フリュー株式会社
🔔🎄メリークリスマス、イブ!🎄🔔こちらは、フリュー Advent Calendar 2025 24日目の記事です!🎅🎀 こんにちは。ピクトリンク開発部 サイトチーム に所属しています松本です🐹 ピクトリンクのフロントエンド開発を主に担当しています。今回はフロントエンドの改善活動として進めている、Figma Code Connect導入に関する記事を書きました✍️ はじめに 導入しよう、そうしよう 早速コネクト? 進まない!コネクト 整合と整理 未だ道半ば、コネクト さいごに はじめに みなさん!Figma Code Connect 使っていますか?? Figma Code Connect とは…
4ヶ月前

AIが書いたコード、誰がレビューするの?Claude Code Actionで解決した話
FURYU Tech Blog - フリュー株式会社
はじめに こんにちは。 ピクトリンク開発部でWebアプリケーション開発を担当している西村です🧑💻 最近はAIの進歩が目まぐるしく、Claude CodeやCodexを使用してコードを書くことが当たり前の時代になりました。 開発効率が上がった実感はありますが、その一方で「このAIが書いたコード、プロジェクトのルールに合っているのか?」というレビューの悩みも増えてきました。 今回はClaude Code Actionを使って、PRを作成したら自動で開発方針をチェックしてくれる仕組みを構築したので、そのお話をしたいと思います。 なぜ自動レビューが必要になったのか AIがコードを書く時代の新しい悩み…
4ヶ月前

GA4×BigQuery:スキャン量を99%削減するテーブル設計
FURYU Tech Blog - フリュー株式会社
この記事はフリューAdvent Calendar 2025の21日目の記事となります。みなさまこんにちは。 プリントシール機やピクトリンクのデータ分析をしている堀江です。もう年末ですね~、2025年もたくさんのデータと向き合いました。 日々、ユーザーの行動データを分析してサービス改善に活かしているのですが、データ量が増えるにつれてある問題が大きくなってきました。そう、BigQueryの実行コストです。今日はGA4データの集計で行ったコスト削減について、実際にやってみた内容を共有します。 はじめに 分析環境 困っていたこと やったこと 1. テーブル設計のパターン 1-a. 頻出イベントに絞る(…
4ヶ月前

プリ30周年企画に合わせて、らくがき機能に新コンテンツを実装した話
FURYU Tech Blog - フリュー株式会社
こちらは、2025 Furyu Advent Calendar 20日目の記事です 🎄 はじめに こんにちは、ピクトリンクアプリの開発をしている nakase です。 2025年12月19日より、プリ30周年特別企画として「DEAR 令和&平成 ウチらの伝説プリ」が開催されており、 過去の人気機種でプリが撮れる、かなりエモーショナルな企画になっています。 www.furyu.jp アプリでもこの企画を盛り上げ、ユーザに楽しんでもらうべく らくがき機能に、30周年プリのコンテンツを追加することになりました。 本記事では、その開発の際にチームで行った工夫をいくつかご紹介できればと思います。 ※余談…
4ヶ月前

SES→S3→SNS→SQS→Step Functionsで作る「破綻しないメール処理フロー」実践記
FURYU Tech Blog - フリュー株式会社
フリューAdvent Calendar 2025 の17日目の記事となります。 こんにちは!フリュー株式会社 にぎやかし担当 森田です! 今回は たった1通のメールを処理するためにAWSをどう組み合わせてフローを作ったか そしてその中で気づいた「落とし穴と学び」について書きます。 📩 要件 複数アドレスでメールを受信したい 添付ファイルを抽出して保存したい 本文を解析して必要な情報を取り出したい 取り出した情報を DB に登録したい つまり メール受信 ⇒ 格納 ⇒ 通知 ⇒ 分解 ⇒ 登録 という流れを 安全・確実・再実行可能 にする必要があります。 🛠 最初に考えた構成 SES:メール受信…
4ヶ月前

ECSのメンテナンスイベントでタスクが復活しなかった話
FURYU Tech Blog - フリュー株式会社
この記事はフリューAdvent Calendar 2025の16日目の記事です! qiita.com こんにちは!フリューでピクトリンクというアプリの開発をおこなっている森兼と申します。 この記事では、ECSのインフラストラクチャメンテナンスイベント(AWS_ECS_TASK_PATCHING_RETIREMENT)によるタスク再起動をきっかけに、タスクイメージの運用を考える機会となった時のことをお話しします! 第一の事件 原因 対策 第二の事件 原因 対策 最後に 第一の事件 ある朝、AWSコンソールを確認すると、とあるECSタスクが夜中からずっと起動に失敗し続け、タスク数が0になっていまし…
4ヶ月前

Claudeを利用してテスト要項書から不具合対応チケットを生成する話
FURYU Tech Blog - フリュー株式会社
要項書のテスト結果から、Claudeに不具合チケットを作ってもらったら捗った話をします
4ヶ月前

Testcontainers で DynamoDB のインテグレーションテスト環境を作る
FURYU Tech Blog - フリュー株式会社
この記事はフリューAdvent Calendar 2025の13日目の記事となります。 はじめに フリュー株式会社で、ピクトリンクの開発に関わっている山根と言います。 今回は、DynamoDBを使用するTypeScriptアプリケーションのインテグレーションテストを、Testcontainers + DynamoDB Localで構築した方法を紹介します。 testcontainers.com docs.aws.amazon.com なぜモックではなくDynamoDB Localか DynamoDBへのアクセスをモックに差し替えればユニットテストは可能ですが、ConditionExpressi…
4ヶ月前

元エンジニア課長が、チームの「ボトルネック」にならないためにあえて手放した3つのこと
FURYU Tech Blog - フリュー株式会社
この記事はフリューAdvent Calendar 2025の7日目の記事となります。 はじめに フリュー株式会社 プリントシール機事業部で開発部門の課長をしている久島です。 バックエンドエンジニア上がりの課長として、現在は3つの異なる目的を持ったチームを見ています。 アドベントカレンダーの記事として、「この1年の取り組み」を書こうかとも思いましたが、ふとこの1年を振り返ったとき、私が最も意識し、そして最も葛藤したのは「いかにして自分がチームの邪魔(ボトルネック)にならないか」という点でした。 元エンジニアであるがゆえに、コードを見れば口を出したくなる。 しかし、課長である私が詳細に介入すればす…
4ヶ月前

ObsidianにKiro CLIを使ってメモをとる環境構築からバックアップまで
FURYU Tech Blog - フリュー株式会社
こんにちは フリューのピクトリンク開発をしているあわたです。 フリュー - Qiita Advent Calendar 2025 - Qiita6日目の記事になります。 Obsidianと生成AI(Kiro CLI/旧Amazon Q cli)を連携させて、自然言語でメモを作成・管理できる環境を構築してます。この記事では、Obsidianのデイリーノート設定、MCPサーバ設定、Kiro CLIの設定、そしてUnisonによるバックアップまでの全体構成を解説します。 構成概要 ┌─────────────────┐ │ Kiro CLI │ ← 生成AIインターフェース │ (AWS Bedro…
4ヶ月前

AIとバイブコーディングを実践して見えてくるもの
FURYU Tech Blog - フリュー株式会社
この記事は 2025 Furyu Advent Calendar の4日目の記事です! みなさん、こんにちは。 部署が色々変わって、今はプリントシール機事業部に所属している盛岡です。 みなさんはAIを使って開発を進めていますか? 世間では「バイブコーディング(Vibe Coding)」が広く話題になっていますが、私も実際に試してみたので、その雑感をまとめてみます。 経緯と今回の取り組み バイブコーディングを使って実際に成果物を作ってみた 現時点では “正しい使い方” は自分の中でも固まりきっていない ターミナルから指示を出す、アシスト型のAIツールを利用し、ゼロからプロジェクトを立ち上げ 「と…
4ヶ月前

AWSでOrganizationalUnitごとに利用料金を集計する環境を作成した話
FURYU Tech Blog - フリュー株式会社
この記事は フリューAdvent Calendar 2025 の2日目の記事です。 はじめに こんにちは、フリュー株式会社でピクトリンクの開発をしているまさおです👻 今日はAWSアカウントAのEC2インスタンスで動いているRundeckからアカウントBにあるLambdaを実行し、そのLambdaの中でOrganizationalUnitごとにAWSの利用料金を集計しようとした話をします。 今回はそこで必要なリソースをCDKで作成した部分のお話がメインで、集計するPythonコードの解説はほぼしません。 ざっくりとした構成はこのような感じ。 ざっくりとした構成図 アカウントA側は既にある環境を利…
5ヶ月前

エンジニア組織の職能要件を再定義した話
FURYU Tech Blog - フリュー株式会社
この記事は フリューAdvent Calendar 2025 の1日目の記事となります。 はじめに フリュー株式会社ピクトリンク開発部でエンジニアマネージャをしている佐々木です。 今年もアドベントカレンダーの季節がやってきました。この記事を書いている11月26日時点では、カレンダーの半数程度しか埋まっていないので、果たして25日まで埋まるのか非常にヤキモキしています(笑) 今回は人事評価についての話です。人事評価は組織運営において最も重要な仕組みのひとつですが、評価基準が曖昧だと、評価者によって判断がブレ、被評価者の納得感は得られません。そして何より、組織が求める人材が育たないという本質的な問…
5ヶ月前

Unity×FigmaでUIデータを自動実装して工数を約80%~90%削減したときの話
FURYU Tech Blog - フリュー株式会社
はじめに こんにちは! プリントシール機のソフトウェア開発を担当している長谷川です。 本記事では、プリントシール機のUI実装においてFigmaを導入したことで得られたメリットや工数削減の成果について紹介していきます! 「プリントシール機ではこんな方法でUIを作っているんだ」と知っていただけると嬉しいです。 従来のUI実装方法 これまで、UIの実装にはAdobe Photoshopで作成したデザインデータに対して座標情報データ付与し、Unity上に手作業で配置する方法を採用していました。 座標情報データとは、Unity上で各デザインデータをどの位置に配置するかを明記した情報です。以下の画像はその…
5ヶ月前

ECS標準のカナリアデプロイをCDKで利用する(L2 Constructサポート前)
FURYU Tech Blog - フリュー株式会社
Amazon ECS カナリアデプロイメントについて、L2 Constructに実装される前のCDKで利用した事例を紹介します。
5ヶ月前

AWS Batchのジョブ定義を任意のDockerイメージタグで更新するスクリプトを作成した話
FURYU Tech Blog - フリュー株式会社
こんにちは、フリューのピクトリンク開発 SREチームで働いているまさおです🐙 決まった1コマンドを叩けばAWS Batchのジョブ定義を更新できるようにしたい、という気持ちになったためスクリプトを書いてみました。 実際にはこれから紹介するような実装をmiseのタスク*1として用意し、 mise run update-job-definition <イメージタグ名>という風にコンソールで実行すれば指定したイメージ名でジョブ定義を更新できるようにしています。 コード全体 #!/bin/bash # 引数でイメージタグを受け取る IMAGE_TAG=$1 if [ -z "${IMAGE_TAG}"…
5ヶ月前

WSLでハマったDocker + AnsibleのSSH接続問題
FURYU Tech Blog - フリュー株式会社
こんにちは、ピクトリンク開発で運用保守を担当している藤本です。 前回の記事 DockerでAWS IAMユーザー管理を自動化しようとしたらハマった話 に続き、またまたハマってしまったお話を共有します。 今回は、WindowsのWSL環境で発生した問題です。 背景 バッチ管理はRundeckで行っており、定期的なバージョンアップはAnsibleで自動化しています。 しかし、開発メンバーのPC環境が異なるため、Ansibleのバージョン違いによるエラーが発生することがありました。 対応策として、AnsibleをDocker化しました。 ただし、SSHログインに必要な個人の設定は ~/.ssh/co…
5ヶ月前

iOSDC Japan 2025参加レポート ~ Day1 ~
FURYU Tech Blog - フリュー株式会社
ピクトリンク開発部でiOSアプリの開発を担当している牛尾です。今回はiOSDC Japan 2025に参加してきたので、聴講したセッションや当日の雰囲気などを中心に記事を書かせていただきました! 弊社からは私を含めて4名が参加したので、各日のレポートをリレー形式で繋げていきます。 私はDay1を担当させていただきます。 弊社から参加した4名のiOSエンジニア(私は右から2番目のメガネです) ※フリュー株式会社はゴールドスポンサーとして協賛させていただきました。 iosdc.jp 弊社エンジニアが書いたDay0のレポートもぜひご覧ください。 tech.furyu.jp Day1 セッション紹介 …
6ヶ月前