コネヒト開発者ブログ

コネヒト開発者ブログ

2022-01-01から1年間の記事一覧

A/Bテスト標準化へ取り組んだ話

ML

みなさんこんにちは!機械学習チームのたかぱいです。 半年ほど前からA/Bテストの標準化に取り組んでいたので、本日はその背景やプロセスについてご紹介しようと思います。 尚、以下メルカリさんの事例を参考にさせていただいています(この場を借りて御礼申…

コネヒトにおける機械学習関連業務の紹介資料を公開します

ML

更新履歴 2022-07-25:初版作成 2023-02-06:検索関連の業務を追加 2023-04-01:新規産学連携の事例を追加 2023-12-12:社内での活用事例と機械学習の技術検証を追加 コネヒトでは Tech vision の1つに 1 to 1 AI というStrategyを掲げているように、今後パ…

Firebase AnalyticsからBigQueryへの日次データ同期が突如不規則になった事象に対応した話

こんにちは。インフラエンジニアの永井(shnagai)です。 今回は、Firebase AnalyticsからBigQueryへの日次データ同期処理の時間が大幅にずれた際に取った対策について書こうと思います。 内容はざっくり下記3点です。 背景説明 Firebase AnalyticsからBigQuer…

CakePHP Fixture Factories を導入しました

こんにちは。プロダクト開発部の @su-kun1899 です。 今回はママリの CakePHP アプリケーションに Fixture Factories を導入した事例を紹介します。 Fixture Factories とは何か Fixture Factories は、モデルやデータベースに依存するテストコードにおいて…

2022年7月最近のスマイル制度活用事例

コネヒトには「スマイル制度」という制度があります。これは開発組織でのインプットとアウトプットの活性化を促進する制度です。とてもコネヒトらしい制度になっているので、詳しくはスマイル制度 - Connehito Tech Visionや、制度が生まれた当時の記事をご…

社内Go勉強会を始めました

Go

こんにちは!Webエンジニアのaboyです。最近はママリの検索体験を最高にする仕事をしています。 今回は、最近コネヒト社内でやっているGo勉強会の取り組みを紹介します。 なぜGo勉強会を始めたか コネヒトが掲げるTech Visionの戦略の内のひとつ「Let’s Go」…

ECS×Fargateのオートスケールをチューニングしてサービス運営費を削減した話

こんにちは。インフラエンジニアの永井(shnagai)です。 今回は、ECS×Fargateで運用しているサービスの「ターゲット追跡ServiceAutoScalling」をチューニングをしたことで、費用が約半分になるという大きな成果を残すことが出来たのでその内容を経緯と共にま…

コネヒトはPHPerKaigi 2022にゴールドスポンサーとして協賛します!

こんにちは!@otukutun です。今回は弊社が協賛し、弊社社員が登壇するイベントを紹介します。 PHPerKaigi 2022に協賛いたします コネヒトではメインプロダクトである「ママリ」を始めとして開発のメイン言語としてPHPを活用しており、フレームワークとして…

【永久保存版!】プロジェクトリーダー必見!!チームふりかえりを最高に楽しいものにするたった一つの方法【リモートワーク対応】【2022最新版】

こんにちは ohayoukenchan です! 4月と言えば新生活。コネヒト株式会社も4月から、経営体制を一新し新たなスタートを切りました。 今期も心機一転して頑張っていきたいと思います。 この記事では先月末に開催した下期(6ヶ月)のチームふりかえりで行ってと…

コネヒトの文化が生み出すスキルアップを支える社内LTイベント

こんにちは。2017年11月にAndroidエンジニアとしてjoinした@katsutomuです。 前回のエントリーで、髪の毛のアップデート予定について触れましたが、重い腰を上げて予定を決めました。4/3を予定しています。 さて今回は、先日社内で実施したLTイベントの技術…

SwiftUIでUIを宣言的にかけるようになりコードを書くのが楽しいぞい

こんにちは、ohayoukenchanです。 今回はSwiftUIについてです。 ママリではiOS13をサポートしているので、一部iOS13をサポートする内容が含まれます。 システムを長持ちさせる力 突然ですが、コネヒトのエンジニアリング組織はTech Visionというものを掲げて…

SageMakerとStep Functionsを用いた機械学習パイプラインで構築した検閲システム(後編)

皆さん,こんにちは!機械学習エンジニアの柏木(@asteriam)です. 今回は前回のエントリーに続いてその後編になります. tech.connehito.com はじめに 後編は前編でも紹介した通り以下の内容になります. 後編:SageMakerのリソースを用いてモデルのデプロ…

Jest + react-testing-library でフロントエンドテストをコツコツ積み上げている話

こんにちは。コネヒト歴7ヶ月目のWebエンジニアの古市です。 私の所属するチームではReactで構築されたCMSを開発しています。 Atomic Designに則り、コンポーネントを Atoms/Molecules/Organisms/Pagesの区分で作成しています。このうち、Atoms,Molecules,Or…

Win Sessionで元気に目標を達成するチームづくり

こんにちは、コネヒトでエンジニアをやっているあぼ(aboy)です ԅ( ˘ω˘ԅ) 今回は私の所属するテクノロジー推進部というチームで実施しているWeekly Win Session(ウィンセッション)について紹介したいと思います。始めてから5ヶ月ほど経ち、チームのイベントと…

既存プロダクトのCakePHPのアップグレード戦略

既存プロダクトのCakePHPのアップグレード戦略 こんにちは。サーバーサイドエンジニアをやっている西中です。 花粉症に悩まされているので最近空気清浄機を購入しました。こころなしか症状が緩和している気がしています。 前回はCakePHP4.3にアップグレード…

SageMakerとStep Functionsを用いた機械学習パイプラインで構築した検閲システム(前編)

皆さん,こんにちは!機械学習エンジニアの柏木(@asteriam)です. 今回はタイトルにもあるようにモデルの学習からデプロイまで一気通貫した機械学習パイプラインをSageMakerとStep Functionsで構築し,新しく検閲システムを開発したお話になります. こち…

コネヒトの機械学習プロジェクトにおける構想フェーズ・PoCフェーズの進め方

ML

みなさんこんにちは。機械学習チームのたかぱい(@takapy0210)です。 最近はワールドトリガーというアニメにハマっておりまして、2022年から第3期の放映が始まっております。 内容はよくあるバトルアニメですが、チームで戦略を練って戦うところがユニーク…

PHPStanを0.11から1.4へメジャーアップデートした際の知見

こんにちは!webエンジニアの高谷です。 弊社ではCakePHPなどの社内のプロジェクトで使われているフレームワークやライブラリのアップデートを定期的に行っています。 その一環でママリのアプリ内で使用されているwebviewのCakePHPを3.8から4.0にアップデー…

Android版ママリアプリのリファクタ事情 ~時刻テスト編~

こんにちは。2017年11月にAndroidエンジニアとしてjoinした@katsutomuです。 前回のエントリーから、髪の毛はアップデートされておりません。そろそろ予定を立てないとな〜と思いつつ、重い腰が上がりません。 さて今回は、時刻テストに関するリファクタリン…

Sass から styled-components に移行している話

こんにちは!エンジニアの富田です。 今回はママリのアプリ内で使われている WebView の Sass を一部 styled-components へ移行しましたので、その事例を紹介します。 特に真新しい情報はありませんが、1つの事例として読んでいただければ幸いです。 はじめ…

Canvas を使って画像をリサイズする

はじめに こんにちは! フロントエンドエンジニアの もりや です。 今回はママリのアプリ内で使われている WebView で、画像をリサイズする処理を Canvas で実装した事例を紹介します。 画像のリサイズが必要な理由 昨今のスマホのカメラで撮った画像は数MB…

AWS OpenSearchでの技術検証をスムーズにしたTIPS

こんにちは。インフラエンジニアの永井(shnagai)です 今回は3ヶ月ほど行っていたAWS OpenSearchの技術検証をしている中で、技術検証のスピードアップに貢献してくれたTIPSを2つご紹介出来ればと思います。 内容はざっくり下記2項目です。 ユーザ辞書やシノニ…

iOS/Android と WebView でデータを連携する仕組みを作りました

はじめに こんにちは! フロントエンドエンジニアの もりや です。 今回は、ママリアプリ内で iOS/Android と WebView 間でデータを連携する仕組みを作った事例を紹介します。 2021年6月頃に実装してリリースし、現在(2022年3月)も問題なく使えています。 …

1年間プロダクトゴールを運用していく中で行った3つの工夫

こんにちは。バックエンドエンジニアのTOCです。 弊社ではミッションごとにいくつかチームに分かれており、それぞれのチームでスクラム開発を行なっています。 (弊社開発体制についてはこちらの記事に詳しく記載があります) 今回は僕が所属しているチームで…

Android版ママリアプリのリファクタ事情 ~パッケージ構成編~

こんにちは。2017年11月にAndroidエンジニアとしてjoinした@katsutomuです。 前回のエントリーから、髪の毛はアップデートされておりません。そろそろ髪の毛切りに行ってさっぱりと4月を迎えたいと思っています! さて今回は、パッケージ構成のリファクタリ…

Google オプティマイズのリダイレクトテストを使ってABテストを実施する

こんにちは。 @otukutunです。 今回とあるキャンペーンサイトでGoogle オプティマイズのリダイレクトテストとCakePHPを連携して、すばやくABテストできる仕組みを構築したのでその方法について説明します。 Google オプティマイズとは Google オプティマイズ…

HimotokiからSwift.Decodableに徐々に移行させる

iOS

こんにちは!コネヒトでiOSエンジニアをやっていますyanamuraです。 コネヒトではAPIで取得したJSONをDecodeするのにHimotokiを使ってきましたが、Swift4でSwift.Decodableが追加されてからは新しいコードはSwift.Decodableを使っています。共存状態はのぞま…

Android版ママリアプリのリファクタ事情 ~ Google Play Billing Library 4導入編 ~

こんにちは。2017年11月にAndroidエンジニアとしてjoinした@katsutomuです。前回のエントリーから、髪の毛はアップデートされておりません。 さて今回は、Android版ママリアプリの課金機能にまつわるお話をお伝えできればと思います。 はじめに 2021 年 11 …

「こんなところも?」 CakePHP4・phpunitのアップグレードに伴う変更箇所

こんにちは! Webエンジニアをやっている西中と言います。 弊社では開発組織として運用しているサービスのフレームワークのアップグレード対応を定期的に行っています。 今回は私がCakePHP4.3対応をしていった中で躓いたポイントをいくつかピックアップして…

Webpack5 にバージョンアップしました。

こんにちは! フロントエンドエンジニアの もりや です。 今回はママリのアプリ内で使われている WebView の Webpack を v4 から v5 にアップデートしたので、その事例を紹介します。 Webpack5 は2020年10月にリリースされたので、特に目新しい情報はありま…