SMARTCAMP Engineer Blogのフィード
https://zenn.dev/p/smartcamp
SMARTCAMPに所属するエンジニアの個人記事を集めています。 記事の内容は個人の見解であり、社内でのレビュー等は行っておりません。
フィード

ECS 2025年アップデート 俺的まとめ
SMARTCAMP Engineer Blogのフィード
2025年のECSアップデートの中から、開発・運用フローに直接影響を与える重要機能をピックアップしてまとめました。 ECS Express Modeこれまで「とりあえずコンテナを動かしたい」という場面ではApp Runnerが選ばれがちでしたが、ECS側の初期構築のハードルを下げる機能として実装されました。コンテナイメージとポートを指定するだけで、ALB、ログ、Auto Scalingなどの構成を含んだ環境が自動構築されます。 ECSわからん...という方はとりあえずECS Express ModeをFargateの基本的な構成であり、必要なリソースも作成してくれるので、...
2日前

令和のTDD AIが書いて、エンジニアが仕上げる新卒流実践法
SMARTCAMP Engineer Blogのフィード
この記事はスマートキャンプ株式会社のアドベントカレンダー 2025 の18日目の記事です! はじめにこんにちは、りゅうです!新卒1年目のエンジニアとして、TDD(テスト駆動開発)に取り組み始めたとき、正直なところ「難しそう...」と思っていました。テストを先に書く? 実装の前にテストの設計を考える? 経験が浅い自分にできるのか不安でした。でも、AIコーディングアシスタント(Cursorとか)が登場して、この状況が変わりました!AIがテストコード生成をサポートしてくれるおかげで、新卒でもTDDが実践しやすくなったんです。ただAIに丸投げするだけじゃダメなんですよね。今回は、標準...
4日前

チーム開発の中で、快適なコードレビュー環境を目指してみる
SMARTCAMP Engineer Blogのフィード
はじめにこの記事では、ローカルのレビュー環境を快適にするために使っているツールの紹介をしています!チームでの取り組みや、マインド的な要素は扱っていないのでご注意ください。チームでの開発をしていると、複数人から様々なタスクのコードレビューがやってきます。この記事では、そのような環境で自身の開発業務に支障なく快適なコードレビューを進めるために、私が取り入れているツール群を紹介しようと思います。特にGit Worktree Runnerとdotenvxの組み合わせは本当に快適です。 1. Git Worktree Runner(gtr)gtrの良さ・詳細については、Zenn...
5日前

rubyでbitの除算を実装してみた(ベンチマーク付き)
SMARTCAMP Engineer Blogのフィード
この記事はスマートキャンプ株式会社のアドベントカレンダー 2025 の16日目の記事です! はじめにこんにちは、りゅうです!先日、会社の先輩方と参加した「逆リファクタリングバトル」で、ビット演算を使った剰余(余り)計算の実装に挑戦しました!イベント当日は時間内に完成しなかったのですが、その後完成させることができたので、今回はその内容を紹介します。Rubyの%演算子が抽象化している計算処理を、あえてコンピュータアーキテクチャレベルの算術演算で実装してみました。正直、実用性はゼロですが、コンピュータの仕組みを理解する良い勉強になりました!参考にした本:パターソン&ヘネシー『コン...
6日前

会話っぽいリアルタイムなチャットを作った話
SMARTCAMP Engineer Blogのフィード
はじめにこちらスマートキャンプのアドベントカレンダー13日目の記事なっています!学生時代に作ったアプリを振り返ってアイデア出す一連の流れをアウトプットしてみました! 作ったもの複数人でリアルタイムに会話に近いチャットができるWebアプリです。https://www.youtube.com/watch?v=Pt84Y2GsbVw 使ったもの数年前に作成したものなので少し技術スタックが古いです。 フロントエンドReactStyled-componentSocket.io バックエンドGoGingo-socket.io アイデアの出し方...
7日前

チームに合わせたplan.md生成・管理システムを構築する
SMARTCAMP Engineer Blogのフィード
!この記事は、SmartCamp Advent Calendar 2025 15日目の投稿です。この記事では、弊チームの開発フローの課題を解決するために考えた、SDDアプローチを小さく取り入れたplan.md生成・管理方法について紹介します。 SDD(仕様駆動開発)について2025年は生成AIによるコーディングエージェント元年とも言える年になりました。多様なツールやサービスが登場し、実際の開発現場での活用が進むにつれて、新たな課題が浮上してきています。その中でも、仕様や設計が曖昧なままAIにコーディングを任せることによって意図しない動作やバグを引き起こしたり、後の工程で手戻...
7日前

WordPressのカスタムHTMLの自由度
SMARTCAMP Engineer Blogのフィード
はじめにこちらスマートキャンプのアドベントカレンダー14日目の記事なっています!WordPressのカスタムHTMLがWordPressがかなり自由度が高かったので備忘録として残しておきます。 WordPressのカスタムHTMLWordPressのカスタムHTMLブロックは以下のようなものです。 ブロックのコードブロックのコードは以下になっており、特別HTMLタグで囲まれているわけではなく、ただWordPressコメント囲まれている箇所がカスタムHTMLと解釈されます。<!-- wp:html --><div>カスタムHTML<...
7日前

Google MeetのAI議事録を自動でMarkdownファイルに変換する 【GAS】
SMARTCAMP Engineer Blogのフィード
!この記事はSMARTCAMP Advent Calendar 2025 の12日目の記事です。 はじめにみなさんはGeminiによるGoogle Meetの議事録生成機能を使ったことがありますか?筆者はもっぱら1on1で使用しています。ミーティングが終了して少しすると、議事録としてGoogle ドキュメントが自動で生成されてメールで送信されるのでとても便利です。内容としても「要約」・「文字起こし」の2セクションで構成されており、形式を問わず議事録として扱う分には何ら問題ないと思います。(そして現状特に問題を感じていない方にはこの記事は刺さらないかもしれない)筆者は日...
10日前

日本の住所の表記ゆれ vs 正規化を阻む住所
SMARTCAMP Engineer Blogのフィード
こんにちは!スマートキャンプ株式会社のcruiseです。この記事はスマートキャンプ株式会社のアドベントカレンダー 2025 の11日目です。 同一の住所か判定したいみなさんご存知の通り、日本の住所はかなりの表記ゆれがあることで知られています。例えば、弊社オフィスの住所はコーポレートサイトによると、次のように記載されています。〒108-0014 東京都港区芝5-29-11 G-BASE田町 13階しかし、以下の表記であっても、弊社オフィスを指す住所ですよね...?東京都港区芝5-29-11 G-BASE田町13階東京都港区芝5-29-11-13F東京都港区芝5丁目...
11日前

unifiedでHTMLからWordPressに変換する機構を作成した"
SMARTCAMP Engineer Blogのフィード
この記事はSmartCampアドベントカレンダーの10日目の記事になっています!https://qiita.com/advent-calendar/2025/smartcamp はじめに既存のHTMLファイルからWordPressブロックに変化する、みたいなことを行ったので備忘録として残しておきます。WordPressの知識については省きます。 行ったこと実際にやったことは以下です。既存のHTML -> unifiedでHTMLをパース -> 自作したunifiedプラグインでHTMLタグをWordPresブロックに変換 -> 変換したWordPres...
12日前

WordPressブロックの形式
SMARTCAMP Engineer Blogのフィード
この記事はSmartCampアドベントカレンダーの9日目の記事になっています!https://qiita.com/advent-calendar/2025/smartcamp はじめにWordPressブロックは実はカスタマイズされたHTMLであり、自力で直接書くことができます。ブロックの記事も少ないのでここに書いておこうと思います。 WordPressブロックとはWordPress5.0から採用されているブロックエディターで使われている、記事を構成するパーツのことです。例: Paragraphブロック 主な形式WordPressブロックは主にWordPress...
13日前

プロジェクトが迷子にならないチーム運営:オーナー制度をはじめてみた
SMARTCAMP Engineer Blogのフィード
!この記事は SMARTCAMP Advent Calendar 2025 の8日目の記事です。 はじめにこんにちは。初めまして。まるべいじ(malvageee)と申します!今回は、チーム内で機能開発の進捗が追いづらくなり、動きにくさが生まれていた状況を改善するために導入した「プロジェクトオーナー制度」について紹介します。私が率いている開発チームでは、複数の機能開発が同時に走っており、プロジェクトの透明性が低下するという問題を抱えていました。結果として、誰がどこまで進めているのかがわかりにくく、チーム全体が自律的に動きづらい状態になってしまいました。そこで改善策として導...
14日前

そもそもそれをやる意味って何ですか?って投げかける覚悟はできてるか?俺はできてる
SMARTCAMP Engineer Blogのフィード
「そもそもそれをやる意味って何ですか?」って結構勇気のいる問いかけだと思います。でもこの言葉を投げかけたことによって業務効率が上がることもあると思います。でも業務効率が下がることもなきにしもあらずだと思います。最近はそもそも何で?という疑問が頭によく浮かんでくる思考になってきたのですが、やりすぎはよくないと反省をしております。この問いかけを投げるなら、どんな覚悟をするべきなのか理想と現実を言語化し、最後に覚悟するためのヒントをまとめてみました。 この言葉を投げたくなる場面それをやる目的がハッキリせず、納得感が得られないので本音ではやりたくないとき 納得感が得られない...
15日前

レスポンスが返ってくることのありがたみ
SMARTCAMP Engineer Blogのフィード
今回のお話ブラウザ → フロントエンドサーバー → バックエンドサーバー → たまに別のAPIサーバー という構成で、ブラウザからあるURLにリクエストを送信したところ、504 Gateway Timeout がレスポンスとして返ってきたときのトラブルシューティングです。 先に3行まとめレスポンスが返ってこないことだってたまにあるよセキュリティグループに通信が弾かれると、レスポンスは返ってこない他のAPIへの通信は適切にタイムアウト時間を設定しよう ECS で稼働する環境フロントエンドサーバー と バックエンドサーバー をまとめて1つのサービスタスクとしていた...
16日前

Forget `make`, `just` run.
SMARTCAMP Engineer Blogのフィード
!この記事はSMARTCAMP Advent Calendar 2025 の5日目の記事です。 ## はじめにWeb開発の現場で Makefile をタスクランナーとして使用している所は今でも少なくないと思います。が、しかし Makefile は本来C、C++のコンパイルなどのビルド作業での使用を想定されたツールであり、タスクランナーとして使用するとどうしても苦しい場面に遭遇することがあります。コマンド名と同名のファイル名が存在すると実行されない(.PHONY が必要)tab によるインデントが必須引数を渡すのが一癖ある ( make task ARG=hoge など...
17日前

RailsでBulletを入れているのにN+1が起きてしまう
SMARTCAMP Engineer Blogのフィード
!この記事はSMARTCAMP Advent Calendar 2025の4日目の記事です。年末に差し掛かりバタバタしてきましたね。さて、今回は弊社のアドベントカレンダーの4日目としてRailsでBulletを使っているのにN+1が起きてしまうという悲しい事象をしていきます。Railsユーザーには当たり前かもですが、個人的にやられたので温かい目で見てください... Bulletとはhttps://github.com/flyerhzm/bulletBulletとはN+1が起きているときに教えてくれるgemです。READMEにも書いてある通り、eager loading...
18日前

2週間でアート作品のシステムを作った話 ── Vercel + Supabase
SMARTCAMP Engineer Blogのフィード
導入こんにちは!スマートキャンプ株式会社の松下です。この記事はスマートキャンプ株式会社のアドベントカレンダー 2025 の記事として執筆しています。しかし、内容は仕事には関係ないプライベートでの活動についてになっています。何卒ご了承ください。 芸術祭への出展この度、 ATAMI ART GRANT 2025というイベントに、出展作家側で参加しました。熱海の街にあるマンションやお店で様々な芸術作品を展示するイベントです。公式ホームページスクリーンショット今回私が作成したのはイベント全体のシステム(Web ページ等)ではなく、イベントに出展している作品です。友人が モノ・シ...
19日前

WordPress REST API Batch Frameworkで記事を一度に大量に登録してみる
SMARTCAMP Engineer Blogのフィード
WordPressで大量のコンテンツを投稿・更新する機会があり、REST APIで1件ずつ入れていると結構時間がかかった。そこで色々調べていると、複数のAPIをまとめて送るエンドポイントがあったのでそれを使ってみたのでクセも含めてまとめる。結論正直古く、ドキュメントもほぼ見当たらなく不安はあるものの記事の引っ越しや大量のインポートを行う時には使えそうだった。 使ったものWordPress 5.6(2020年12月リリース)で導入された REST API Batchというもの/wp-json/batch/v1ソース(公式発表)https://make.wordpress...
20日前

定数をYamlで管理するツールを作りました
SMARTCAMP Engineer Blogのフィード
はじめにCLIをツールを作ったので感じていた課題を共有しつつ記事を書いてみようと思いました。こちら成果物のリンクになります。https://www.npmjs.com/package/@garebare/shared-constants どういうツールかバックエンドとフロントエンドの言語が別だが共通の定数を持っておきたい場合に使うツールになります。下記のようなYamlから複数の言語向けに定数が定義されたファイルを出力することができます。format: shared-constants //他のフォーマットが実行されるのを防ぐためconstants: values...
21日前

アーキテクトカンファレンス2025 参加報告
SMARTCAMP Engineer Blogのフィード
はじめにこんにちは!りゅうです。先日行われたアーキテクトカンファレンス2025の2日目(11/21)に参加してきました!セキュリティ、SRE、データ分析基盤、レジリエンスなど、普段あまり触れない分野のセッションがたくさんあり、新卒1年目の自分にとって刺激的な1日でした。各セッションで印象的だったことを簡単にまとめていこうと思います!https://architecture-con.findy-tools.io/2025 生成AI時代の新・セキュリティ脅威:アーキテクトはいかにOSS依存とコード生成リスクに立ち向かうかこのセッションは近年のAIの普及に伴う新たなセキュリテ...
1ヶ月前