ブックマーク / tech.andpad.co.jp (68)

  • Go界隈で巻き起こった go:linkname 騒動について - ANDPAD Tech Blog

    お久しぶりです、ANDPADボードの tomtwinkle です。 この記事はGogo:linkname 騒動は 6/18に行われた Go Bash で話した内容を要約したものです。 そもそも go:linkname とは何かといえば internal packageやprivate var/funcなど普通はアクセスできないオブジェクトシンボルをエイリアス出来るようCompilerに指示して、アクセス可能にするcompiler directiveです。 go:linkname はprivateな変数へアクセス可能な便利なものでしたが unsafe packageのimportを必須とする通り、せっかく互換性や安全を考慮して作られているGoプログラムを簡単に破壊できる諸刃の剣でした。 詳細は発表スライドを見てください。 go:linkname 禁止騒動 Go 1.23 のリリースまで2

    Go界隈で巻き起こった go:linkname 騒動について - ANDPAD Tech Blog
  • アンチウイルスソフト Antivirus for Amazon S3 を本番環境に導入してみてわかったメリット・デメリット - ANDPAD Tech Blog

    こんにちは。SREチームの吉澤です。 アンドパッドでは最近、AWSのS3バケット上のファイルをスキャンするために、アンチウイルスソフト Antivirus for Amazon S3 を番環境に導入しました。その結果、私たちの要件はほぼ全て満たされたうえに、従来比で大幅なコスト削減を実現できました。 Antivirus for Amazon S3について日語で書かれた記事はまだ少ないですが、S3に対するウイルススキャンが求められるケースでは、導入を検討する価値があるソフトです。 そこで、今回はこのAntivirus for Amazon S3の概要、私たちが番環境に導入してみてわかったメリットやデメリット、そしてこのソフトが適した状況をご紹介します。 背景 S3に対するウイルススキャンが必要な理由 Antivirus for Amazon S3の導入前に利用していたソフト Antiv

    アンチウイルスソフト Antivirus for Amazon S3 を本番環境に導入してみてわかったメリット・デメリット - ANDPAD Tech Blog
  • MySQLのSQLクエリチューニングの要所を掴む勉強会を開催しました! - ANDPAD Tech Blog

    こんにちは!DBREの福間(fkm_y)です。先月、弊社でデータベースの技術顧問をして頂いてる三谷(mita2)さんに開発部向けの「MySQL SQLチューニング」勉強会を実施していただきました。 今回はMySQLの得意不得意なことの説明やSQLチューニングの流れ、具体的な事例を元にした対応例、また最近話題のHTAPな製品も紹介していただきとても参考になったのでポイントをおさえてレポートをお伝えします! 開催背景 MySQL の得意なこと、苦手なこと データベースのチューニング手段と特徴 SQLチューニングの流れ インデックス SQLチューニング例 インデックスフルスキャンとカバーリングインデックス ソート まとめ 当日の資料 さいごに 過去開催されたデータベース勉強会レポート 開催背景 弊社では三谷さんによるデータベース勉強会を定期的に開催しています。数年前にも同じテーマで勉強会

    MySQLのSQLクエリチューニングの要所を掴む勉強会を開催しました! - ANDPAD Tech Blog
  • プロダクト開発を行いながらOSS活動も緩くやる - ANDPAD Tech Blog

    ANDPADボード プロダクトテックリードの土屋(tomtwinkle)です 先日CHIYODA Tech #3 にLT枠で参加してきました! CHIYODA Techとは、千代田区にオフィスを構える企業が運営・登壇するLTイベントです。 今回は弊社9Fのイベントスペースで開催させていただきました! アンドパッド以外にKINTOテクノロジーズさん、日経済新聞社さん、スタディストさんがLTで参加されていました。 他社さんのLTも拝見させてもらって皆さんそれぞれOSSに対する様々な想いや課題を感じているんだなと勉強になりました。 LT後みんなでスナックミーさんから提供頂いたスナックをつまみに飲みながらテーブル毎に思い思いに喋るアンカンファレンスも非常に楽しかったです。 LT内容について 今回私が発表させてもらったLTについて少しだけ解説させていただきます。 speakerdeck.com ア

    プロダクト開発を行いながらOSS活動も緩くやる - ANDPAD Tech Blog
  • Ruby のメモリ使用量問題を調査し upstream で解決していただいた話 - ANDPAD Tech Blog

    はじめに こんにちは。リアーキテクティングチームの髙橋と申します。 この記事では、アンドパッドの施工管理サービスで利用している Ruby をバージョンアップしたときに発生したメモリ使用量の問題の発生から解決までをお話しします。 Ruby のバージョンアップ(3.0 -> 3.2) アンドパッドでは昨年 2023 に、施工管理サービスで利用している Ruby を 3.0 から 3.2 にバージョンアップしました。 バージョンアップ自体は過去に確立済みの手法(詳しくは過去記事をご参照ください)により、粛々と進められリリースされました。 ところがこのリリースから数日後、とある問題が発覚しました。 メモリ増大問題 アプリケーションのリソース使用状況を監視している SRE チームのメンバーから、以下のような連絡がありました。 Ruby バージョンアップのリリース以降、アプリケーションの利用するメモリ

    Ruby のメモリ使用量問題を調査し upstream で解決していただいた話 - ANDPAD Tech Blog
  • 新規プロダクトの開発に Nuxt 3 を採用して良かったこと - ANDPAD Tech Blog

    ANDPADフロントエンドエンジニアの小泉です。 昨年の夏頃、担当したプロダクトで新規リポジトリでの開発を立ち上げる機会があり、Nuxt 3 を用いて構築を行いました。 アップデートではなく新規で Nuxt 3 サイトを構築するのは業務としては初めての経験だったのですが、Vue 3・Nuxt 3 の様々な機能によって、型安全な状態を保ったまま快適な開発を進められ、かつ3ページの全体実装を約7営業日で形にすることができました。 この記事では、「いま新規サービスのゼロからの立ち上げにNuxt 3を選択するとどんな嬉しいポイントがあるのか」という実例をご紹介できればと思います。 担当したプロダクトについて ANDPAD資料承認 | 製品のご紹介 2023年10月にリリースされた「ANDPAD資料承認」という、資料の申請・承認を一元管理する機能のフロントエンド開発を担当しました。 ただし、紹介サイ

    新規プロダクトの開発に Nuxt 3 を採用して良かったこと - ANDPAD Tech Blog
  • 開発現場の貢献実感のためにできること - ANDPAD Tech Blog

    はじめに この記事はANDPAD Advent Calendar 2023 25日目の記事です。 こんにちは、アンドパッド代表の稲田です。 今回は、アンドパッドが取り組む、2024年の業界課題と、PdM / エンジニア / デザイナー / QA / CRE など開発チームに感じてほしい、アンドパッドの提供価値と、貢献実感についてのお話です。 少しでも、社会課題解決に貢献できるワクワクをお伝えできたらな、と思います。 アンドパッドが取り組む建築・建設業界 建築・建設業界は、 50 兆円を超える巨大な市場でありながら、生産性が低い産業の一つと言われています*1。 また、労働者の高齢化や、新規入職者の減少による人手不足が顕著で、 DX や SaaS での生産性の向上が急務と言われています。 日の骨太な課題に深く長く取り組むのが、アンドパッドです。 建築・建設業界の2024年問題が迫る そんな中

    開発現場の貢献実感のためにできること - ANDPAD Tech Blog
  • Ruby フルタイムコミッタの仕事報告 2023年Q4 - ANDPAD Tech Blog

    こんにちは hsbt です。RubyConf Taiwan 2023 の登壇から帰国して後はバルダーズ・ゲート3をプレイして年を越すのみ...! とは行かず、Ruby 3.3.0 のリリースに向けて最後の準備作業をしている真っ最中です。 さて、今回はANDPAD Advent Calendar 2023の20日目として、今年1年私がプログラミング言語 Ruby の開発のために手を動かしてきた内容の中からテックブログやカンファレンスで発表していない内容をまとめてご紹介します。 default gems から bundled gems への変更の目的 私は数年前から Ruby に元々添付されていたライブラリ(標準添付ライブラリ)を default gems と呼ばれる gem としてもインストールやアップデートができる状態にし、そこからさらに bundled gems と呼ばれる Ruby

    Ruby フルタイムコミッタの仕事報告 2023年Q4 - ANDPAD Tech Blog
  • MetaQuest3をモニターとして業務活用してみた - ANDPAD Tech Blog

    こんにちは、バックエンドエンジニアをしています武山 (bushiyama) です。 この記事は ANDPAD Advent Calendar 2023 の 3日目の記事です。 これはなに Meta Quest 3 + MacBook Pro(M1 Max) でコーディング作業環境を整えてみた一例です。 手順や技術的観点は薄く、利用感にフォーカスしたレビュー的記事かと思います。 good 中堅ディスプレイ1枚分のお値段で購入できる MetaQuest3 ひとつで VR/MR 空間に 1~5 画面が設置できるので、これはコスパが良いと言わざるを得ません。 画質もとても良くなっており、コーディングに支障のないレベルになっています。 場所を選ばない作業環境 デスクでもコタツでも作業可能。分離KBなどあると寝ながらでもいけるんじゃないでしょうか。 オフィスやカフェなど人目がある場所は...まだ勇気が

    MetaQuest3をモニターとして業務活用してみた - ANDPAD Tech Blog
  • Ruby フルタイムコミッタの仕事報告 2023年Q2-3 - ANDPAD Tech Blog

    こんにちは、hsbt です。前回のエントリからしばらく経ってしまい、引き続き原神や崩壊・スターレイルをプレイしつつ、アサシンクリード・ミラージュやスパイダーマン2など、ホリデーシーズンに向けたゲームラッシュでいよいよ時間がなくなってきました。 今回は RubyKaigi 2023 以降、主に 2023 年の夏から秋にかけての Ruby のフルタイムコミッタの活動についてご紹介します。 Euruko 2023 への登壇 今年の夏は Ruby 体や RubyGems や Bundler の開発はもちろんのことですが、9月に開催された Euruko 2023 の登壇の準備が中心になりました。Euruko とはどういうカンファレンスなのかを知らない方のために簡単に紹介をします。 Ruby の国際カンファレンスには日で開催される RubyKaigi 、米国で開催される RubyConf などがあ

    Ruby フルタイムコミッタの仕事報告 2023年Q2-3 - ANDPAD Tech Blog
  • KubernetesのPodを事前にスケールアウトする仕組みをCronJobで実装し、ジョブの処理遅延を低減した話 - ANDPAD Tech Blog

    1. はじめに こんにちは、SWEのあかりです。 今回は、SREの角井さん(@cass7ius)と一緒に、Kubernetes(以降、K8sと表記)のPodを事前にスケールアウトする仕組みをK8sのCronJobで構築したので、その実装背景・技術選定・実装方法について実例を紹介します。 この記事を読んで得られるものは以下の3点です。 Podを事前にスケールアウトさせて、ジョブの遅延を低減した実例 技術選定時に行った定性分析の実例 Podからkubectlコマンドを実行する実装例 2. 前提の説明 掲題の実装対象は施工管理サービスであり、これは社内で最も古くから稼働しているモノリシックなRailsアプリケーションです。施工管理サービスのおおよそのインフラ・技術構成は下図の通りになっています。 施工管理サービスのインフラ構成図 上図の通り、施工管理サービスはEKSクラスター上で稼働しており、お

    KubernetesのPodを事前にスケールアウトする仕組みをCronJobで実装し、ジョブの処理遅延を低減した話 - ANDPAD Tech Blog
  • E2Eテストの運用を属人化しないための3つの取り組み - ANDPAD Tech Blog

    はじめに こんにちは。QCの佐藤です。 月日が経つのは早いもので、QCメンバーも増え、多くのメンバーがブログを書いてくださっており嬉しい限りです😊*1 ANDPADで韻を踏む - ANDPAD Tech Blog アンドパッドラップの作り方 - ANDPAD Tech Blog QAがGoで始めるテストデータ作成の自動化 - ANDPAD Tech Blog ANDPADのQualityControlを紹介します!2023 - ANDPAD Tech Blog 私がブログを書いたのはもう2年前...(徐々に間隔が長くなっている...) 今回は私の担当しているプロジェクトでの、E2Eテスト管理・運用方法についてお話します。 以下のような課題ってE2Eテストあるあるですよね (´;ω;`) E2Eテストの運用が属人化してしまっている... むか~しに作ってからはただ回しているだけ... テス

    E2Eテストの運用を属人化しないための3つの取り組み - ANDPAD Tech Blog
  • AWS Security Hubコントロールの有効無効をコード管理するのは予想のN倍大変だった話 - ANDPAD Tech Blog

    こんにちは。SREチームの吉澤です。2023年3月にアンドパッドに入社し、最近は主にセキュリティ関係の改善に取り組んでいます。 SREの経験としては、アンドパッドへの入社前からSREとして働いており、雑誌に寄稿したり、個人ブログを書いたり、SREの勉強会に運営スタッフとして長年参加したりしてきました。9/29(金)開催のSRE NEXT 2023にも、運営スタッフとして参加しています。SRE NEXT 2023には、アンドパッドもブロンズスポンサーとして参加しています! そこで今回は、SRE NEXT 2023のCFPに応募したネタ(今回、競争率すごく高かったんですよね……)を育てて、1つ記事を書いてみました。CFP落選供養スペシャルです。 背景 AWS Security Hubとは アンドパッドでのSecurity Hubの活用 目的 実現方法 課題 Security Hubのコントロー

    AWS Security Hubコントロールの有効無効をコード管理するのは予想のN倍大変だった話 - ANDPAD Tech Blog
  • データパッチ環境と有事の際のログイン環境をサーバレス化・コンテナ化した取り組み - ANDPAD Tech Blog

    1. はじめに こんにちは、SWEのあかりです。 今回のテーマは、SRE NEXT 2023のCall For Proposals(CFP) に応募したものの、残念ながら不採択になってしまったものです。話せるネタとしてはまとまっていたので、テックブログとしてここに捧げます😇 2. 記事の概要 社内で最も古くから稼働している施工管理アプリでは、主にデータ修正と有事の際のログイン環境として開発者向けのEC2インスタンス(以降、「バッチサーバ」と表現)が存在していました。この記事では、このバッチサーバの廃止1を目的として、このサーバが担っていた役割をサーバレス環境・コンテナ環境へ移行し、EC2インスタンスからの脱却を達成した取り組み2について説明します。 この記事を読んで得られることは以下の通りです。 EC2インスタンスを廃止する取り組みの流れ 技術選定時に定性分析を行う事例 番データを修

    データパッチ環境と有事の際のログイン環境をサーバレス化・コンテナ化した取り組み - ANDPAD Tech Blog
  • 3,000枚の工事写真を Excel に!AWS Lambda の非同期実行で作る写真台帳 Excel 出力機能 - ANDPAD Tech Blog

    0. はじめに こんにちは、SWE のやなせです。 暑い日が続きますね。この記事を書いている日の最高気温は34℃だそうです。34℃という数字を見てもすっかり慣れてしまった自分に驚きました。 今回は自分が所属する施工案件管理チームで一番ホットな、2023年7月にリリースした「写真台帳 Excel 出力機能」の概要と、その実装時に直面した技術的課題について紹介します。 1. 施工案件管理と写真台帳作成について 私の所属する施工案件管理チームでは、ANDPAD のコア機能である施工案件管理を開発・保守しています。 工事現場では、施工前から完成後まで多くの写真を撮影し、工事が適切に施工されたことを証明するために、その写真を写真台帳で管理・提出する必要があります。 ANDPAD の案件管理機能には「写真台帳出力機能」があり、ANDPAD に保存した写真をもとに、この写真台帳を Web 上で作成・編集

    3,000枚の工事写真を Excel に!AWS Lambda の非同期実行で作る写真台帳 Excel 出力機能 - ANDPAD Tech Blog
  • RuboCop RSpecからRuboCop CapybaraとRuboCop factory_botが切り出されたけど結局どうすればいいの? - ANDPAD Tech Blog

    こんにちは、 ydah です。最近はというと、料理への情熱が再燃してきました。一時期は作った料理を全て写真に残していたりとしていたのですが、いつの間にか記録を何も残さなくなっていました。何かしら記録を残すことで、前回よりも味も見た目も良くしようと思えるので、記録を残していくようにしたいと思います。やっていくぞ〜!! トマトとタコのパスタの近影 はじめに 5/11-13 に長野県松市 まつもと市民芸術館 で開催された RubyKaigi 2023 の Lightning Talks で、 RuboCop RSpec チーム*1と RuboCop RSpec から、 RuboCop Capybara と RuboCop factory_bot を gem に切り出した話をしました。 rubykaigi.org 当日の発表スライドは以下です。 この記事では RuboCop RSpec を現在使

    RuboCop RSpecからRuboCop CapybaraとRuboCop factory_botが切り出されたけど結局どうすればいいの? - ANDPAD Tech Blog
  • 「なんとなくスクラム」を見直して改善に取り組んだらチームの意識が変わった - ANDPAD Tech Blog

    はじめに はじめまして、アンドパッドSWEの小川です。 アンドパッドの開発組織では、アジャイル開発の手法を取り入れたチームづくりや開発プロセス改善に関する取り組みが盛んに行われています。 今回は、私が所属する施工案件管理チームで最近行った取り組みについて紹介したいと思います。 背景 これまでも、チームの開発プロセスにはアジャイル開発のフレームワークであるスクラムの手法を取り入れていました。たとえば、開発タスクはカンバン上で管理し、会議体としては毎日の朝会、週ごとのスプリントプランニングとレトロスペクティブを行っていました。 しかしながら、実際にはスクラムガイド記載の内容に従っておらず、「なんとなくスクラム」をやっているだけという面がありました。 たとえば、スクラムガイドが定義するスプリントプランニングはスプリントに実施するタスクを決定するための会ですが、我々の実施していた会では仕様や機能に

    「なんとなくスクラム」を見直して改善に取り組んだらチームの意識が変わった - ANDPAD Tech Blog
  • Ruby フルタイムコミッタの仕事報告 2023年Q1 - ANDPAD Tech Blog

    こんにちは、hsbt です。前回のエントリで触れたウィッチャー3は一段落しましたが、気の迷いから原神を初めてしまい無限に時間が溶けています。RubyKaigi 2023 が近づいて来ているのにこれはまずい。 今日は前回の Ruby フルタイムコミッタになってからやったこと、の定期報告シリーズとして、2023年のQ1にフルタイムコミッタとして行った仕事の一部をご紹介します。 Ruby のリリースについてのご紹介 まず、今回の仕事内容に入る前に2023年2月18日に開催された福岡Rubyist会議03で発表した、Ruby のリリースにまつわる課題をまとめたスライドをご紹介します。 上記スライドでは、毎年、または不定期に行っている安定バージョンのリリース時に発生していた、発生している課題について原因と対策、対策の結果生まれた新たな課題のループについて解説をしています。今回は発表では深くは触れなか

    Ruby フルタイムコミッタの仕事報告 2023年Q1 - ANDPAD Tech Blog
  • ANDPAD のデザインシステム 「Tsukuri」 の Web 向け実装について - 方針と全体像の紹介 - ANDPAD Tech Blog

    この記事の概要 デザインシステム 『Tsukuri』の Web 向け実装『Tsukuri for Web』を開発中です 変更しやすくするために構成要素の依存関係を考慮した構造を検討しました コンポーネントの実装は Web Component を利用し、Vue.js と React にも対応します アイコンやデザイントークンに対応する実装は Figma から取得したリソースを元に生成します 1. はじめに 2022/08/16 に入社しました、Web フロントエンド開発を中心に行っている寺島です。 私は入社してから現在に至るまで、アンドパッドのデザインシステム 『Tsukuri』 の Web 向け実装である 『Tsukuri for Web』を開発しています。 この記事では以下について紹介します。 Tsukuri および Tsukuri for Web の背景 現在行っている開発のベースとな

    ANDPAD のデザインシステム 「Tsukuri」 の Web 向け実装について - 方針と全体像の紹介 - ANDPAD Tech Blog
  • Ruby フルタイムコミッタの仕事報告 2022年12月 - ANDPAD Tech Blog

    こんにちは、hsbt です。先日、Podcast を収録した際に紹介した PS5 のウィッチャー3がまだ終わらずに引き続き時間を費やしています。いつになったら終わるのでしょう。 今日は前回の Ruby フルタイムコミッタになってからやったこと、の定期シリーズということで 2022年12月にフルタイムコミッタとして行った仕事の一部をご紹介します。 ソフトウェア開発におけるアーカイブの重要性 Ruby に限らずソフトウェア開発において、コードの Why と Why not を把握できる状況を維持することは、自分だけではなくソフトウェアに関わるチームメンバー全員にとって、継続的な開発を行うための重要な取り組みです。 コードには How テストコードには What コミットログには Why コードコメントには Why not を書こうという話をした— Takuto Wada (@t_wada) 2

    Ruby フルタイムコミッタの仕事報告 2022年12月 - ANDPAD Tech Blog