WHITEPLUS TechBlog

株式会社ホワイトプラスのエンジニアによる開発ブログです。

リファクタリングの道しるべ:依存関係を理解して効率的に学ぶ

こんにちは! ホワイトプラスのコアシステム開発Gエンジニアのさとうです。 プロダクトコードの改善や技術的負債の返済に役立てようと、書籍「リファクタリング 既存のコードを安全に改善する」を読みました。 これまでリファクタリングという大きなくくりで…

PHP Conference Japan 2023に参加してきました

こんにちは、ホワイトプラスのコアシステム開発グループでエンジニアリングマネジャーをしているinouehiです。 今年のPHP Conference Japanは久々に完全オンサイト開催でした。というわけで、スポンサーとしてブース出展する傍ら生でトークを楽しんできまし…

PHPカンファレンス2023に参加・登壇してきました

こんにちは、テックリードの仲見川です。 2023/10/08に行われたPHPカンファレンスに参加・登壇してきました。 チームとして取り組んでいるクレジットマスター対策について「クレジットマスターとの戦い*1」と題してお話させて頂きました。 スライドはこちら …

PHP Conference Japan 2023に登壇・協賛します。

こんにちは、ホワイトプラスCTOの森谷です! 2023年10月08日(日)に開催されるPHP Conference Japan 2023にシルバースポンサーとして5年連続、今年も協賛します。 そして、昨年1に引き続き、今年も当社エンジニアが登壇予定です。 今年は4年ぶりのオフライ…

LaravelでHTTPテストを実装しました

はじめに こんにちは、ホワイトプラスのコアシステム開発Gのエンジニアのyamauchiです。 今回、新たにHTTPテストを実装したため、実装時に発覚した問題とその解決法を共有したいと思います。 HTTPテストとは HTTPテストとは、擬似的なHTTPリクエストを生成し…

Webpackの詳細なビルドログを出力する

こんにちは、CX開発Gでエンジニアをしているn-black-catです。 弊社の一部のプロダクトではWebpackを利用してビルドを行っていますが、使用している箇所のビルド時間が長くなっていることが社内で話題に上がりました。 問題の原因を探るために、Webpackのビ…

リリース前に実行されるCloudBuildの実行時間を1/3に改善する

ホワイトプラスの基盤チームのakaimoです。 lenetではwebサービスの実行にGKEを使用していて、リリースを行うにはDocker Imageを作成する必要があります。また、リリースの前には他にも行わなければならない処理があり、それらを合わせてGCPのCloudBuildで実…

OpenTelemetry で始める分散トレース

こんにちは!ホワイトプラスのコアシステム開発グループでエンジニアをやっている古賀です。 昨今、オブザーバビリティという言葉を耳にすることが増えましたね。オブザーバビリティとは、システムの状態をどれだけ理解し説明できるかを示す尺度です。 近年…

コード品質のモニタリングに「Qodana」を導入してみた話

はじめに こんにちは、CX開発グループでWeb開発を担当している德廣です! 本記事では、JetBrains社が開発した静的コード解析ツール「Qodana」をコード品質のモニタリングツールとして導入した時の話をまとめました。 弊チームでも「Qodana」の導入は試験段階…

PHP8.1のEnumと独自実装のEnumを比較して移行できるか検討しました

はじめに こんにちは、ホワイトプラスでテックリードをしている仲見川です。 PHPにも8.1でついにEnumが導入されました。 ホワイトプラスではこれまでTraitを用いて独自にEnumを実装してきたのですが、今後PHP8.1のEnumに置き換えるために違いを検証しました…

ChatGPTと書籍で学んだリファクタリングを比較してみた

はじめに こんにちは、ホワイトプラスのコアシステム開発G エンジニアのyamauchiです。 この記事ではChatGPTがどれくらいリファクタリングに活用できるのか確認するため、書籍「リファクタリング 既存のコードを安全に改善する」から学んだリファクタリング…

リアクティブシステムのケーススタディ

こんにちは。ホワイトプラスのエンジニアの古賀です。 私がシステム開発をする中で意識している(意識したい)考え方の一つに、リアクティブシステムというものがあります。 最近、設計について聞かれた時にこの考え方の話をする機会があり、改めて意識しキ…

技術書ビブリオバトルを開催しました!

こんにちは!ホワプラでEMをしている田中Dです。 社内で「技術書ビブリオバトル」が開催されたので、その様子をお届けします。 ビブリオバトルとは? ビブリオバトルとは、自分が面白いと思った本を持ち寄って5分間で順番に紹介し、その発表についてそれぞれ…

CircleCIのセットアップワークフローを使った差分ビルドで効率的にCIを回す

こんにちは。ホワイトプラスでエンジニアをやっている古賀です。 lenet ではCIの一つとしてCircleCI を使っており、静的解析・フォーマットチェック・ユニットテスト(フロントエンド・バックエンド)などを実行しています。 CIにpush するたびに全てのテス…

【勉強会レポ】CircleCIのハンズオン勉強会が開催されました!

こんにちは! ホワイトプラスのエンジニアの田中Dです。 社内で「CircleCIのハンズオン勉強会」が開催されたので、その様子をお届けします! (※ 勉強会を主催してくれたのは、画像の上から三番目、コアシステム開発グループの古賀さんです!) 開催の経緯 …

全エンジニアを対象としてGitHub CopilotとChatGPTを導入しました

はじめに 弊社では、エンジニアチームの生産性向上と質の高いソフトウェア開発を目指し、最先端の技術を積極的に取り入れています。 このたび、GitHub Copilot と ChatGPT を弊社の開発環境に導入することにしました。これらの技術を活用することで、エンジ…

コミュニケーション、ドキュメンテーション、textlint

はじめに こんにちは、ホワイトプラスのコアシステム開発グループでエンジニアリングマネジャー(EM)をしているinouehiです。 私はエンジニアの仕事の中で重要な位置を占めるコミュニケーションに興味を持っています。今回はその中でも、ドキュメントによる…

アドベントカレンダーまとめ

qiita.com qiita.com qiita.com qiita.com qiita.com qiita.com qiita.com

エンジニアの目標設定の実例とポイント

はじめに こんにちは! ホワイトプラスのWeb開発チームでエンジニアリングマネージャ(EM)をしている田中Dです。 EMとしてメンバーの目標設定や達成に向けた支援をしています。 本記事では、弊チームでの目標設定のやり方・考え方をまとめました。 目標設定が…

スクラム内での改善や技術的負債の返済への取り組み方

はじめに こんにちは、WHITEPLUS エンジニアリング部 CX開発Gのhirasushiです。 CX開発Gでスクラムマスターをしています。 この記事では、現在のスクラム開発体制の中で、改善や技術的負債の返済にどう取り組んでいるかを紹介します。 改善/技術的負債への姿…

ホワイトプラスのエンジニアリングを取り巻く変化の四方山話 v2022

この記事はWHITEPLUS Advent Calendar 2022 最終日になります。 こんにちは、ホワイトプラスCTOの森谷です。 実に4年ぶり*1にアドベントカレンダー最終日に、筆ならぬキーボードを取ることになり、何を書こうかなと思案していたのですが今年はエンジニアリン…

E2Eテストサービスの導入をしなかった話

この記事はWHITEPLUS Advent Calendar 2022の24日目の記事です。 はじめに こんにちは、ホワイトプラスでテックリードをしている仲見川です。 今回は本番でのコードの変更が原因となる障害が続けて発生したため再発防止策としてE2Eテストサービスの導入を検…

ホワイトプラスでのエンジニアによる障害対応体制

これはWHITEPLUS Advent Calendar 2022の23日目の記事です。 はじめに こんにちは、WHITEPLUS エンジニアリング部 CX開発Gのhirasushiです。 本日は、ホワイトプラスでのエンジニアによる障害対応体制について紹介いたします。 導入経緯 今までも現在でも、…

育休を後押しする文化とチームづくり

この記事はWHITEPLUS Advent Calendar 2022の20日目の記事です。 はじめに こんにちは、ホワイトプラスのコアシステム開発グループでエンジニアリングマネジャー(EM)をしているinouehiです。 先日第二子を授かり、8〜9月の2ヶ月間、育児休業(育休)を取得…

エンジニア向けの社内勉強会の参加者の気づき

この記事はWHITEPLUS Advent Calendar 2022の17日目になります はじめに こんにちは ! ホワイトプラスのWeb開発チーム所属でエンジニアをしている峯下です。 ホワイトプラスには2021年4月に新卒として入社しました。 ホワイトプラスでは勉強会や読書会、座談…

PHPのエラーを理解してLaravelのエラーハンドリングをカスタマイズする

こんにちは。ホワイトプラスでエンジニアをしている古賀です。 弊社が採用している言語の1つにPHP(FWはLaravel)があり、定期的にバージョンアップを行なっています。 PHP8.0の下位互換性の無い変更の一つに、多くのWarningがError例外に変換されるようにな…

DDD実装におけるチームの正解を見つける話

この記事はCalendar for WHITEPLUS | Advent Calendar 2022 - Qiitaの 7日目の記事です。 はじめに こんにちは、ホワイトプラスのWeb開発チーム所属でエンジニアをしている德廣です! ホワイトプラスには今年の3月に入社、この記事は入社2ヶ月目ぐらいのオン…

モックの認識がフワッとしているため調べてみた

この記事は Calendar for WHITEPLUS | Advent Calendar 2022 - Qiita の8日目の記事です。 こんにちは、ホワイトプラス エンジニアの山内です。 この記事ではテストコードに関連する概念の一つであるmock(モック)とは何かについて自分が理解するまでの過程…

エンジニアが産休・育休を取って復職した話

これはWHITEPLUS Advent Calendar 2022の6日目の記事です。 はじめに こんにちは、WHITEPLUS エンジニアリング部 CX開発Gのhirasushiです。 私は去年から今年にかけ産休・育休を取得し、今年の8月にフルタイムで復職しました。 この記事ではその経験を共有し…

エンジニアの生産性可視化ツールをうまく使うコツ3選

この記事はCalendar for WHITEPLUS | Advent Calendar 2022 - Qiitaの3日目の記事です。 はじめに こんにちは! ホワイトプラスのWeb開発チームでエンジニアリングマネージャをしている田中Dです。 弊社ではエンジニアの生産性可視化ツールを導入しており、…