コネヒト開発者ブログ

コネヒト開発者ブログ

コネヒトは PHP Conference 2022 に協賛します!

こんにちは!@TOC です。今回は弊社が協賛するイベントについて紹介します。 コネヒトは PHP Conference 2022 に協賛いたします コネヒトではママリを始め、社内の多くのプロダクトが PHP で開発されております(その他、技術スタックを知りたい場合は弊社テ…

AWS SESでハードバウンスのようなメールがソフトバウンス扱いで届いた場合のしくみと対処について

こんにちは、インフラエンジニアのささしゅう(@sasashuuu)です。 本日はAWS SESにおけるバウンスメール周りのお話をしようと思います。 タイトルにもあるように、ハードバウンスのようなメールがソフトバウンス扱いで届き、気になってサポートへ問い合わせ…

AWS Step FunctionsのRestoreDBClusterFromSnapshotだけではクラスタに紐づくインスタンスは作成されない

こんにちは、インフラエンジニアのささしゅう(@sasashuuu)です。 本日は、Step Functionsを用いてデータの同期更新システムを構築した際に少しだけハマったポイントについてご紹介です。 Step Functionsとは Step FunctionsとはAWSの各種サービスを組み合…

ニアリアルタイムで同期される検索基盤 ~パイプライン構築編~

皆さん,こんにちは!MLエンジニアの柏木(@asteriam)です. 今回は前回のエントリーに続いてその後編,パイプライン構築の話になります. tech.connehito.com はじめに 再掲になりますが,我々は以下の構成で今回の検索基盤を構築しています. 検索エンジ…

GitHub Actions & ecspresso を用いたデプロイフローの改善

こんにちは。サーバーサイドエンジニアの TOC です。 本日はコネヒト株式会社で取り組んでいる Super X という活動の一環である「デプロイフロー改善」の取り組みを紹介しようと思います。 本記事で紹介した改善以外にも、デプロイフロー改善チームで取り組…

オンボーディング改善に機械学習を活用する〜トピックモデルによる興味選択編〜

みなさんこんにちは。MLチームのたかぱい(@takapy0210)です。 ここ1年くらいPokémon UNITE というゲームにハマっていまして、何回か大会にも出場しているのですが、先日出場した大会の「おじさんの部 26歳以上の部」で準優勝することができました 若い頃の…

コネヒトはiOSDC Japan 2022に協賛いたします!

こんにちは、iOSアプリエンジニアのyanamura(@yanamura_)です! 本日は、iOSアプリ開発者の祭典iOSDC Japan 2022に協賛するお知らせです。 コネヒトはiOSDC Japan 2022に協賛いたします! iOSDC Japan 2022に、シルバースポンサーとして協賛いたします。 ios…

リモートワークでもIP制限があるツールを利用するためにSquidで簡易Proxyを用意した話

こんにちは。 コネヒトのテクノロジー推進部でインフラエンジニアをしている @laugh_k です。 先日リモートワークにおいても、共通の固定IPからのアクセスを実現するために Squidで簡易的なProxyを用意したので、そのときの話をまとめます。 TL;DR ビジネス…

ニアリアルタイムで同期される検索基盤を構築 ~AWS Glueによるデータ同期編~

皆さん,こんにちは!MLエンジニアの柏木(@asteriam)です. ここ最近は検索エンジン内製化プロジェクトに携わっていて,検索エンジニアとして,検索基盤の主にデータ連携・同期の実装を1から構築したりしていました.7月中旬にABテストまで持っていくこと…

AWS Distributed Load Testingを使うと手軽にAWS内での負荷試験が出来るという話

AWS

こんにちは。インフラエンジニアの永井(shnagai)です。 今回は、現在進めているプロジェクトでの負荷試験で、AWS Distributed Load Testing を使って比較的手軽にAWS内での負荷試験を行うことが出来たのでその内容を紹介しようと思います。 内容はざっくり下…

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

ML

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

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

ML

更新履歴 2022-07-25:初版作成 コネヒトでは 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つの事例として読んでいただければ幸いです。 はじめ…