タグ

ブックマーク / developers.freee.co.jp (6)

  • freeeの自動テストの全体構成 - freee Developers Hub

    こんにちは、Software Engineer in Qualityチーム(通称SEQチーム)の @teyamagu です。 私たちのチームは普段自動/手動テストの基盤開発や開発フィードバックサイクルの高速化に向けた開発をおこなっています。 その一環で、先日、社内でfreeeの自動テストシステム全体像を共有したのですが、この辺りのことを社外の友人達と話したところ、自動テストの具体的な構成や普段の運用など事例が少なく、どんなことをやっているのかイメージしにくいとの話を伺ったので、社内向け原稿をちょっと手直しして、おすそ分けと言うことで、ここで紹介します。 特に変わったことをおこなっているわけではありませんが、自動テストの関係性の理解に参考になれば幸いです。 基的な考え方 自動テストが既存のデプロイ・リリースのブロッカーではなく、開発のフィードバックを加速させるために、自動テストそのものが高

    freeeの自動テストの全体構成 - freee Developers Hub
  • EKS環境下でコストが増大する事例とfreeeのアプローチ - freee Developers Hub

    はじめまして。freee の SRE チームに所属している nkgw (Twitter) です。 普段はエンジニアリングマネージャーをしつつ、開発チームの新規プロダクトリリースサポートをやっています。 我々のチームは大部分のプロダクトのコンピューティングリソース (CPU / Memory など) を Amazon Elastic Kubernetes Service (EKS) で実行できるようにインフラ基盤移行 (EC2 → EKS) を進めてきました。 移行プロジェクトの大部分は 2021 年 7 月に無事終わったのですが、移行スケジュールを最優先としたため割り当てている各リソースはかなり保守的 & 過剰でした。 (移行後の性能劣化が怖かったため、EC2 時代と比較し、1.5 倍のバッファを積むなど... etc) コスト増大したグラフ その結果、 去年と比較して、コストが倍以上に跳

    EKS環境下でコストが増大する事例とfreeeのアプローチ - freee Developers Hub
  • MySQLでIN句の中に大量の値の入ったクエリがフルスキャンを起こす話 - freee Developers Hub

    こんにちは、freee Developers Advent Calendar 2021、19日目のid:shallow1729です。昨日はtdtdsさんで【マジで】サイバー演習シナリオの作り方【怖い】でした!障害訓練後に攻撃方法を解説された時はリアリティの高さに驚きました。 僕はMySQLを使っていて発生した不思議な挙動の調査の話をしようと思います。 今回問題となったクエリ 今回話題にするクエリは以下のようなシンプルなものです。 SELECT * FROM hoge WHERE id IN (...) MySQLのパラメーター次第ですが、デフォルトの設定だとこのIN句の中の値の数が数万になると適切なインデックスが用意されていてもフルスキャンが発生する事がありました。このクエリがテーブルのほとんどのレコードを網羅するような場合や高速でレコードを大量にinsertして統計情報が追いつかないケー

    MySQLでIN句の中に大量の値の入ったクエリがフルスキャンを起こす話 - freee Developers Hub
  • アクセシビリティー研修でスクリーンリーダーの音声を届けるために - freee Developers Hub

    こんにちは、id:ymrlです。この記事はfreee Developers Advent Calendarの2日目です。 先日の記事で、全従業員向けのアクセシビリティ研修を紹介しました。 developers.freee.co.jp この研修でとても大切にしていることのひとつに 「スクリーンリーダー(画面読み上げソフトウェア)の操作を実演する」 というものがあります。多くの人にとって「視覚的に見るもの」であるWebが、視覚障害の当事者にはこういう形になっているということを見て(聞いて)もらうことが、新たな視点を持つキッカケになることを期待してのことです(もちろん、中根さん(@ma10)が研修をやっているから特に説得力があるというのもあります)。 研修では中根さんがWindowsでNVDAを、私はmacOSでVoiceOverをそれぞれ実演しています。この記事では私の手元でやっていることを紹

    アクセシビリティー研修でスクリーンリーダーの音声を届けるために - freee Developers Hub
  • Rubyの型チェッカーのSorbetを導入しました - freee Developers Hub

    申告チームでテックリードをやらせてもらっている id:nanjakkun です。 freeeではfreee会計をはじめ多くのプロダクトがRuby on Rails(以下Rails)のアプリケーションとして実装されています。 日々の開発の中で、Rubyでも静的な型の解決ができればなあと思うことがあります。 ということで、Rubyの型チェッカーのSorbetをfreee申告に導入してみました。 Sorbet(ソルベ)とは sorbet.org 決済代行サービスのStripeを運営しているStripe社が公開している漸進的型チェッカーです。 ※余談ですがfreeeアプリストアではStripeを決済手段としたアプリの有料販売ができます。 developers.freee.co.jp 有料アプリ販売の準備をする | freee Developers Community 漸進的型付けとは 漸進的型付け

    Rubyの型チェッカーのSorbetを導入しました - freee Developers Hub
  • 2020年、freeeのアクセシビリティを振り返る - freee Developers Hub

    この記事はfreee Developers Advent Calendar 2020の18日目です。 こんにちは、freeeの@magi1125こと伊原です。自称「アクセシビリティで一発当て太郎」です。アクセシビリティによるビジネス貢献を模索していますが、最近は「いつ当てるの?」と聞かれて悩んだりもしています。もうちょっと待って。 この記事ではタイトル通り、2020年のfreeeにおけるアクセシビリティ関連の出来事をご紹介します。なお、2019年以前の活動については「2019年、freeeのアクセシビリティを振り返る」をご覧ください。 developers.freee.co.jp ※アクセシビリティの向上とは、障害者高齢者を含めた幅広いユーザーに利用方法の選択肢を提供し、使える状況を広げる取り組みを指します。 腕力の限界と停滞 freee Developers Advent Calenda

    2020年、freeeのアクセシビリティを振り返る - freee Developers Hub
  • 1