SODA Engineering Blogのフィード

https://zenn.dev/p/team_soda

株式会社SODAの開発組織がお届けするZenn Publicationです。 是非Entrance Bookもご覧ください! → https://recruit.soda-inc.jp/engineer

フィード

記事のアイキャッチ画像
[テスト自動化の落とし穴]テストシナリオ実装は2段階ある!
はてなブックマークアイコン 1
SODA Engineering Blogのフィード
こんにちは。SODAでクオリティエンジニアをやっているokauchiです。今回は、テスト自動化でのハマりポイント、ステークホルダーとのコミュニケーションでの落とし穴を紹介します! テストシナリオ作成完了=運用開始可能?E2Eテスト自動化の仕組みの導入が進み、作成すべきテストシナリオも抽出が出来、「よーし、ここからはひたすらにテストシナリオを作っていくぞ」というところまで進みました。ノウハウや共通処理がない中でも自分達が手動でやっていくものが自動化されていく様はなかなかに爽快です。ちょっと長めのテストシナリオを作ったら誰かに自慢したくなったり、5つぐらいテストシナリオを作ったら、こ...
6日前
記事のアイキャッチ画像
2024年のふりかえり、顕在化した大きな課題、2025年の目標
SODA Engineering Blogのフィード
はじめに\スニダンを開発しているSODA inc.の Advent Calendar 2024 25日目の記事です!!!/こんにちは、SODAでCTOをしています @rinchsan です。この記事では、SODAのエンジニア組織における今年の大きなトピックをいくつか紹介しつつ、今後の課題も話したいと思います。 2024年は準備の年でした CTO室のスタート今年9月、機械学習や生成AIなどを有効活用して非連続な価値創出の実現を目指す、CTO室というチームを立ち上げました。2024年のCTO室の活動としては、まだまだ準備段階な部分が多く、CTO室としての最初の大きな成果...
8日前
記事のアイキャッチ画像
今さらMySQL8の新機能を眺めてみる
SODA Engineering Blogのフィード
!\スニダンを開発しているSODA inc.の Advent Calendar 2024 25日目の記事です!!!/ はじめにみなさんこんにちは。メリークリスマス🎅弊社が提供するサービスSNKRDUNKは先日ようやくMySQL8にアップグレードが完了しました。どのようにアップグレードを行なったかについては弊社SREチームが公開してるこちらの記事をご覧ください(近々日本語記事も公開されると思います)https://qiita.com/dangminhduc/items/4cd579a5c741f744d83bせっかくアップグレードされたので新機能を使っていこうという思い、...
9日前
記事のアイキャッチ画像
PythonでI/Oバウンドな並行処理を一括でタイムアウトさせる
SODA Engineering Blogのフィード
\スニダンを開発しているSODA inc.の Advent Calendar 2024 23日目の記事です!!!/ 概要PythonでI/Oバウンドな処理を並行で実行し、一定時間経過後に一括でタイムアウトさせる方法を紹介します。PythonでI/Oバウンドな処理を並行で実行する際によく利用されるコンポーネントとして、スレッド(threading)とコルーチン(asyncio)があります。スレッドベースの並行処理は、スレッドを停止させる機能が提供されていないため、一括で処理をタイムアウトさせることが難しいです。一方、asyncioで用いられるコルーチンを使うと比較的楽に一括のタイム...
11日前
記事のアイキャッチ画像
モジュール分割の進捗どうですか?
SODA Engineering Blogのフィード
\スニダンを開発しているSODA inc.の Advent Calendar 2024 22日目の記事です!!!/ この記事は何?以前、イベントストーミングを実施して、3日間で境界づけられたコンテキストを定義した話という記事を記載して8ヶ月ほど経過しました。あっというまですね。この8ヶ月の間にモジュール分割の全体像を改めて整理したので、進捗と合わせて書いていこうかなと思います。 前提バックエンド開発には大きく分けて2つの問題があります。 日本とグローバルのインフラとアプリケーションコードが分離されている弊社の技術スタックとしては上記のようになっております。見...
11日前
記事のアイキャッチ画像
AWS re:Invent で登壇してきました
SODA Engineering Blogのフィード
\スニダンを開発しているSODA inc.の Advent Calendar 2024 21日目の記事です!!!/ ラスベガスで開催された re:Invent に登壇してきました米国ラスベガスにて2024年12月2日〜6日で開催された AWS re:Invent に登壇してきました。人生で一度も出来ないと思っていた本当に貴重な経験ができて、登壇のお話をいただいたAWSさんには大変感謝しています!Speaker って書いててカッコいい!登壇の様子。下向いてる・・・ レポートブログも書いていただきましたre:Inventに参加されていたクラスメソッド社の とーち さんに...
12日前
記事のアイキャッチ画像
Flutterアプリをもっと楽に速く開発したいのでリポジトリ構成に手を入れようとした話
SODA Engineering Blogのフィード
\スニダンを開発しているSODA inc.の Advent Calendar 2024 20日目の記事です!!!/ はじめにSODAではここ1,2年の間に新機能開発に携わるFlutterエンジニアが4人から9人へ拡大し、日々機能開発や運用作業に力を注いでいます。私たちは主にSNKRDUNKというアプリを運用しており、実はJP版とGlobal版が存在しています。これら2つのアプリケーションを運用する中で直面する問題にどのように対処していくか紹介します。 問題の背景SNKRDUNKは現在2つのリポジトリで機能開発を進めています。JP版の開発チームの方が規模も大きく開発が先...
14日前
記事のアイキャッチ画像
DIの起源から遡ってDIを理解する
SODA Engineering Blogのフィード
\スニダンを開発しているSODA inc.の Advent Calendar 2024 19日目の記事です!!!/ はじめにDIと聞いてなんとなくで理解している方はいませんか?言うまでもないかもしれませんがDIとはDependency Injectionのことであり、日本語では一般的に依存性注入と訳されることが一般的です。弊社ではちょうどモジュラーモノリスを想定したバックエンドのモジュール分割を行っています。モジュール分割において、DIどうするといったトピックがあったので調べてみました。この記事ではDIについて起源から遡り、ふわっとした理解の解像度を高めることを目的とします...
15日前
記事のアイキャッチ画像
僕のFlutterパッケージがGitHubで100⭐️になって嬉しかった話
SODA Engineering Blogのフィード
!スニダンを開発している SODA inc.の Advent Calendar 2024 17 日目の記事です 📝 SODA inc.でsnkrdunkを開発している@natsukazeです!この記事では、自分が公開したFlutterのプラグインパッケージ[1]Galがリリースから1年半ほど経過し、有難いことにpub.devで320likes、1ヶ月で7万DL、GitHubで100starsと順調に成長してきたので、思い出を交えつつ振り返っていきます!OSSやプラグインならではの話をしていきますので、是非最後までお付き合い下さい!いいねが多いと、アドベントカレンダーの景品が...
17日前
記事のアイキャッチ画像
[E2Eテスト自動化]データの掃除はE2Eじゃなくて良い?
SODA Engineering Blogのフィード
こんにちは。SODAでクオリティエンジニアをやっているokauchiです。最近のテスト自動化での気づきをメモがてら紹介します! テストシナリオの掃除はE2Eテストでやる必要がある?E2Eテストシナリオで生み出して二度と使わないデータを量産していませんか?一時的に作成をしただけでその後は二度と参照がされないようなデータです。スニダンの自動化で言うと出品や取引、アカウントなどが該当しますね。二度と使われないのであれば残しておく必要もないし、逆にあることで不便になることが多いです。情報の検索性が下がったりするので。これをついついE2Eで対処してしまおうとしてしまった時の話です! E2...
17日前
記事のアイキャッチ画像
AI使わずにgomockでGoテスト生成
SODA Engineering Blogのフィード
この記事を質問から始めましょう:ユニットテストのテストケースを作成するのが好きですか?問題ないと感じる人もいるかもしれませんが、大量のモックを必要とする場合、テストケースの作成を好まない人もいるでしょう。エンジニアなので、このプロセスをコンピューターに自動化させてみてはいかがでしょうか?この記事では、AIを使用せずに、常に決定論的な結果を得られる方法でユニットテストケースを生成するアプローチを探ります。 テスト生成とはテストジェネレーターは、SEがテストケースを手動で作成する手間を大幅に軽減する便利な手段を提供します。これらのツールには、簡単な実装のものから非常に高度なソリューシ...
18日前
記事のアイキャッチ画像
MagicPodのステップのコピペを時短する
SODA Engineering Blogのフィード
\スニダンを開発しているSODA inc.の Advent Calendar 2024 15日目の記事です!!!/こんにちは。SODAでクオリティエンジニアをやっているokauchiです。今回はMagicPodでステップのコピペをより効率的に出来ないかを考えてみた記事になります! あの処理をコピペしたいけど、あの処理はどこにあったっけ?ノーコード自動化ツールを使った日々のテストシナリオ作成の中で、過去に作った一部のステップをコピーして利用したり、コピーしたステップをベースにテストシナリオを作成することはありませんか?どんなに簡単な処理でも1からまた作るとtypoなどで不具合を埋め...
18日前
記事のアイキャッチ画像
部分的にGoのテスト速度向上
SODA Engineering Blogのフィード
Goにはとても堅牢なファーストパーティのテストシステムがあり、他の言語に比べてテストが高速に実行できるのが特徴です。でも、大規模なコードベースになると、テストが遅くなったり非効率になったりすることがあります。特にCI環境では、テストが遅いとコストがどんどん増えてしまうことも。この記事では、Goの重要なコードを効率よく、選択的にテストする方法について見ていきます。 部分的にテストとは選択的テストとは、「重要な」コードだけをテストする方法です。「重要なテスト」とは、以下の条件のいずれかを満たすテストとして定義できます:テスト対象のコードが変更された。テスト対象のコードが変更された...
20日前
記事のアイキャッチ画像
【Flutter】Riverpod開発チートシート2024保存版
SODA Engineering Blogのフィード
\スニダンを開発している SODA inc.の Advent Calendar 2024 13日目の記事です!!!/ ごあいさつこんにちは、Flutterアプリエンジニアの一木です。FlutterのRiverpodで開発したときに使えそうなコードなどをメインでまとめました。個人開発や業務でも使えるかもしれないコード早見表として参考になればと思います。Flutterの実行環境は整っているものとして、自分が個人でも使っている開発を便利にしてくれるプラグインなども紹介していきます! 00実行環境編IDEはVSCodeFlutterのバージョン管理ツールはasdfriver...
21日前
記事のアイキャッチ画像
Google CloudのiPaaS「Application Integration」でファイル転送を自動化する
SODA Engineering Blogのフィード
\スニダンを開発しているSODA inc.の Advent Calendar 2024 12日目の記事です!!!/📣 みなさん! GCPはGCPではなくなり、Google Cloudとなりました(2022年6月)いまだにGCPという表記を見かけるので気をつけましょうお客様のエクスペリエンスをシンプルにし、プロダクト間の一貫性を保つために、Google Cloud Platform は Google Cloud という名称になりました。引用元: Google Cloud の新しくなったホームページのご紹介 はじめに株式会社SODA CPOのkjです (自己紹介は文末に)...
22日前
記事のアイキャッチ画像
負けカンスウが多すぎる!
SODA Engineering Blogのフィード
\スニダンを開発しているSODA inc.の Advent Calendar 2024 11日目の記事です!!!/この世には神クラスという言葉が存在します。一つのクラスに余りにも多くの機能を持たせてしまい、肥大化して手の施しようがなくなったクラスに付けられた蔑称のことです。時に肥大化するものはクラスだけではありません。オブジェクト指向の言語ではクラスが肥大化しがちですが、Goのようなオブジェクト指向ではない言語では関数が肥大化しがちです。そんな思春期の自尊心の如く肥大化した関数たちのことを、欠陥が多すぎて開発者から敬遠されてしまう関数たちのことを、ここでは親しみを込めて負け関...
23日前
記事のアイキャッチ画像
Goのビルドキャッシュを使ってCIを7分短縮した話
SODA Engineering Blogのフィード
SODA inc. Advent Calendar 2024, Go Advent Calendar 2024に寄稿させていただきました。 はじめにCIで動く統合テストが異様に遅いので調査したところ、テスト本体ではなくソースコードのビルドに時間が掛かっていることがわかった。そこでビルド時に生成されるキャッシュをGitHub Actionsに保存させることで時間を短縮させた。この記事ではGitHub Actionsでビルドキャッシュを使い回す方法と、テスト時のビルドに掛かる時間を調べる方法を説明する。 GoのビルドキャッシュをGitHub Actionsに保存する方法 概要...
24日前
記事のアイキャッチ画像
より良いユーザー体験を求めて "Haptics(触覚フィードバック)" を深掘りする
SODA Engineering Blogのフィード
!\スニダンを開発しているSODA inc.の Advent Calendar 2024 9日目の記事です!!!/みんな素敵な記事を書いているので是非購読してください!ボタンをタップした時、スワイプした時、アプリのコアな体験をした時・・・Haptic Feedbackがうまく設計されているアプリは、触っていて心地よい感覚になります。この記事では、今のプロダクトを少しでも良くするために、押した時だけではない、Haptic Feedbackの使い所Haptic Feedbackの"鮮明さ"を微調整しようMacOSでもHaptic Feedbackを使おうこれは良い!と感...
25日前
記事のアイキャッチ画像
An adventure in Vue 3’s custom render function
SODA Engineering Blogのフィード
\スニダンを開発しているSODA inc.の Advent Calendar 2024 8日目の記事です!!!/Hi! I’m Albert, full stack engineer from SODA’s Global team. Our team works on the global version of SNKRDUNK here:https://snkrdunk.com/enLet me take you to an adventure I stumbled upon when working with Vue 3 custom render function. ...
1ヶ月前
記事のアイキャッチ画像
From Bash to Go: A Journey in Self-Documenting Development Environment
SODA Engineering Blogのフィード
\スニダンを開発しているSODA inc.の Advent Calendar 2024 7日目の記事です!!!/Ever stared at a years-old bash script and wondered what ancient developer secrets it holds? We've all been there. This is the story of how we transformed our development environment setup from a collection of mysterious bash incantations...
1ヶ月前