Arsaga Developers Blogのフィード
https://zenn.dev/p/arsaga
アルサーガパートナーズ株式会社のエンジニアによるテックブログです
フィード

GitHubリポジトリの移行手順と注意点まとめ(2025年版)
Arsaga Developers Blogのフィード
初めにGitHubではリポジトリを別のユーザーやOrganizationに移行することができます。最近、リポジトリを別のOrganizationに移行する機会があったので、移行手順について記載していきます。 GitHubリポジトリ移行時の流れGitHubリポジトリ移行時の大まかな流れは以下の通りです。今回の記事では主に2~4までの手順を記載して行きます。必要に応じてwikiやReadmeの更新バックアップ作業Gihubリポジトリの移行GitリモートURL・サブモジュールの設定の更新必要に応じてGitHubリポジトリと連携しているサービス(AWSやSlack等)の...
2ヶ月前

実務で役に立った77のサイト・書籍をまとめる
Arsaga Developers Blogのフィード
はじめに実務で役に立ったサイトや書籍をまとめていくだけの記事です。 コミュニケーションエンジニアの質問の仕方https://qiita.com/seki_uk/items/4001423b3cd3db0dada7マネジメントにおける心理的安全性についてhttps://speakerdeck.com/lighttiger2505/wu-zi-jue-nimenbanoxin-li-de-an-quan-xing-woduo-tuteitajing-yan-karade-taxue-biエンジニアの劣等感との付き合い方https://qiita.com/k...
3ヶ月前

SDK for JavaScriptで発生したInvalidChunkSizeErrorを解消する
Arsaga Developers Blogのフィード
はじめにDockerのversionを18から20にアップグレードしたところ、SDK for JavaScript v3でS3へアップロードする際に、InvalidChunkSizeErrorのエラーが発生したため、その解消方法について記事にしていきます。InvalidChunkSizeError: Only the last chunk is allowed to have a size less than 8192 bytesOnly the last chunk is allowed to have a size less than 8192 bytesバージョンは以...
3ヶ月前

アルゴリズム脳を鍛える!NeetCode問題(1〜17問)徹底解説
Arsaga Developers Blogのフィード
はじめにNeetcodeのロードマップの内、1~17問をコードとともに解説していきます。Neetcodeとは就職・転職の面接を受ける際に出題データ構造とアルゴリズムに関わる問題をまとめたサイトで、アリゴリズム問題をどの順番で解いていくのが良いかというロードマップを提供してくれています。https://neetcode.io/roadmap 計算量オーダーについてhttps://qiita.com/asksaito/items/59e0d48408f1eab081b5アルゴリズムにおける計算量とは、アルゴリズムが問題を解くために必要とする時間やメモリの量を指し、主に2つの...
3ヶ月前

Amazon SNSとSQSでファンアウトイベント(Fan-out)通知を試してみる
Arsaga Developers Blogのフィード
初めに今回は、Amazon SNSとAmazon SQSのファンアウトイベント通知について試してみたいと思います。 ファンアウト(Fan-out)イベント通知についてファンアウトイベント通知とは、1つのイベント(通知)を複数のシステム(またはサービス)に並列/非同期処理通知する設計パターンのことを指します。その方法の一つとして、Amazon SNS (Simple Notification Service)とAmazon SQS (Simple Queue Service)を連携させることで実現することができます。例えば、ECサイトでの新しい注文のイベントが発生した際に、...
3ヶ月前

Redshift と DynamoDB のゼロ ETL 統合後にQuickSight で分析した際のデータ型エラーへの対応
Arsaga Developers Blogのフィード
事象DynamoDB のデータを Zero-ETL を利用して Redshift に連携し QuickSight で分析しようとしたところ、「サポートされていないデータ型」のため取り込まれませんでした。 原因DynamoDBの「DynamoDB JSON」データをRedshiftに連携させると、SUPER型としてマッピングされ、QuickSightはSUPER型に対応しておらず、取り込みに失敗していました。 対策 マテリアライズドビューによる構造化JSON 内の要素をそれぞれ抽出し、Redshift 上の適切なデータ型にキャストし、マテリアライズドビューを作成しま...
3ヶ月前

Amazon Redshift と Aurora PostgreSQL のゼロ ETL 統合時に発生したカラム長によるエラーへの対応
Arsaga Developers Blogのフィード
事象Aurora PostgreSQL と Amazon Redshift のゼロ ETL 統合によるデータ同期中、一部テーブルで以下のエラーメッセージが出力し、初回レプリケーションが失敗しました。Replicating initial data for table "<schema>"."<table>" failed. Column '<column>' length XXXX is longer than in the table YYYY. Check the data that might be causing issues. I...
3ヶ月前

Redshift Serverless と Aurora PostgreSQL のゼロ ETL 統合を試してみた
Arsaga Developers Blogのフィード
はじめに2024 年 10 月 15 日、以下 2 つの発表がありました。Amazon Aurora PostgreSQL と Amazon Redshift のゼロ ETL 統合が一般提供開始Amazon Aurora PostgreSQL zero-ETL integration with Amazon Redshift now generally available - AWSAmazon DynamoDB と Amazon Redshift のゼロ ETL 統合が一般提供開始AWS announces general availability of Amaz...
3ヶ月前

システム運用の戦略について考える
Arsaga Developers Blogのフィード
はじめに今回は、これまでのプロジェクトの経験を通して、システム運用の観点から学んだこと大切だと思ったことについて記事にしていきたいと思います。 初期段階で設計思想を統一するプロジェクトの機能やサービスごとに設計思想が異なっている合、何らかの追加要望や修正が発生すると、サービスごとに変更する箇所を洗い出し方針を考える必要があります。設計の違いによって確認範囲が膨大になり、考慮漏れによる追加実装が発生するリスクも高まります。ある機能のデータ取得処理がAサービスではREST API、BサービスではGraphQLで実装されているAサービスとBサービスでStoreの処理や取得方...
3ヶ月前

GitHub Copilotを持っているならvscode-mermAIdを試そう
Arsaga Developers Blogのフィード
はじめにプログラマやドキュメント作成者にとって、図は複雑な概念を説明する上で欠かせないツールです。しかし、図の作成は煩雑で時間がかかるものです。Microsoftが開発した「mermAId」というVS Code拡張機能を使うことで、一瞬で図を作ることができるようになります。というわけで、実務で使ってみたので、その使い方をご紹介したいと思います。 Mermaidとは紛らわしいのですが、Mermaidはテキストベースでフローチャートやシーケンス図などを描けるJavaScriptライブラリです。一方、mermAIdはそのMermaid記法をCopilotを使って自動生成・編集できる...
4ヶ月前

リトライ処理時のExponential Backoff(指数関数バックオフ)戦略
Arsaga Developers Blogのフィード
はじめにGoogle Drive APIについて調べていたところ、使用制限の箇所で指数バックオフアルゴリズムに関する記述がありました。https://developers.google.com/workspace/drive/labels/limits?hl=ja自分が初めてエンジニアになった頃に、あるエンジニアがAngulerのRxJSを使用して指数バックオフを作成していたことがあり、その時はあまり理解できていなかったので、改めて調べてみることにしました。 Exponential Backoff(指数関数バックオフ)とは指数バックオフとは、通信に失敗した際に、待ち時間...
4ヶ月前

質問の仕方について(新入社員向け)
Arsaga Developers Blogのフィード
これはなに?社内の新入社員向けに書いた、先輩や生成AIに対してどのような質問をすればよいかをまとめた記事になります。 原則大雑把なものから細かいものへと順番に現状を説明しましょう。いきなり細かい話をしてもなかなか理解されません。特に質問が苦手だと思う人は、大雑把すぎるくらいの話から始めてください。ちょうどマトリョーシカを開けるかのごとく、大きな話から小さな話をするように心がけましょう。こちらが一言話しかけた際には相手の表情や返事を確認しましょう。よく分かっていなさそうであれば、話の細かさが合っていないか、話の切り口を間違えています。あるいは話しかけた相手が忙しいパターン...
4ヶ月前

生成AI時代における新人教育について考えたこと
Arsaga Developers Blogのフィード
従来通りのことをやっていては教育にならない時代2025年を迎え、世は生成AI時代となり様々なツールが出ています。それに比べて、開発現場の教育環境はそれに見合ったアップデートがされていないような気がします。今や「TODOアプリを作って動かしてみよう」のようなお題では、生成AIを使えばすぐにできてしまいます。従来通りのことをやっていては、通用しない時代と言えるでしょう。では、どうすれば良いのか、実際にやってみたことを含めて共有したいと思います。 複雑なアプリを作ってもらう簡単なアプリを作ってもらっても教育にならないのであれば、ある程度複雑なアプリを作ってもらうほうが良いです。ま...
7ヶ月前

【MacOS・LaunchAgent】ログイン時にスクリプトを実行する
Arsaga Developers Blogのフィード
はじめに業務中に毎回、SQLクエリを叩く作業があり、PCのログイン時に処理が実行され、結果が自動で表示されたら便利だと思ったので、色々と調べて実行してみることにしました。今回はLaunchAgentという方法を使用して、実装していきたいと思います。 Launch AgentについてLaunchAgentはmacOSのlaunchdで管理されるプロセスの一種です。ユーザーがログインしたときにロードされる為、この仕組を利用してユーザーログイン時にスクリプトを実行が可能となります。https://developer.apple.com/library/archive/docum...
8ヶ月前

Databricks認定データエンジニアアソシエイトを取ってみた。
Arsaga Developers Blogのフィード
こんにちは、アルサーガパートナーズの門司です。先日、Databricksの「認定データエンジニアアソシエイト」資格を取得しましたので、その経験を共有させていただきます。 受験のきっかけ当社がDatabricksとパートナーシップを結んだことを受けて、社内で資格取得を推進する動きがありました。私はサーバーサイドエンジニアをしていますが、データエンジニアリングにも興味があったため、Databricksが行っている2日間の研修を受け試験を受けました。 試験結果結果はなんとか合格!合格ラインが71点と言われていたのですが、71.6点という、ギリギリ合格でした(笑)試験終了直後に合否...
8ヶ月前

React × Electron × TypeORMで作成するMarkdownアプリ ~ バックエンド編 ~
Arsaga Developers Blogのフィード
はじめにYoutubeでElectronを使用してマークダウンを実装するという動画を見かけ、丁度実務でElectronを触り始めたので、動画を参考にしながら色々と実装してみることにしました。https://www.youtube.com/watch?v=t8ane4BDyC8&list=WL&index=48&t=4821sバックエンドのDB操作はTypeORMを使用し、フロント側はReactとJotaiを使用してます。主にバックエンド側のElectron × TypeORMで実装した内容について共有して行きたいと思います。今回実装した内容は以下リポジ...
10ヶ月前

AssertableJsonでLaravel APIテストの柔軟性を向上させる方法
Arsaga Developers Blogのフィード
はじめにLaravelは、その直感的なAPI開発機能で広く利用されています。しかし、APIのテストにおいて、標準のアサーションだけでは十分に対応できない場合もあります。私もLaravelを使った開発において、APIテストでAssertableJsonを頻繁に使用していますが、時折「もう少し柔軟にテストできれば」と感じることがありました。この記事では、Laravel 8以降導入されたAssertableJsonの機能を活用し、特にwhereメソッドにClosureを渡すことで、APIテストをより柔軟に行う方法をご紹介します。 AssertableJsonの基本的な使い方まず...
1年前

Laravelのカスタムクエリビルダーを使った柔軟なクエリの作成方法
Arsaga Developers Blogのフィード
はじめにLaravelのEloquentモデルでは、データベースクエリを簡単に作成できます。特に「スコープ」を使用することで、特定の条件に基づいたクエリを簡潔に再利用することができますが、クエリをより柔軟にカスタマイズしたい場合には、カスタムクエリビルダーを使用する方法があります。本記事では、Laravelでカスタムクエリビルダーを作成し、それを使って柔軟なクエリを実現する方法を紹介します。 1. カスタムクエリビルダーとはカスタムクエリビルダーは、LaravelのEloquentクエリビルダーを拡張して、独自のメソッドを追加するものです。これにより、特定のモデルに対して、再...
1年前

Jestのテストで一部だけモックしたい場合
Arsaga Developers Blogのフィード
🔖 概要Jestを使ってモック化するときに一部をモックしたい場合に手こずったので経過と共にメモ。※ React(Next.js)&TypeScriptを使用【🏃 お急ぎ便 🏃】やりたいことは 準備 と テスト項目に、自分なりの答えは 結論 に記載。 🌏 環境React: 18Next.js: 13.5.6Jest: 29.7.0 📦 準備以下2つのコンポーネント ButtonGroup.tsx と Button.tsx を使用。ButtonGroupのテストをするために子コンポーネントであるButtonをモック化したりしなかったりする。./c...
1年前

今更人に聞けないPythonの基本の用語を、PHPと比較しながらまとめてみる。
Arsaga Developers Blogのフィード
始めに。今回業務で、バックエンド側の言語としてFastAPIを使用しました。これまでLaravelがメインだったため、Pythonのことからよくわからず、苦戦しました。そこで、今回は今更人に聞けないけど、自分でまだわかっていない用語を深掘りしていきたいと思います。これまでがPHPだったので、折角なので二つを比較しながらまとめてみようと思います。自分がわからないのはFastAPIの用語だと思っていたけど、ほぼほぼPythonの用語がわかっていなさそうなことがわかりました。不勉強すぎる。 今回の基本用語達。 dict私にはあまり馴染みがない用語だったのですが、...
1年前