an_posi0202のブックマーク (301)

  • 事業成長に応えるスケーラビリティの未来:UPSIDERの技術戦略 #UPSIDER_Tech - UPSIDER Techblog

    UPSIDERで2023年8月よりVPoEを務めている泉です。 先日、株式会社UPSIDERはシリーズDとして総額154億円の資金調達を実施いたしました。 調達した資金は、既存事業の拡大と新規事業の開発に投資いたします。 前回の投稿から少し時間が経ってしまっていますが、ちょうど良い節目なので、半期の振り返りと、今後の技術アジェンダについてお伝えしたいと思います。 prtimes.jp 上期のふりかえり この半年を振り返ると、期初に予想外の大きなインシデントが発生しました。利用者の皆さまにはご心配とご迷惑をおかけしたことを深くお詫び申し上げます。 その後は、再発防止を最優先に、開発プロセスやチェック体制の強化に力を注いできました。 そうした困難な状況にありながらも、事象に真摯に向き合いつつ、「果敢にチャレンジしている姿勢を評価したい」といった温かいお言葉を一部の利用者さまからいただくなど、多

    事業成長に応えるスケーラビリティの未来:UPSIDERの技術戦略 #UPSIDER_Tech - UPSIDER Techblog
  • タスク管理ツールはどれがいい? たまったタスクはどうしてる? みんなのお悩みを聞いてみた | 読者座談会:みんなのホンネ

    タスク管理ツールはどれがいい? たまったタスクはどうしてる? みんなのお悩みを聞いてみた | 読者座談会:みんなのホンネ
  • MySQL5系クライアントと8系クライアント混在時に発生する現象 | 株式会社ヌーラボ(Nulab inc.)

    こんにちは、ヌーラボの中村です。BacklogのGitチームで開発やメンテナンス、その他諸々をやっています。記事ではMySQLクライアントのバージョンアップの際に出くわしたおもしろい挙動を解説します。 概要 MySQL 5.7サーバーへの接続について、MySQL5系クライアントからMySQL8系クライアントへのバージョンアップを検証していたところ、特定のクエリだけ実行結果が0件になる現象が発生しました。(あるPerlのプログラムで5系のクライアントをサポートしていない環境があり、やむを得ずアップグレードを実施しました) インターネットで検索すると、「クエリに空白を入れる」「改行を追加する」などおまじないのような解決方法が散見されましたが、そんなはずはないと思い調査を進めました。 調査したところ、原因は以下の3つが合わさったことによるものでした。 MySQL 5.7ではクエリキャッシュが有

    MySQL5系クライアントと8系クライアント混在時に発生する現象 | 株式会社ヌーラボ(Nulab inc.)
  • 最高のテックブログを書くために気をつけている3つのこと | 株式会社ヌーラボ(Nulab inc.)

    こんにちは。ヌーラボのCacooチームの木村です。テックブログを書く上で個人的に気をつけていることを紹介します。 「せっかく苦労して記事を書いたのに全然読んでもらえない」「筋とは関係ないコメントが来て消耗してしまう」といった悩みはないでしょうか。それらはもしかしたら技術記事の書き方に原因があるかもしれません。 僕は普段進めている仕事に、ある程度の成果が出たら、そこで得た知見を会社のテックブログに記事としてまとめるようにしています。そのときには以下の3つのことを心がけています。 「なぜ」を徹底的に書く 読者の認知負荷を下げる 想定読者の知識レベル下げる そうすることで以下のような効果が期待でき、読者と著者だけでなく著者が所属する会社にとってもいい記事になると考えられます。 記事の内容が正確に読者に伝わる 読者にとって有益な情報を提供できる 著者(たち)の置かれている状況や抱えている課題が読

    最高のテックブログを書くために気をつけている3つのこと | 株式会社ヌーラボ(Nulab inc.)
  • 2段階認証でログインできなくなっちゃった!を防ぐ方法 | 株式会社ヌーラボ(Nulab inc.)

    バックアップの認証方法とは 2段階認証のバックアップとは、2段階認証のコードが受け取れなくなったときに「別の方法でログインする」設定です。 以下の認証方法があります。 バックアップコード SMS Eメール バックアップコードの取得手順 ここではバックアップコードの取得手順を紹介します。 ご自身の2段階認証の設定画面から取得できます。 バックアップコードについて ダウンロードもしくは印刷したバックアップコードファイルを確認しましょう。 以下のように、8桁の数字が10個並んでいるはずです。 この一つ一つがバックアップコードです。 バックアップコードは大切に保管しましょう ダウンロードした場合は、ファイル名を変更せず「nulab-backup-codes.txt」のまま、重要なファイルを保管するフォルダに置いておきましょう。 2段階認証に使っているデバイスとは別のデバイスで保管するようにしましょ

    2段階認証でログインできなくなっちゃった!を防ぐ方法 | 株式会社ヌーラボ(Nulab inc.)
  • Typetalkチームでのエンジニアとしての働き方 | 株式会社ヌーラボ(Nulab inc.)

    こんにちは、Typetalkチームのエンジニアをしている吉田です。これまでTypetalkチームでエンジニアとしてどう開発・運用を進めているかを、あまりまとめたことがありませんでした。自分たちの振り返りのためにも、Typetalkチームでエンジニアとしてどういう働き方をしているかをお伝えしたいと思います。 Typetalkとは Typetalkは簡単に言うとビジネスチャットツールです。弊社サービスのBacklogやCacooと連携して動作し、誰でも簡単に扱えるわかりやすいUIが特長です。詳しくはウェブサイトを確認してみてください。筆者はこのサービスの開発・運用チームに所属しています。 チーム構成 チームは以下のような役割をもったメンバーで構成されています。 プロダクトマネージャー 顧客に価値を届けるために、どういう機能を追加すべきかを考えたり、プロダクトとしての方向性を決めたりする仕事をし

    Typetalkチームでのエンジニアとしての働き方 | 株式会社ヌーラボ(Nulab inc.)
  • SAML入門

    【累計5000部突破(商業版含む)🎉】 SAMLaiの道は果てしなく険しい。 書では、SAML2.0で一般的に多く使用されるフローであるWeb Browser SSOのSP-initiatedとIdP-initiatedと呼ばれるものを中心に、SP側の目線でなるべく簡潔に解説します。 SAML認証に対応してほしいと言われても、もう頭を抱える必要はありません。 筆者自身も何もわからない状態からもがき苦しみながらSAML SPを実装し、数年間サービスを運用してきました。 そのつらい経験を踏まえて、SPを実装する上で今まで触れられることのなかった ・どういう設計が必要か? ・何を気をつけなければならないか? のエッセンスを詰め込みました。 SAMLはエンタープライズ用途では求められることが非常に多く、歴史もそれなりに長いものですが、実装する上で必要な体系的な情報はなぜかほとんどありません。

    SAML入門
  • スモールチームにおけるAutifyを用いた効率的なE2Eテストの自動化 | 株式会社ヌーラボ(Nulab inc.)

    こんにちは。BacklogのGit機能の開発を行っているテリーです。 今回はGitチーム(後述する僕の所属するチーム)でAutifyによるリグレッションテストの自動化を進めてみて感じたメリットと工夫したところ、苦戦したところを紹介したいと思います。 スモールチームの規模感とテストの現状 BacklogのGitチーム 長らくBacklogは固定のチームが専任で固定の機能をみるような体制になく、アプリケーションエンジニアが比較的流動的にBacklog全体の機能を担当しており、なんとなく“この人”は“この機能”が得意というような体制でした。 ですが最近のチーム編成により固定のチームが固定の機能を開発するようなフィーチャーチームがいくつかできました。Gitチームはその中で生まれたBacklogのGitの機能についての開発責任を持つチームです。チームメンバーは3人で、そのメンバーでインフラからフロン

    スモールチームにおけるAutifyを用いた効率的なE2Eテストの自動化 | 株式会社ヌーラボ(Nulab inc.)
  • お互いの違いを愛するヌーラボにとっての「ダイバーシティとインクルージョン」って? #ヌーラボのポリシー | 株式会社ヌーラボ(Nulab inc.)

    Norberg Johan(ヨアン) 株式会社ヌーラボ サービス開発部 Backlog課のソフトウェアエンジニア。 スウェーデン出身、日に住んで8年め。以前よりダイバーシティとインクルージョンに興味があったため、ヌーラボのD&Iポリシー策定にあたって自ら手を挙げ、プロジェクトを推進。 安立沙耶佳(アンヂェラ) 株式会社ヌーラボ 管理部 人事労務課。 2016年に人事としてヌーラボに入社。当初はヌーラボの多様な価値観に圧倒される。テレワークをきっかけに始まったヌーラボのコミュニケーション施策「Small Talk」の中でのヨアンさんとの会話をきっかけにD&Iポリシー策定を一緒に推進することを決意する。 ヌーラボにとって、ダイバーシティとインクルージョンは「すべての基礎」 メギー:「ダイバーシティ(多様性)」や「インクルージョン(包括性)」という言葉は、最近いろんなところで耳にしますね。 ア

    お互いの違いを愛するヌーラボにとっての「ダイバーシティとインクルージョン」って? #ヌーラボのポリシー | 株式会社ヌーラボ(Nulab inc.)
  • TypetalkのEC2インスタンスをインテルプロセッサからARMベースのAWS Graviton2に完全移行。性能向上と費用削減を実現 | 株式会社ヌーラボ(Nulab inc.)

    TypetalkのEC2インスタンスをインテルプロセッサからARMベースのAWS Graviton2に完全移行。性能向上と費用削減を実現 はじめに こんにちは。SREの二橋です。最近の楽しみは、キャンプと釣りの動画を見ながら、お家で妄想を膨らませることです。 この度、TypetalkのEC2のインスタンスをインテルプロセッサを搭載したM5系からARMベースのAWS Graviton2を搭載したM6g系に完全移行しました。そこで、Graviton2の概要から移行しようと思った理由、作業内容、移行の効果などをお伝えしたいと思います。 AWS Graviton2とは? Graviton2はAWSがArm Neoverse コアをベースに独自開発したプロセッサです。2020年夏にAmazon EC2で一般用途向け(M6gとM6gd)、コンピューティング最適化(C6gとC6gd)、メモリ最適化(R6

    TypetalkのEC2インスタンスをインテルプロセッサからARMベースのAWS Graviton2に完全移行。性能向上と費用削減を実現 | 株式会社ヌーラボ(Nulab inc.)
  • 運用中のPostgreSQLのスキーマを無停止で安全に変更する | 株式会社ヌーラボ(Nulab inc.)

    初めに こんにちは。ビジネスチャットサービスTypetalkを開発・運用している吉田です。Typetalkではデータの永続化ストレージとしてPostgreSQLを利用しています。扱うデータ量は多く、チャットというサービスの性質上書込み頻度はとても高いです。PostgreSQLを使い日々開発を進めていると、追加する機能によってはスキーマを変更する必要があります。メンテナンスを計画・告知してサービスを止めてしまえば、時間はかかるかもしれませんがスキーマの変更はそう難しくありません。しかしTypetalkはユーザーが日々の業務を進めるために利用しており、サービスが止まるとコミュニケーションが取れなくなります。業務を円滑に進めるためのビジネスチャットツールですので、極力サービスは止めたくありません(最後の計画メンテナンスは2019年6月30日で1年以上前となっています。)。記事では以下の3つのケ

    運用中のPostgreSQLのスキーマを無停止で安全に変更する | 株式会社ヌーラボ(Nulab inc.)
  • 「“良い会社アピール”のためではない」ヌーラボがたった1週間でカスタマーハラスメント方針をつくった理由 |HR NOTE

    ヌーラボはなぜ、カスタマーハラスメント対策の表明を出すに至ったのか? ー日はよろしくお願いします。まずはカスタマーハラスメントの一般的な定義について教えてください。 橋さん:カスタマーハラスメントとは、簡単に言うと「お客様からのいやがらせ」です。 『職場のパワーハラスメント防止対策についての検討会報告書』によると、顧客や取引先からの暴力や悪質なクレームなどの迷惑行為については、労働者に大きなストレスを与えることから、無視できない状況だと問題提起されています。 しかし、取引先顧客に対してハラスメント行為を指摘することは非常に勇気のいることです。実際に、社内向けのハラスメント対策と比較をしてみても、難易度が高いことだといわれています。 ちなみに、今回施行されたパワハラ防止法内では「カスタマーハラスメント対策は努力義務」とされています。ただ、努力義務であっても、社内全体にハラスメントの周知・

    「“良い会社アピール”のためではない」ヌーラボがたった1週間でカスタマーハラスメント方針をつくった理由 |HR NOTE
    an_posi0202
    an_posi0202 2020/07/14
    いろんな立場の人に届いて欲しいナア
  • カスタマーハラスメントへの対応に関する方針 | 株式会社ヌーラボ(Nulab inc.)

    お客様各位 2020年6月15日策定 株式会社ヌーラボ カスタマーハラスメントへの対応に関する方針 ■方針作成の背景 私たち株式会社ヌーラボは、チームのコラボレーションを促進し働くを楽しくするツール「Backlog (バックログ)」「Cacoo (カクー)」「Typetalk (タイプトーク)」を開発、提供する会社です。昨今の働き方改革やテレワークの導入推進による「働き方の多様化」を受け入れるための1つの手段として、弊社の提供するようなツールの導入を行う企業が増加しており、現在たくさんのお客様よりお問い合わせをいただいております。 しかし、改正労働施策総合推進法(通称:パワハラ防止法)に則って考えた際、ハラスメントと断定されるような言動をとるお客さまが、ごく僅かですが見受けられることも事実です。われわれサービス提供をしている者もお客様と同じ感情を持つ「人」です。その点をご考慮いただくために

    カスタマーハラスメントへの対応に関する方針 | 株式会社ヌーラボ(Nulab inc.)
  • Backlogを作ってるエンジニアが教えるBacklog活用術 - 開発チーム内外をつなぐ、課題管理の考え方 - エンジニアHub|Webエンジニアのキャリアを考える!

    エンジニアHub > 記事一覧 > Backlogを作ってるエンジニアが教えるBacklog活用術 - 開発チーム内外をつなぐ、課題管理の考え方 Backlogを作ってるエンジニアが教えるBacklog活用術 - 開発チーム内外をつなぐ、課題管理の考え方 プロジェクト管理ツール、コラボレーションツールとしてBacklogを採用しているチームは多いでしょう。多岐にわたる機能を利用できるツールですが、上手に使うためのアイデアと方法を、Backlogを生み出したヌーラボ社の中村知成さんが解説します。開発チーム内だけでなく、マーケやセールスなどを含めた、チームを横断した課題管理など、“中の人”ならではの知見をご紹介します。 株式会社ヌーラボの中村知成( @ikikko )です。Backlogの開発・運用全般のマネージャーを務めつつ、Backlogの導入・業務改善や、ソフトウェア開発現場の支援サービ

    Backlogを作ってるエンジニアが教えるBacklog活用術 - 開発チーム内外をつなぐ、課題管理の考え方 - エンジニアHub|Webエンジニアのキャリアを考える!
    an_posi0202
    an_posi0202 2020/05/28
    Backlogのエンジニアが教えるBacklogの使い方です! @ikikko さんの力作💪是非ご覧ください〜
  • Cacooのエクスポート機能が4倍速くなりました!SVGの生成手法の刷新によるパフォーマンスの向上 | Cacooブログ

    Cacoo開発チームの木村(@cohhei)です。Cacooでは図形の描画にScalable Vector Graphics(以下、SVG)を採用しています。記事では、CacooのサーバーサイドにおけるSVGの生成手法の刷新と、それによって得られた図のエクスポート機能のパフォーマンス向上についてご説明します。 要約 サーバーサイドでのSVGの生成方法を変更しました。 結果として、SVGエクスポートが約4倍速くなりました。 PDFエクスポートもその恩恵を受けて早くなりました。 図の内容に依存しますが、1シートあたり1.5〜2倍ほど高速化しました。 技術的にはHeadless Chromeからjsdomを使ったSVG生成に切り替えました。 クライアントサイドのTypeScriptのコードをNode.jsで実行させています。 SVG?エクスポート?生成?とは? SVGとはXMLをベースとした2

    Cacooのエクスポート機能が4倍速くなりました!SVGの生成手法の刷新によるパフォーマンスの向上 | Cacooブログ
  • 「サルでもわかるGit入門」がPWAに対応しました | 株式会社ヌーラボ(Nulab inc.)

    サルでもわかるGit入門はサル先生のGit入門に改名しました。 サルでもわかるGit入門がPWAに対応しました。 iOSやAndroidのスマートフォンのホーム画面にサルでもわかるGit入門を追加することでネイティブアプリのように起動し、ブラウザよりも高速に閲覧することが可能になります。 こんにちは。 ヌーラボのマーケティング課所属のレオです。 私はヌーラボが運営するサイトやCacooの開発をサポートしたりとヌーラボ内を横断しているフロントエンドエンジニアです。 今回はレガシーな構成からNuxt.jsにリプレイスしたサルでもわかるGit入門を今更ながらPWAに対応させたので、かんたんにご紹介します。 そもそもPWAとは PWAとはProgressive Web Apps(プログレッシブウェブアプリ)の略です。 通常のWebサイト / Webアプリはブラウザ上で動作しますが、PWAはブラウザ

    「サルでもわかるGit入門」がPWAに対応しました | 株式会社ヌーラボ(Nulab inc.)
  • SREの活動事例紹介 〜 Backlogのマイクロサービス化に向けた課題検索機能のリプレイス

    BacklogのSREを担当しているmuziです。 今回の記事では、ヌーラボにおけるSREの活動事例として、Backlogの課題検索機能のリプレイスプロジェクトについてご紹介します。 このプロジェクトでは、SREと開発者がチームを組んで、要件定義からリリースまで行いました。その結果、Backlogを構成するサーバ同士が疎結合になり、将来的なマイクロサービス化に向けた足がかりを作ることができました。 歴史の長いプロダクトにありがちな技術的負債への取り組みの一例として、みなさんの参考になれば幸いです。 リプレイスプロジェクトの背景 Backlogの課題検索機能 最初に、このリプレイスプロジェクトの背景として、Backlogの課題検索機能についてご紹介します。 課題検索機能とは、Backlogの「課題」ページで利用できる検索機能のことです。件名や詳細に対するキーワード検索に加えて、プレミアムプラ

    SREの活動事例紹介 〜 Backlogのマイクロサービス化に向けた課題検索機能のリプレイス
    an_posi0202
    an_posi0202 2020/03/17
    Backlog、どんどん改善されています。お疲れ様です!
  • Serverspec から Goss に移行してサーバーのテストが 60 秒から 3 秒に! | 株式会社ヌーラボ(Nulab inc.)

    TypetalkのSREの二橋です。今回は、Gossの紹介をしたいと思います。 TypetalkではサーバーのテストにServerspecを利用していました。機能的には申し分なかったのですが、サーバーの台数/環境/テストの項目が増えるにつれて、ツールの実行速度やメンテナンス性に改善が必要になりました。Gossに乗り換えることで問題が解消されました。 サーバーのテストとは? サーバーのテストとは、サーバーの状態が意図したものになっているか検証するものです。例えば、以下のような項目を検証します。 意図したパッケージのバージョンがインストールされているか? 意図したサーバーと通信できるか? 意図したポートが待ち受けているか? 意図したユーザー/グループが存在するか? 意図したプロセスが動作しているか? 意図したファイルに指定した記述が存在するか? Serverspecで困っていたこと ①テスト実

    Serverspec から Goss に移行してサーバーのテストが 60 秒から 3 秒に! | 株式会社ヌーラボ(Nulab inc.)
  • 約4年続いた長期プロジェクトに途中参加して学んだ反省と教訓【Backlog Play 化プロジェクト】 | Backlogブログ

    こんにちは。Raspberry Pi4でようやくギガビットLANにネイティブ対応したことにテンションが上がっているBacklog開発チームの佐藤です。 ヌーラボでは2015年11月から2019年の7月まで、BacklogJavaからScala / Play Frameworkに移行するという大規模なリプレイスプロジェクト(以下、Play化プロジェクト)を行っていました。 私は2017年の夏からプロジェクト完了までこのプロジェクトに参加していました。 今回の記事では、Play化プロジェクトに途中参加した立場で、プロジェクト中に起きた出来事と当時の心境、問題をどう乗り越えたのか、反省と教訓についてもお届けします。 プロジェクトに参加する前は何をしていたか 出来事:Backlogの機能改善チームからPlay化プロジェクトチームへ移動 心境:不安だがトップダウンで決まったのではなく、自分自身の意

    約4年続いた長期プロジェクトに途中参加して学んだ反省と教訓【Backlog Play 化プロジェクト】 | Backlogブログ
  • SREは大規模なリプレイスプロジェクトで発生した様々な問題にどう取り組んだか【Backlog Play 化プロジェクト】 | Backlogブログ

    Backlog SREチームのmuziです。2018年4月から2019年7月まで、BacklogJavaからScala / Play Frameworkに移行する大規模なリプレイスプロジェクトに参加していました。 SREとして、このリプレイスにはかなりの困難が伴いました。特にBacklogのサービス安定性は大きな問題でした。 記事では、こうした問題に対して、SREである私がどういうアプローチを取ったのか、そしてこのプロジェクトで得られた教訓を今後チームや組織全体でどのように活かそうとしているかをご紹介します。 正直言って、泥臭い話だらけの内容です。それでも、技術的負債を抱えたプロジェクトでSREが取れるアプローチの事例の一つとして、読者の参考になれば幸いです。 はじめに ヌーラボでは2015年11月から2019年7月まで、BacklogJavaからScala / Play Frame

    SREは大規模なリプレイスプロジェクトで発生した様々な問題にどう取り組んだか【Backlog Play 化プロジェクト】 | Backlogブログ