江間 洋平 - Author -
株式会社PR TIMES 開発本部 バックエンドエンジニア
-
t-wadaさん直伝・TDDワークショップを開催して、社内にテスト文化が芽生え始めた!
開発 江間 洋平こんにちは、バックエンドエンジニアの江間です。先日、テスト駆動開発(TDD)の日本での第一人者として知られる和田卓人(@t_wada)さんをお招きして、オンラインでテスト駆動開発ワークショップを開催しました。【抱えていた課題感】もともとPR TIMESには自動テストを書いていく文化がありませんでした。2022年初頭あたりから徐々に自動テストを追加するようになって来ましたが、テストを書く経験が浅いメンバーが多く、何となくテストコードを書いている状況でした。メンバーとしては、テストを書こうとしても、... -
PHP カンファレンス2022に参加・登壇しました!&スポンサー裏話
開発 江間 洋平こんにちは PHPer の江間です。先日(10/24、 10/25)に開催された PHP カンファレンス 2022 に PR TIMES はゴールドスポンサーとして協賛しました。そして、弊社からは2名のエンジニアが登壇してきました。https://developers.prtimes.jp/2022/09/05/lets-go-phpcon-2022/こちらの記事では、登壇内容や参加レポート、スポンサーを行った裏話などをお話したいと思います。【登壇内容】ローンチから16年目のWebサービスに、どうやってフィーチャートグルを導入したか、運用しているかhttps://speakerdeck.com/meihe... -
PostgreSQL で無停止リファクタリング 〜テーブルスキーマの変更〜
開発 江間 洋平こんにちは、バックエンドエンジニアの江間です。プレスキットと呼ばれる機能の MVP(実用最小限の製品: Minimum Viable Product)のリリースから半年以上経ちました。さらなる機能追加のために、提供する機能の動作は変更せず、テーブルスキーマの変更のリファクタリングを行う事になりました。この変更で API から呼び出している SQL も書き換える必要が出てきました。すると DB 側のテーブルスキーマの変更とアプリケーション側の変更を行う必要があります。両方の変更を反映させるために、メンテナンスを入れ... -
PR TIMES は PHP カンファレンス 2022 に協賛・登壇します。
開発 江間 洋平こんにちは、 PHPer の江間です。PR TIMES は PHP カンファレンス 2022 にゴールドスポンサーとして協賛します。そして、社内から2名のエンジニアが登壇します。【PHP カンファレンスとは】2000年より年に一度開催されている日本最大のPHPのイベントです。WEBサーバにインストールされているシェア8割を超える人気言語のイベントとして、初心者から上級者まで幅広い層のWEB系エンジニアが参加します。PHP Conference Japan 2022 協賛のご案内開催: 2022年9月24日(土)〜 9月25日(日)場所: 大田区産業プラザ Pi... -
New Relic ダッシュボード共有会 in PR TIMES
開発 江間 洋平こんにちは江間です。先日、New Relic さん主催で New Relic ダッシュボードの共有会が開催されました。この共有会では社内エンジニアが作成した・実際に利用している New Relic ダッシュボードを紹介し、作成のポイントや、運用してみてどうだったかを共有しました。また、New Relic さんからダッシュボード作成にあたってのTipsなどを教えていただきました。この記事では、今回の共有会で紹介した PR TIMES 社内で実際に使われているダッシュボードを、社外にも New Relic ダッシュボードの活用事例として共有し... -
「学生向けPR TIMESハッカソン2022春」を開催しました
チーム体制 江間 洋平こんにちは、バックエンドエンジニアの江間です。2021年3月24日(木)〜25日(金)にかけて、23卒向けの採用ハッカソンを開催しました。今回のハッカソンに参加いただいた学生の皆さん、ご参加ありがとうございました!ハッカソンの結果発表および、ハッカソンの模様をご紹介します。【学生向けPR TIMESハッカソンとは】学生向けPR TIMESハッカソンは、「PR TIMES」の100万件を超えるプレスリリースデータをAPIを使って取得し、当日集まった学生による即席のチームで新規サービスや新規機能を開発するイベントです... -
企業ページの表示速度を改善しました
開発 江間 洋平こんにちは、バックエンドエンジニアの江間です。ある日、一通のメッセージが届きました。ネタバレをすると、ある API が実行している SQL がスロークエリになっており、そのレスポンスが返ってくるまで DOM のレンダリングが行われていない事が原因でした。この記事では、 New Relic Application Performance Monitoring (APM) を使ったスロークエリの特定と、それを実際にどうやって解決したのか、更に速度改善を行ってAPIの平均レスポンスタイムを約5.78倍にした話についてを書いていきます。【まずは当たりを... -
S3 を活用して工数を削減させた、ファイルアップロード機能の設計と実装
開発 江間 洋平こんにちは、開発本部・バックエンドエンジニアの江間です。先日、 PR TIMES の新規機能としてプレスキット機能の提供が開始されました。プレスキット機能では、画像コンテンツや PDF などのファイルのアップロード・ダウンロード、サムネイル画像の自動生成など機能を提供しています。PR TIMES のソースコードはレガシーな PHP で書かれており、少しの機能追加であっても工数が増大したり、これまで通りに実装していくと技術的負債が増えてしまう恐れがありました。また、アップロードされるファイルの容量が大き... -
カヤック x PR TIMES 合同技術勉強会を開催しました
開発 江間 洋平こんにちは、バックエンドエンジニアの江間です。11月4日にカヤックさんとオンラインで合同勉強会が開催されました。カヤックさんのブログにも記事が投稿されているので、ぜひご覧ください。https://techblog.kayac.com/with-prtimes-study【イベント内容】PR TIMES CTOのcatatsuyさんのツイートを発端に、この合同勉強会の開催が決まりました。https://twitter.com/catatsuy/status/1443543890611474433テーマは「blogでは書けないちょっと生々しい話」です。実際の業務で直面した、ツイートやブログには書きにく... -
本番環境で新機能・旧機能を自由に切り替えたい
開発 江間 洋平こんにちは、開発本部でバックエンドエンジニアをしています。江間です。IPアドレスとCookieを使って、機能の切り替えが出来る仕組みを実装したので、それについてお話します。【導入の背景】1度のリリースでの変更箇所を少なくしたいこれまで変更内容が大きいリリースを行う場合、数カ月間メインのブランチから独立して作業を行ってきました。しかし、このやり方では以下の様な問題がありました。変更箇所が多いので、コンフリクトが起こりやすくなる作業ブランチ間に依存関係が生じて、ブランチの関係性が複雑...
1