開発– category –
-
メール到達性を支える、プレスリリース内URLのドメイン評価の仕組み
開発
こんにちは。バックエンドエンジニアの筒井(@tsuttsun_wind)です。 PR TIMESでは、プレスリリースを個人・メディアユーザーやメディアリストに向けてメール配信しています。 2026年1月中旬ごろ、Microsoft系のメールサービスを利用している一部ユーザーに対して、送信したメールが届かない問題が発生しました。 この事象により、多くのお客さまにご心配とご迷惑をおかけしたことを改めてお詫び申し上げます。 【背景】 同時期には、Microsoft系メールサービス宛てにメールが届かない問題が広く報告されており、P... -
XO から Oxlint に移行しました
開発
こんにちは、フロントエンドエンジニアのやなぎ(@apple_yagi)です。 PR TIMESでは2023年9月から XO をリンター・フォーマッターとして使ってきましたが、先日 Oxlint に移行しました。本エントリーでは Oxlint に移行した経緯や進め方、そして導入した結果についてご紹介します。 XO は、sindresorhus 氏が開発した Opinionated なリントルールを備えたESLintベースのラッパーツールです。フォーマッターの機能も兼ね備えており、 xo というワンコマンドでリントとフォーマットを実行することができます。 【XO ... -
Gmail送信前確認用Chrome拡張の内製化
開発
こんにちは、PR TIMESでインターンをしている工藤(@k8035004287922)です。 今回は、社内の一部部署で必須運用されていたGmail送信前の誤送信確認用Chrome拡張を、社内要件に合わせて内製した取り組みを紹介します。 【背景】 社内の一部部署では、誤送信を防ぐChrome拡張を必須インストールして運用していました。一方で、Chrome拡張はブラウザ上で強い権限を取り得るため、社外製の拡張機能を業務上必須にすること自体が、セキュリティ上の懸念になり得ます。 そこで今回は、誤送信防止という目的は維持したま... -
git worktree × Docker Composeによる並行開発環境の改善
開発
こんにちは、PR TIMESでインターンをしている笹山雷雅です。 レビュー中や検証中に、いま触っているブランチをそのまま残したまま、別ブランチの挙動を確認したくなる場面は少なくありません。 ただ、git switch を繰り返す運用では、未コミット変更を気にしたり、作業の文脈が途切れたりしやすく、修正前後を見比べるにも手間がかかります。 そこで今回は、git worktree と Docker Compose を組み合わせて、作業中ブランチを切り替えずに別ブランチを https://<slug>.app.dev.local で並行確認できるように... -
PR TIMESでのインターンで学んだこと
開発
こんにちは!第一開発部でエンジニアとしてインターンをしていた三宅(@pure_notchman)です。PR TIMESのインターンを卒業することになったため、これまで取り組んできた開発や学びについて振り返りたいと思います。 【はじめに】 PR TIMESのインターンでは、実際のプロダクトや社内業務に直接影響する開発に携わることができました。いわゆる「練習用のタスク」ではなく、日々の運用やユーザー体験に関わる機能を任せてもらえたのが印象的です。私が取り組んだ主なタスクは以下の通りです。 FAX送信業務の自動化AP... -
我々はなぜ「層」を分けるのか〜「関心の分離」と「抽象化」で手に入れる変更に強いシンプルな設計〜 #phperkaigi
開発
こんにちは!PR TIMES の河瀨翔吾(@shogogg)です。エンジニアリングマネージャーとして、プレスリリース配信サービス PR TIMES の開発や開発チームのマネジメント、業務改善、採用などを行っています。好きな春の味覚はたらの芽です。 この記事では、先日開催された PHPerKaigi 2026 でお話させていただいたトークの内容について解説をしたいと思います。 【PHPerKaigi 2026 について】 PHPerKaigi 2026 は2026年3月20日(金)から22日(日)の3日間、中野セントラルパークカンファレンスにて開催された技術カン... -
axe-coreの検出レベルを全深刻度に引き上げ、a11yを継続的に担保できるようにしました
開発
こんにちは、PR TIMESでインターンをしている勝間田(@Sho_26_ts)です。 今回は、フロントエンドにおけるアクセシビリティ向上の一環として、axe-coreを用いた改善と、それを継続的に担保するための方法を紹介します。 【これまでのアクセシビリティの取り組み】 PR TIMESではMarkuplintとPlaywright、Storybookでアクセシビリティ(a11y)テストを行ってきました。 MarkuplintとPlaywrightでのアクセシビリティ品質のチェック方法はこちらの記事をご覧ください。 https://developers.prtimes.com/2025/03/10/mar... -
PR TIMESがPHPを使い続ける判断軸
開発
PR TIMESでCTOをやっている金子 (@catatsuy) です。 たまに「なぜPR TIMESはPHPなんですか? 今後もPHPを利用するんですか?」と聞かれることがあります。開発者ブログの記事として、考え方を明文化しておきます。 なお、先日以下の記事も公開しました。本記事はその補足として、技術選定(特にバックエンドの言語)について、判断軸をまとめます。 https://developers.prtimes.com/2025/12/24/cto_activities_2025/ 【言語は目的ではなく手段】 まず大前提として、なぜ私達がPR TIMESの開発をしているのかという... -
Autify上のE2EテストをPlaywrightに移行しました
開発
こんにちは、フロントエンドエンジニアの小張(@kobari41257)です。 今回、肥大化していたE2Eテストのシナリオを整理し、Playwrightを使った実行基盤に移行したことで、Flaky率や実行時間を改善した取り組みについてご紹介します。 【背景】 これまでPR TIMESではAutify NoCode(以下Autify)を用いたE2Eテストを行ってきました。 https://autify.jp/products/nocode https://developers.prtimes.com/2022/05/12/test-automation-refactoring/ しかし、機能追加に伴い新しいテストケースが追加されシナリオ数が肥... -
データで見る、24卒×25卒のUIリニューアルふりかえり対談
開発
こんにちは、バックエンドエンジニアの中山です。 PR TIMESは今年、企業向け管理画面のUIリニューアルを行いました。リニューアルと並行して他の開発も進める中で、立ち上がりのつまずきや、レビュー・AI活用の変化、直近の技術課題など、現場で得た学びをざっくばらんに振り返ります。 UIリニューアルやその他の動きについて、詳細は以下の記事に書かれています。 https://developers.prtimes.com/2025/12/24/cto_activities_2025/ 【参加者】 中山(進行・24卒) チャノックナン(25卒) 田中(24卒) 筒井(24...
