2019年 9月 の投稿一覧

開発におけるロックの重要性と ORM でのロックの実現例

こちらは 「アプリケーション開発におけるロックの重要性とORMにおけるロックの実現例」からの転載です。


アプリケーション開発においてデータを扱う時にロックを行うことはデータ保全性の観点から重要です。(もちろん SEROKU フリーランスでもシステム側ではデータのロックを行っています)

本記事では、一般的な話としてアプリケーションの「ロック」について掘り下げ、ロック方法の種類や DB のトランザクションとの関連性を紹介します。

次回以降は、楽観的ロックについてと、ORM を使ったロックの実現方法をアプリケーションフレームワークごとに紹介する予定です。

続きを読む

Angular開発現場のTips-その2

本記事では SEROKU の開発を例に Angular Tips の紹介をしています。(その 3 くらいまで続いています)

関連記事

Angular開発現場のTips-その1

Angular開発現場のTips-その3


やってまいりました、SEROKU を支える技術 Angular Tips その2。

前回の記事執筆からほぼ1ヶ月。待ってくれていた人、そうでない人、いるかとは思いますがめげずにまた書いていこうと思います。

その1でも書きましたが、あくまで、こう書くべきだという強い意志ではなく、こう書いたら良いんじゃないかな? くらいの気持ちで書きますので参考程度にしてらえれば幸いです。

さて、今回は特段前置きは不要かと思いますので(必要あらば前回の記事をサクッと見てください)いきなり書いていこうと思います。

続きを読む

自作で Video Chat 環境を作って導入した話 〜経緯編〜

こちらは 「自作で Video Chat 環境を作って導入した話 〜経緯編〜」からの転載です。

弊社では九州の大分県にサテライトオフィスがあります。そのサテライトオフィス開設時に行った Video Chat 環境の検討経緯を紹介します。


「SEROKU フリーランス(以下、SEROKU)」の中の人をやっている ryosuke です。
今回は SEROKU の裏側の話から離れて、社内に Video Chat システムを導入した件について取り上げたいと思います。

続きを読む

Kubernetes|Rancher1.6から2.0へアップデート

当記事は 2018 年に発生した事例の紹介記事です。現在は Rancher 2.0 で快適に動作しております。

kouki です。

今回、その実験環境が壊れてしまったので、Rancher 2.0 にアップデートして復活させたお話をさせていただこうと思います。

続きを読む

イマドキのJavaScript 開発で使える!リモートデバッグとロガーの Tips (前編)

こちらは 「イマドキの JavaScript 開発で使える、リモートデバッグとロガーの Tips (2018年版-前編)」からの転載です。

SEROKU の開発を例に、弊社で使っているリモートデバッグとロガーの Tips をご紹介します。
当記事は 2018 年、と過去の記事ですが、現在でも応用可能な Tips になっています。


案件としても OSS 成果物としても、JavaScript を利用するシチュエーションは増え続けています。まだまだ枯れた言語とは言い難い状況で、使われるバージョンも ES5 から ES7 まで進化を続け、新しい文字列リテラルや async/awaitのような「イマドキの JavaScript の書き方」を紹介する記事は多い中、デバッグはこうあるべきという情報は比較的少ないように思います。

本記事では JavaScript による開発、特に node.js を使ったサーバーサイド開発環境および babel を使ったクライアントサイド開発環境で便利なロガーの Tips、そして Microsoft 提供の Visual Studio Code とのリモートデバッグの Tips を紹介します。

続きを読む

WESEEKがプロジェクトを始める時に準備している事

こちらは 「イマドキの JavaScript 開発で使える、リモートデバッグとロガーの Tips (2018年版-前編)」からの転載です。

SEROKU の開発を例に、弊社で使っているリモートデバッグとロガーの Tips をご紹介します。
当記事は 2018 年、と過去の記事ですが、現在でも応用可能な Tips になっています。


案件としても OSS 成果物としても、JavaScript を利用するシチュエーションは増え続けています。まだまだ枯れた言語とは言い難い状況で、使われるバージョンも ES5 から ES7 まで進化を続け、新しい文字列リテラルや async/awaitのような「イマドキの JavaScript の書き方」を紹介する記事は多い中、デバッグはこうあるべきという情報は比較的少ないように思います。

本記事では JavaScript による開発、特に node.js を使ったサーバーサイド開発環境および babel を使ったクライアントサイド開発環境で便利なロガーの Tips、そして Microsoft 提供の Visual Studio Code とのリモートデバッグの Tips を紹介します。

続きを読む

Kubernetes+Let’s Encryptでワイルドカード証明書の自動発行基盤を作る

はじめに

SEROKU の開発フローでは、開発用のリポジトリに Mercurial を用い、各機能実装ごとにブランチを用意した上で開発を行っています。

その上でさらに、社内に Kubernetes クラスタを用意して、ブランチごとにデモ環境を立ち上げられるような仕組みを整備しています。

関連記事

SaaS運用での大障害の思い出と対策の共有(大噴火編)

Kubernetes時代のCI/CD Jenkins Xとは?-前編

当初は、各ブランチごとにドメインを作成し、Let’s Encrypt による SSL 証明書を発行していたのですが、並行で開発するブランチ数が多くなってくるとやがて rate-limit に当たるようになりました。
(参考: Rate Limits – Let’s Encrypt – Free SSL/TLS Certificates)

今回は、それを回避するために必要となった、Kubernetes クラスタ上で Let’s Encrypt を用いたワイルドカード証明書を自動発行・更新できる基盤の作り方についてご紹介します。

弊社では AWS Route 53 でドメインを管理しているため、本記事では Route 53 を利用したドメインを対象とします。

続きを読む

新規プロダクトのシステム開発合宿を試した、その結果・・・

こちらは 「新規プロダクトのシステム開発合宿を試した、その結果・・・」からの転載です。

2018/06/16 に掲載されているので、情報は若干古めではありますが、先日 OpenBeta としてリリースした GROWI.cloud の開発合宿を行った様子を紹介しています。


株式会社 WESEEK の佐藤です。

先日、弊社では一つのプロダクトを社員全員で開発する合宿を初めて開催しました。
(普段はリモートワークをしているメンバーも合流しました)

今回はプロダクトの詳細は説明することができませんが、開発合宿を振り返り、当時の様子と良かった点・悪かった点を紹介したいと思います。

続きを読む