サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
iPhone 16
tech.zeals.co.jp
こんにちは、分析基盤を担当しながらインフラも面倒見ている鍵本です。 本日は Cloud SQL に private IP を付与して失敗 した話をします。 背景 必ず事前にやっておくべきこと 実際に確認した事例 対処方法 まとめ 最後に 背景 Zealsは、LINEおよびFacebook Messenger上で動作するチャットボットサービスで、WebのForm体験をチャット上で完結させることができます。この Zeals のアーキテクチャは『進化し続ける「Zeals」サービスを支えるアーキテクチャについて』でご紹介しているとおりで、データベースサーバとして Cloud SQL を利用しております。 tech.zeals.co.jp 具体的には、アプリケーションからは Cloud SQL Proxy を通して接続しています。Zeals がサービスとして成長するにあたり、アプリケーションが動いて
こんにちは。ZealsでCTOをしている佐藤です。 Zealsでは AdventCalendarを開催しており、そちらの15日目の記事となります! はじめに 会話分析とは? 何がしたいか Neo4j 技術選定について 環境構築・実行 振り返り さいごに はじめに 会話分析とは? 私達が開発しているZealsは「ネットにおもてなし革命を!」をコンセプトにした、ユーザーと会話して商品を案内するチャットコマースのサービス です。 チャットコマースについて詳細が知りたい方は、同じくZeals AdventCalenarで公開された以下の記事をご覧ください! qiita.com このZealsの会話体験を向上させていく中で、ユーザーとチャットボットとの 会話データ を分析していく必要があります。 現在ではMySQLやBigQueryにデータを格納することで、 ETL分析や機械学習のためのマスターデー
※こちらはZeals AdventCalendar 12日目の記事です。 こんにちは! Pythonエンジニアの荒木です。 夏頃に社内の開発プロジェクトにPythonメンバーとしてアサインされ、本格的にPythonを業務で書くようになり、最近はほぼ毎日Pythonを書いています。 Pythonの業務としては主に新機能実装とDBリファクタリングをやっています。 今日はpytestのparametrizeの基本的な使い方と parametrizeでちょっと詰まったところがあったので、それらについて書きます。 目次は以下のようになります。 前提 parametrizeについて parametrize とは parametrize の使い方 fixtureをparametrizeする fixtureとは fixtureのparametrize 終わりに 前提 まず、以前にこちらの記事で紹介したよう
こんにちは! Railsエンジニアをやっているtakakudaです。 今回のエントリーでは、Zeals(旧fanp)サービスへのgRPCを導入を紹介できればと思います。 目次は以下のようになります。 そもそもgRPCとは 導入経緯 導入 proto fileにデータ構造を定義する protocコマンドを用いてRubyコードを生成する 生成されたRubyコードをlib配下に置き、config/initializers配下でStubを作成する 共通化したいメソッド呼び出し部分をprotobufで生成されたメソッドに書き換える Railsへ導入時にハマったこと gRPCを導入してみて 最後に そもそもgRPCとは gRPCはRPCを実現するためにGoogleが開発したプロトコルの1つで、インターフェイス定義言語のもとになるメッセージ交換形式としてProtocol Buffersを利用できます。g
こんにちは! 普段はGolangでMicroservicesを開発しているぱんでぃーです! 今回のエントリーでは『Kubernetes Meetup Tokyo #24』でLT枠として登壇してきたレポートをお届けします! k8sjp.connpass.com LTに登壇しようと思った経緯 『Kubernetes Meetup Tokyo』はKubernetesはもちろん、そのエコシステムの一部として利用されるCloud Nativeなテクノロジーについて情報交換や交流を行うミートアップです。イベントは毎月開催されているのですが、CNCF(Cloud Native Computing Foundation)まわりのテクノロジーは急成長しているため、毎回新しい発見があります!!(ついていくのも大変ですが・・・笑) k8sjp.connpass.com 私自身も過去10回ほど、一般参加者としてミ
こんにちは、ZealsでバックエンドエンジニアとしてRailsを使って開発をしている鈴木です。 Zealsでは、セキュリティ対策の一環としてBrakemanを使用しております。 今回はなぜ、Brakemanを導入することに至ったかの理由とBrakemanの導入、実際に活用してうまくいったノウハウを紹介させていただきます。 Railsのセキュリティ対策について調べている方や、Brakemanをどのように活用していくか調べている方の参考になれば幸いです。 そもそもBrakemanとは Brakemanを導入した経緯 Brakeman活用までの流れ 1.Brakemanの実行結果をエクスポートし、脆弱性の調査および相談 2.脆弱性についての調査 3.脆弱性の対応についてチームで方針を決定 4 話した優先度や対応方針に従って修正 今後やっていきたいこと さいごに そもそもBrakemanとは Br
みなさんこんにちは! 10月4日に五反田の地域JavaScriptコミュニティ『Gotanda.js』の第13回イベントが行われたのですが、Zealsエンジニアのぱんでぃーさんこと濱田が登壇したので、そちらの模様をお届けいたします。 Gotanda.jsはテックブログで今までに何度かイベントレポートを書いておりまして、前回はZealsオフィスで開催させていただきました。 tech.zeals.co.jp 今回もとても面白い会になりましたので、当日の模様をお届けできればと思います。 イベント全体の雰囲気 LT一覧 ぱんでぃーさんの登壇 さいごに イベント全体の雰囲気 ※奥に見える卓球台がいつも気になってます 今回はfreeeさんのオフィスにあるイベントスペースをお借りして、イベントを開催しました!めちゃくちゃキレイな会場で、音響やスクリーンなどの設備が整っていたのが印象的でした(羨ましい..
みなさんこんにちは! Zealsでフロントエンドエンジニアとしてインターンをしている栂瀬といいます。 この度Zealsで、テスティングフレームワークのJestを導入しました! 背景や導入にあたっての取り組みなど、何を行なったかを詳しくご紹介していきたいと思います! Jest & Enzyme とは 背景 実際に動かしてみた 【準備】React Componentをテストしよう 実際のテストコードをご紹介 タグの有無をテスト イベントのテスト Reduxのテスト reducerのテスト テストコード勉強会 勉強会のコンテンツ:shallow is faster than mount ?? 検証結果 勉強会の成果 テスト導入のメリット 今後の展望 まとめ Jest & Enzyme とは JestとはFacebookが開発しており、細かい設定なしで簡単にフロントエンドのユニットテストを行うこと
こんにちは、Zeals CTOの島田です。 本日は、進化するZeals(旧fanp)サービスのアーキテクチャを、 リリース当初と現在で比較して紹介 します。 以下のようなアジェンダで解説していければと思います。 はじめに リリース当初のアーキテクチャ 技術選定 新しくプロダクトの課題 現在 今後の展望 さいごに Go(gRPC, Protocol Buffers)を用いたmicrosevicesやkubernetes(GKE)を用いた新しいインフラ環境など、これからのZealsを支えるコア技術について解説できればと思います。 はじめに まずは、前提を合わせるために、簡単にZealsの機能紹介からはじめます。 Zealsは、LINEおよびFacebook Messenger上で動作するチャットボットサービスで、WebのForm体験をチャット上で完結させる ことができます。 私達は、これを”チ
皆さんこんにちは!現在SREチームでエンジニアインターンをしており、4月から新卒入社する玉城です。 今回はZshプラグインマネージャーのZplugin導入のススメです! Zpluginの紹介 Zpluginインストール方法 Zpluginを用いた.zshrcの設定例 はやくなった要因解説 zplugの起動時間も計測してみる まとめ Zpluginの紹介 Zpluginは柔軟で高速なZshellプラグインマネージャーで、zshの起動を50~73%高速化するTurboモードを備えた唯一のプラグインマネージャーです。 github.com zplug使っているけど起動時間1秒以上かかるし辛い… Zplugin使ってみたいけどドキュメントは英語だし日本語の情報も少ないし… Zshを使ってみたいからこの記事を読んでみよう! という方には、とてもおすすめです! 私も実際にZshとZpluginを使って
こんにちは!! 8月からZEALSにジョインしたぱんでぃーです!TypeScriptとAureliaを愛するバックエンドエンジニアとして、現在はGolangでMicroservices化を目指したAPIを開発しています! このAPI開発のプロジェクトについても、近いうちにブログで公開していきたいのですが、今回はKubernetes環境でのCI/CDについてご紹介します。(おもにCD) このトピックについては、以前、CTO島田のエントリーでも少し紹介していましたが、さらに進化させた内容となっております! tech.zeals.co.jp TL;DR KubernetesエコシステムのCDツールの現状 できるだけミニマムスタックでスタートするためには? Gitブランチ戦略 アプリケーションの実行環境 目指すゴール ZEALSの実際のCI/CDパイプラインを紹介 今後の伸びしろ さいごに TL;
はじめに こんにちは、分析基盤を担当している鍵本です。 本日は DB に保存されている行動ログを BigQuery に流すように修正 したお話をしようと思います。 はじめに 背景 非RDB化の方針 Rails 側の設定 logger の再定義 出力データ用の Struct の定義 出力処理の追加 Stackdriver Logging のシンク設定 BigQuery でのテーブル作成 Cloud Functions の設定 まとめ 背景 これまでチャットボットに流入させる「モーダルを開いた」とか「クリックした」といった行動ログは 直接DB に保存されていました。 レコード数が少ないサービス開始直後はそれでもよかったのですが、だんだんお客様の数が増えてくると、それに応じてモーダルにアクセスしてくださるユーザーさんの数も増え、DB への書き込み頻度が高まり、次第にアプリへの負荷が高くなってきま
皆さんこんにちは! VPoE兼サーバサイドエンジニアをやっている福本です! 五反田には開発言語の地域コミュニティをはじめ、たくさんのエンジニアコミュニティが存在しているのですが、7月に多くのイベントが開催されました。 開催されたイベントの多くでZEALSのエンジニアが登壇しましたので、こちらの記事でまとめてご紹介できればと思います! 最後までお付き合いいただけますと幸いです。 開催された五反田コミュニティ Gotanda.js Gotanda.rb Gotanda.EM その他のコミュニティ Gotanda.js Gotanda.rb Gotanda.EM さいごに 開催された五反田コミュニティ Gotanda.js 五反田のJavaScriptコミュニティ『Gotanda.js』です!5月に復活したばかりですが、申し込みの段階で40人と、前回同様非常に多くのエンジニアに集まっていただき開
こんにちは! ZEALSで Rails & Reactを書いている中村です! 今回もZEALSオフィスにてGotanda.rbが開催されたのでその様子をお伝えします! 前回のイベントレポートもありますので、Gotanda.rbに興味のある方はこちらもご覧ください。 tech.zeals.co.jp テーマは"テスト" 今回も個性が溢れ出そうなテーマですね! LTの内容は factory_bot Rspecの書き方 CircleCiとdocker テスト設計 飛び込みLT こんな感じでした! それでは早速登壇資料と共にGotanda.rbを振り返っていきましょう! テーマは"テスト" LT大会 ぼくらのかんがえたさいきょうのfactory_bot Rspecあなたならどう書く? 残して価値のあるテスト設計 CircleCIで docker-compose最強? 番外編 終わりに LT大会 ぼ
こんにちは、CTOの島田です。 弊社サービスであるfanpでは、定期バッチ含む全サービスがGKE上で起動しています。 今回は Kubernetesのmanifestファイルやイメージを効率よく管理するための取り組みを紹介したいと思います。 Kubernetesを本番運用しているところだと基本的なことが中心の内容かと思いますが、お付き合いいただけますと幸いです。 Kubernetes化にあたって意識したこと 環境の差異, manifestの再利用性 CD(Continuous Delivery)の効率化 ZEALSでの取り組み container registry専用のprojectを作成した manifest file専用のレポジトリを作成した Cloud Buildで継続的デリバリ さいごに Kubernetes化にあたって意識したこと 環境の差異, manifestの再利用性 ステージ
はじめに エンジニアチームの味わい深い領域を担当しているKodyです! タイトルにもありますが、弊社SlackAnalyticsが激動すぎて面白かったので記事にしてみました...!! 以前SmartHR宮田さんSlackPublic率に関するツイート↓を見かけ、「なんて素敵なんだ...」と感じました。 それがきっかけで、SlackのAnalyticsを覗いてみることにしました! ちなみにSmartHR社ではDM禁止、Privateチャンネル禁止みたいなルールで縛ることはやっていません。 この「ルールにしない」というところが、実にイケてますね! オープンな文化がもたらす良い効果 「オープンな文化がもたらすいい効果」について、大きい効果が2点あると思ってます! 情報格差が起こりにくい 自然と建設的なコミュニケーションの取り方になる 情報格差が起こりにくい Aさんは知ってるけどBさんCさんは知ら
皆さんこんにちは! ZEALSでVPoE兼サーバサイドエンジニアをやっている福本です! 5月10日に行われました五反田のJavaScriptコミュニティ『Gotanda.js』が約1年振りに復活することとなりました! gotandajs.connpass.com 今回は再始動イベントに参加してきましたので、そちらのイベント模様と今後のコミュニティ活動について簡単にお伝えできればと思います。 ちなみに、私福本が今回からGotanda.jsのOrganizerに加入させていただいており、イベントやコミュニティ運営をメインとして行っておりました! github.com 再始動のご挨拶 今回の会場は五反田東口にあるモバイルファクトリーさんの会議室をお借りして実施しました! こだわりを感じるキレイなオフィスでした 30名の参加枠に対して43名の方から申し込みが殺到し、さらに当日も申し込みをされた方が
こんにちは!サーバーサイドエンジニアのJohnです。 インターン生として、fanpの配信周りの開発を行なっています。 今回は、GCP(Google Cloud Platform)にGPUを動かすための環境を作ってみます。だいぶ長い記事になってしまいましたが、お付き合いいただければと思います。 Google Cloud Platform(GCP) プロジェクトの作成 GPUの割り当て インスタンスの作成 Google Cloud SDKのインストール CUDAとNVIDIAドライバのインストール cuDNN7.0のインストール Kerasを使ってみる まとめ Google Cloud Platform(GCP) GCPとは、Googleが提供するクラウドコンピューティング向けのプラットフォームです。似たようなサービスにAmazonのAWSや、MicrosoftのAzureがあります。 基本的
みなさん、こんにちは! バックエンドエンジニアになりたてRyutoooooです! Part1に続き、ZEALSエンジニアの開発・作業環境についてPart2です! では前回のおさらいから 「弘法筆を選ばず」ということわざをご存知ですか? 能書家の弘法大師はどんな筆であっても立派に書くことから、その道の名人や達人と呼ばれるような人は、道具や材料のことをとやかく言わず、見事に使いこなすということ。 下手な者が道具や材料のせいにするのを戒めた言葉。 下手な者が道具や材料のせいにするのを戒めた言葉。。。 つまりエンジニアに置き換えると、スペックの悪いパソコンを使ったり、劣悪な環境であろうといいコードを書かなくてはならない… なかなか厳しいですね(´・ω・`) エンジニアにとっては生産性が命!!! 自分が常に最大のパフォーマンスを発揮できるよう自分が作業する環境を整えますよね。 というわけで自分の知ら
このページを最初にブックマークしてみませんか?
『tech.zeals.co.jp』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く