-
HTML解体新書の輪読会を開催し、完走しました
開発
こんにちは。PR TIMESでフロントエンドエンジニアをしている夛田(@unachang113)です。 今回はPR TIMES社内でHTML解体新書の輪読会を開催し、無事完走したので輪読会の進め方や効果について話そうと思います。 【輪読会を開催した経緯】 PR TIMESではエンジニアによってHTMLに対する知識量が人によって差があり、意味付けが間違ったマークアップやネストできる要素等がレビューで指摘できない課題がありました。 ネストできる要素はMarkuplintの導入で改善できましたが、意味付け等の知識に関しては個々人に委ねら... -
PostgreSQL 15のNULLS NOT DISTINCTで変わるUNIQUE制約とNULLの扱い
開発
こんにちは、バックエンドエンジニアの中山です。 今回はPostgreSQL 15から利用できる「NULLS NOT DISTINCT」オプションを紹介します。 【背景】 NULLS NOT DISTINCTについて調べ始めたきっかけは、UNIQUE制約がついているカラムに対し、UNIQUE 制約違反のエラーが発生したことでした。具体的には、「INSERT 前に SELECT で存在を確認し、なければ INSERT する」という実装により、意図しないタイミングで重複エラーが発生していました。 というのも、INSERT がコミットされる前に別のトランザクションが同じデー... -
企業ページにおけるRecoilからの段階的移行
開発
こんにちは、フロントエンドエンジニアのやなぎ( @apple_yagi )です。 PR TIMESのフロントエンドでは、これまで状態管理にRecoilを利用してきました。しかし、Recoilは現在アーカイブされており、React19にも対応していません。そのため、現在Recoilからの脱却を進めています。昨年、弊社の桐澤が以下のスライドでRecoil脱却の進め方について紹介していましたが、その後の進捗としてRecoilの依存が深いページの脱却を完了することができたのでご紹介します。 https://speakerdeck.com/kirik/recoilwob... -
自動選択リストをリニューアルしてみえた、開発の難しさと楽しさ
開発
こんにちは、PR TIMESでインターンをしている勝間田(@Sho_26_ts)です。 今回は、「メディアリレーション」プロジェクトの一員として担当した「自動選択リスト」機能のリニューアルについてご紹介します。2025年6月23日にリリースしたこのリニューアルでは、他のメディアリスト作成・編集画面と同じ仕様・デザインに統一しました。加えて、これまでできなかった検索や並び替えも可能となり、より使いやすい画面へと進化しています。 また、これに先立って2024年12月5日にメディアリストの管理画面もリニューアル... -
PHP Conference Japan 2025 に協賛・登壇しました! #phpcon
カンファレンス
こんにちは!PR TIMES ソフトウェアエンジニアの河瀨翔吾(@shogogg)です。現在はバックエンド開発を主に担当しています。好きなゲームはマリオカートです。 今回は6月28日(土)に開催された PHP Conference Japan 2025にスポンサー、そしてスピーカーとして参加して来たことのご報告です! 【】 PHP Conference Japan 2025 は2000年に第1回が開催され今年で26回目、25周年という歴史ある PHP 開発者向けのイベントです。例年通り大田区産業プラザPiOで開催されましたが、同会場は7月から大規模改修工事が始まる... -
1年間EMとして取り組んだことと悩みや葛藤
開発
こんにちは、フロントエンドエンジニアの小張(@kobari41257)です。 今年の4月までの1年間、社内昇格としては初のEM(エンジニアリングマネージャー)職として、開発部のマネジメントに取り組んだことについてご紹介します。 【EM就任当初の状況】 当時30人近いメンバーをCTOである金子さんが1人でマネジメントしている状態でした。 これはマネージャー1人がマネジメントできる人数規模を大きく超えており、必然的にメンバーとの1on1の頻度が少なくなったり、会社の技術的な意思決定などの重要な仕事に対しても思... -
Amazon FSx for NetApp ONTAPで手動バックアップおよびリストアを行うTips
開発
こんにちは。バックエンドエンジニアの筒井(@tsuttsun_wind)です。 PR TIMESではファイルストレージとしてAmazon FSx for NetApp ONTAP(以降、FSx)を利用しています。 通常は自動バックアップを行っていますが、「特定のタイミングでバックアップをしたい」や、「過去のバックアップから必要なタイミングでリストアしたい」といったケースが生じます。 この記事では、FSx上での手動バックアップの実行やリストアを行う際の具体的な手順と運用上の注意点を紹介します。 【FSxのバックアップについて】 FSxでは、... -
PR TIMES はPHP Conference Japan 2025に協賛・登壇します
カンファレンス
こんにちは。バックエンドエンジニアの中山です。 PR TIMESは、PHP Conference Japan 2025 にブロンズプランとして協賛します。 【PHP Conference とは】 PHP Conference は、国内の業界トップランナーによるPHP最新動向や、コアテクノロジーからPHP初心者向けセッションまで、40以上のセッションを届けるイベントです。 これからPHPをはじめる方から、さらにPHPを極めていきたい方まで幅広く楽しめるイベントになるようなプログラムが用意されています。 【開催日】2025年6月28日 (日) 【開催地】大田区産業プラ... -
happy-css-modulesからcss-modules-kitに移行しました
開発
こんにちは、フロントエンドエンジニアのやなぎ(@apple_yagi)です。 先月公開したエントリーでもご紹介した通り、PR TIMESのフロントエンドは現在CSS Modulesを使用してスタイリングを行っています。 https://developers.prtimes.jp/2025/05/09/migrate-from-emotion-to-css-modules/ 上記のエントリーではhappy-css-modulesを使用してCSS Modulesの型定義ファイルを生成していましたが、先日css-modules-kitに移行したのでご紹介します。 【】 css-modules-kitはCSS Modulesを便利にするためのツールキットで以... -
PR TIMESにおけるメールをSendGridで送信するように実装しました
開発
こんにちは、PR TIMESのバックエンドエンジニアのSongです。今回はPR TIMESにおけるメールの一部をSendGridで送信するようにしたことについて紹介します。 【背景】 PR TIMESにおけるメールはPrTimesMailerというメール送信機能から送信され、Postfixを利用してSMTP経由で外部のメールサービスに送信して、実際の配信は外部のメールサービス経由で行っています。 PrTimesMailerが作成された話については、以下の記事をご覧ください。 https://developers.prtimes.jp/2022/11/28/refactoring-email-sending-feature...
