SPIDERPLUS Tech Blog

建設SaaS「スパイダープラス」のエンジニアとデザイナーのブログ

ログが助けるバグ調査

皆さん、こんにちは。

技術開発部のOです。
普段はWebエンジニアとしてフロントエンドやサーバーサイドの開発に携わっています。

この記事では、過去に対応したあるバグの調査・解決を通してアプリケーション開発においてログを確認すること・ログを保存しておくことの重要さをお伝えできればと思います。

稀に起きている静かな不具合

早速本題です。
某日、SPIDERPLUSのある機能が時折期待した動作をしなくなりました。

不具合を引き起こすデータでも100%再現できる訳ではなく、その時々によって問題なく動いたり想定外の動きをしたりと、ランダムに結果が変化するバグです。
ログを確認してもエラーが起きているわけではなく、また手元でもなかなか再現せず、手がかりがつかみにくい状況でした。

続きを読む

iframeをデータ受け渡しのために使ってみた

こんにちは、技術推進部の谷黒と申します。


スパイダープラスでは日々の業務での出来事や向き合った技術的課題を定期的にブログとして発信しております。
さて、今回はiframeをテーマにします。こちらは外部サイトなどをHTML内に埋め込みたい時などに使うことが一般的です。


ご存じの方もいらっしゃると思いますが、iframeはフレーム内の値をフレームの外の世界に渡すことができます。
今回、私たちはヘッドレスなAPIを使わずiframeをデータ受け渡し専用に用いた手法を採用し、機能開発を行いました。その方法を紹介いたします。

背景

私が開発を担当しているBIM(*Building Information Modelingの略で図面上により詳しい属性情報などがついたモデリングのこと)のサービスは、基本機能を提供するSPIDERPLUSとはマイクロサービス的な関係にあり、SPIDERPLUSとは独立したサーバーとして動作しています。

今回はSPIDERPLUSからBIMサーバーに対してcsvのダウンロード処理を依頼するという要件に対して、iframeとformを用いる手法を採用しました。

続きを読む

不具合分析始めました

皆様、はじめまして。品質管理チームのいのっちです。

ソフトウェア開発プロダクトにおいて、品質の維持と向上は非常に重要です。そのためには、不具合の早期発見と効果的な是正処置が必要不可欠です。
品質保証・品質管理の活動をより強化するため体制変更された品質管理チームでは、お客様からのフィードバックや開発工程で検出される不具合について、より詳細な分析をおこなうための取り組みを始めました。
このBlogでは今、進めている不具合分析活動について内容を共有したいと思います。

なぜ不具合分析が重要なのか?

すでに不具合分析をされている方やそんなの知っているという方には言わずもがなですが、不具合分析はソフトウェアの品質を高め、リリース後の問題を減少させるための重要なステップで、下記のような効果が考えられると思います。

続きを読む

プッシュ通知をFirebase Cloud Messaging(FCM)に移行した話

皆様こんにちは。スパイダープラス株式会社のプロダクトグループ技術推進部に所属する谷黒と申します。

GWが終わり梅雨に近づいてきました。新入社員の皆様は会社の空気に慣れてきた頃でしょうか。

さて、スパイダープラス株式会社では現場向けの「iOS/Androidアプリ」としてS+Partner(以下、SPP)のサービスを運用しております。このたびSPPのpush通知のサービスをFirebaseに移行いたしました。その件について今回お話させていただければと存じます。

モバイルpush通知のサービスの移行を検討している方に少しでもお役に足ればと思います。

背景

SPPは、主に建設現場での危険予知活動(KY)などに活用されているサービスで、ユーザー同士のコミュニケーションを強化するためにプッシュ通知機能を提供しています。

これまでプッシュ通知の実現には、ニフクラ mobile backend(ncmb)というサービスを使用してきました。しかし、ncmbのサービスが終了するとのことから、新たなサービスへの移行が必要となりました。

検討の結果、新しいプッシュ通知のプラットフォームとして、Firebase Cloud Messaging(FCM)を選びました。

なぜFCMを選定したか

続きを読む

やっぱりコードレビューはしたほうがいい、というお話

皆様こんにちは。プロダクトマネージャーの池田です。
私はゲーム機開発現場でプログラマーとして経験を積んだのちに漫画の編集会社でモバイルアプリ事業の立ち上げを経て、スパイダープラスに参加してからは建設の現場に関わるようになりました。
今回はスパイダープラスで実施しているコードレビューについて、私自身の経験も踏まえて書いていきます。

コードレビューなんて知らなかった頃のこと

さて、冒頭の自己紹介でも少し書きましたが、新卒でゲーム会社に入り、ゲームセンター用のゲーム機開発に携わりました。プログラマーとして経験を積み重ねていたある日、ゲームセンターでテストをする班に配属されたのですが、そこである日思わぬ経験をすることになりました。大規模クラッシュに遭遇したのです…!

続きを読む

ChatGPTに気付かされる「便利」と「説明下手」

非エンジニアでも可能な自動化!ChatGPTとGoogleAppsScriptで効率アップ

こんにちは!
CREチームのくっきーです。

突然ですが、日々の作業の中でやりたいことに対して工程が多く『面倒だな…』と思うことありませんか?
エンジニアの方々は自分たちの技術で自動化ツールの作成等を進めていくことでしょう。
しかし!非エンジニアは手段がなく我慢するなんてことも少なくはありません…
今回は私の所属していたテストチームで上がった『煩わしさ』を自分ではコードを書かずにChatGPTに書いてもらって解消しようというお話です。
今更そんな話?と思うかもしれませんが、お付き合いいただけると嬉しいです!

ある日の振り返り会にて

「テスト実行開始後のテストケース修正が面倒だ!」という議題が上がりました。
えっ?文字を修正するだけなのに面倒?と思った方もいらっしゃると思います。

何故面倒なのか? 

続きを読む

tmuxの右クリックメニューを日本語化する

1.はじめに

こんにちは、技術開発部の宮囿です。
唐突ですが、私はtmuxが好きです。急なWi-Fiの不調やLANケーブルの断線、割り込みで入ってきた打合せ等の様々なアクシデントがあっても、tmux上で作業しておくことで作業の中断・再開は思うがまま、tmuxは最高です。
私の業務は割り込みが多いので、私はtmuxの利便性をとても享受しています。そしてとても便利なので布教したいと思っています。

さて、tmuxを布教するにあたってハードルになっているのは操作を覚えるコストの重さだと思っているのですが、tmuxはこのハードルに対し、コンソールアプリでありながら右クリックメニューを実装するという解を提示しています。実際に使うと以下のような感じになります。

最高ですね。ベテランtmuxユーザーのような速度で操作できることが分かります。

これならtmuxを布教するのも簡単だ、と思ったのですが、メニュー上の表現がどうも目に馴染みません。
というわけでこれをより布教しやすくするため、この記事ではtmuxの右クリックメニューの日本語化を行っていきます。

続きを読む