LiBz Tech Blog

LiBの開発者ブログ

Algolia meets Rails

はじめに LiBバックエンドエンジニアの宮澤です。 LiBでは開発業務以外にもSlack絵文字職人、アニメ部長を兼任しています。 アニメ部は社内のアニメ好きがSlackに立ち上げた雑談チャンネルが徐々に参加者が増えて、いつの間にか社内部活動では最大派閥です。…

個人的に便利だと思ったVimプラグイン(世のVimmerさんにも教えて欲しいな〜)

はじめに 皆さん、こんにちは!今週のブログは額田が担当させていただきます! 私事ですが未経験からエンジニアに転職をして、ついに1年が経過し時間が過ぎる速さを感じています。せっかく転職して1年が経過したということで、ここはやっぱりVimの話題で行き…

Googleスプレッドシートでコーディング(等)を楽にやる

はじめに 下田です。 ちまちました作業が本当に苦手なので、そういう作業はよくスプシを使って回避しています。 その中でも自分がよくやっているものを紹介します。 スプシでコーディング(等)を楽にやる ruby(Rails) 大量の引数を代入する処理を楽に書く…

エンジニアが仕様書を書き始めてつまずいた4つのポイント

目次 はじめに 仕様書を書き始めてつまずいたポイント 1.施策目的があいまいになる 問題 学んだこと 2.数値目標を忘れる 問題 学んだこと 3.また聞きの情報をうのみにする 問題 学んだこと 4.一人で進めすぎてしまう 問題 学んだこと 最後に はじめに エンジ…

GoとDockerでLet's try gRPC

はじめに gRPCとは gRPCの特徴 gRPCが解決するマイクロサービスの課題 gRPCの課題 Let's try gRPC 1. 準備 2. protoファイルの作成 3. server側の処理 4. client側(リクエスト)の処理 5. buildして実行 最後に はじめに こんにちは!エンジニアの渡邊です。…

テックブログを1年運用してわかったこと

雑談 5月に施行された令和元年も残り2ヶ月あまり、皆さんは令和にちなんだこと何かされましたか? 周りでは令和婚などハッピーなできごとも多く賑わっていましたが、私は令和元年ヘルニアになりました。 高齢の方がなるイメージをもっていましたが、実は青年…

子供を天才プログラマーにしようとして失敗した話

そんな大げさなタイトルにしてしまいましたが、 実態はただの子育て日記みたいな形になってしまいました。。。 子供にプログラミングを勉強させようと考えている方は、ほんの少し参考になるかもしれません。 ※コメントをうけて追記 無理やり・強制でやらせて…

【デザイン】アイキャッチ画像を作るアプローチ

こんにちは、LiBのデザイナーのスナダです。 だんだん秋になってきましたね、服はあるのに着る服がないです。 さて、近頃、LIBzCAREER内のコンテンツや 広報・イベントのアイキャッチを作ることが増えてきたので 今回は、アイキャッチ制作する際によく実行す…

女性エンジニアに特化したイベント「LiBzTECH SALON vol.1」を開催しました!

こんにちは、新卒1年目のEdyです。 今回は普段の技術系記事とは毛色が異なる内容ですが、 先日弊社で開催した女性エンジニアのキャリアに焦点を当てたイベントのレポートをお届けします! イベントの目的 そもそも、なぜ「女性×エンジニア」に特化したイベン…

【yamory】みんなで"やもろう"!Railsで脆弱性を監視しようの巻

はじめに 元々Webアプリケーションエンジニアでしたが、 インフラに異動し、開発基盤の構築だったり、簡易的なセキュリティを見ることになりました。 小さな会社ですが、大小様々なプロジェクトが存在しています。 ただ、すべてのプロジェクトに対して脆弱性…

GAS から Github に Pull Request を出してみた

イントロ 唐突ですが8月中頃ヘルニアになりました。 10日間立てなかったですし未だ歩くのが遅いです。どれくらいかというと80代ほどのおじいちゃんとどっちが早く歩けるか歩道で競い合ってます。 なので身の回りのお世話をお願いすることが多かったんですが…

プロデューサ・プロダクトマネージャに頼られるエンジニアについて考える

はじめに 社内の会話で一緒にサービスしたいならどんなエンジニア?という話があり、プロデューサ・プロダクトマネージャ目線で欲しいと思うエンジニア像を社内で話していたものを書きます。 サービスを作るフローについて まず「どんなエンジニアが頼られる…

MariaDB MaxScale を使ってデータベース内の個人情報をリアルタイムにマスクする

これまで、データベース内のデータを分析するために、別途個人情報などをマスクしたデータベースを作成し re:dash から参照していました。 ただ、マスク処理にある程度時間がかかるため、参照できるのが前日のデータであるなどリアルタイム性に課題がありま…

Vue.js + Algoliaを使って、フロントエンド開発だけで検索機能を実現する

はじめに 前回書いたvue-cli uiでVue.js開発環境を作る記事を書いたところ、同僚がそれを引き継いでvui-cli uiで立ち上げたアプリに「APIから取得したデータでユーザーの一覧を表示する」機能を追加した記事を書いてくれました。 tech.libinc.co.jp tech.lib…

チートシートで学ぶ、憧れのVimmerへの挑戦!!! ~ 入門編 ~

はじめに こんにちは!最近暑くなってきましたね、夏の始まりを感じます! オフィスにこもってばかりしてないで、プールに足でも浸かりながらプログラミングをしたいなーなんて思う今日この頃です。 あくまでお仕事でね。 ということで、弊社ブログでは2週…

Vue CLI UIを活用して実際にアプリを作ってみた

はじめに LiBではフロントエンド勉強会をしており、最近は勉強会の中でVue CLI UIを使ってアプリを作っています。 関連記事 3ヶ月間バックエンドエンジニア向けにフロントエンドを学ぶ勉強会を行った話 フロントエンド初心者がVueUIを使って爆速でVueアプリ…

GASとVueでエンジニアのMuscleを可視化した

はじめに こんにちは!前回の投稿から3ヶ月が経過して入社9ヶ月目になりましたが、今回はつまずいたシリーズはお休みしてGoogle App Script(以下、GAS)とVueで筋肉量を可視化した話を投稿させて頂きます! tech.libinc.co.jp LiBのエンジニアでは夏に向け…

とってもRailsライクなサーバーレスフレームワーク「Ruby on Jets」を本番環境に導入した話

はじめに 経緯 構成 技術選定 Lambdaのランタイム(言語)は何で実装するのか? サーバーレスアーキテクチャの構成管理に何を利用するのか? Jetsをちょっとだけ解説 プロジェクトの作成 ルーティングの設定 コントローラー 必要なIAMポリシー シークレットキ…

【Rails】Sidekiqの監視で工夫したこと

はじめに 最近SREだのDevOpsだの開発と運用にフォーカスがあたることが多いようで、 弊社でもDevOpsチームというものが発足されました。 開発しているエンジニア全体に、しっかりサービスの監視をしてもらえるようにインフラからアプリケーション層のエラー…

3ヶ月間バックエンドエンジニア向けにフロントエンドを学ぶ勉強会を行った話

はじめに こんにちは、最近カタンにハマっている阿部と申します。 社内のエンジニアの勉強会で「フロントエンド周りについて学ぶ」を担当させてもらったのでその勉強会についてのレポートになります。 ちなみにカタンの基本戦略としては、鉱石と小麦をおさえ…

【Sketch】デザインファイル管理にAbstractを導入してみた話

はじめまして。 LiBのデザイナーのスナダです。 主にLiBzCAREERの デザイン/設計/仕様策定などを担当しています。 LiBzCAREERはUIデザインツールにSketchを使用しています。 最近、デザインファイルの管理にAbstractを導入し、まだまだ探り探りではあります…

新卒エンジニアが「デザインの4つの基礎」を使ってはじめての名刺づくりをしてみた

はじめに こんにちは! この春にリブに新卒で入社した江田です。 これまで、内定者インターン時代にテックブログを2記事執筆しています。 deviseとGoogle Authenticatorを用いてRailsシステムに「二段階認証」を導入した話 - LiBz Tech Blog ゼロから10分…

EC2インスタンス起動時に自前スクリプトを実行するには

なにを書くのか 起動シークエンスに自前スクリプトを埋め込むときの注意について。単語的にはchkconfig や cloud-init です。 なぜ書くのか EC2インスタンス再起動時に自前スクリプトからプロセスが起動しなくてツラい思いをしたので。 結論 AWSで自前スクリ…

フォームのsubmitイベントをキャンセルする方法まとめ

令和も当ブログをよろしくお願いします。 はじめに 1. onclick属性やonsubmit属性を使う場合 formのonsubmit属性に関数を指定する submitボタンのonclick属性に関数を指定する 2. AddEventListenerを使う場合 formにsubmitイベントリスナーを追加する submit…

Vue+RailsでGitHubみたいなチェックボックスリスト(マークダウン入力)をサーバよりに作る

はじめに 個人的にVueの勉強のために作ってるタスク管理ツールでGitHubみたいなチェックボックスリスト(マークダウン入力)を作りたくなりました。 またこのフィールドにURLが貼り付けられたらリンクにしたい欲求もありました。 まとめると マークダウンの形…

フロントエンド初心者がVueUIを使って爆速でVueアプリを立ち上げてみる

はじめに これまではPHPやRailsでのサーバサイドアプリケーションの開発がメインでしたが、最近はフロントエンドの開発も一部担当するようになってきました。 今の開発現場では一部Vue.jsを導入しているので、Vue.jsの勉強をしています。 はじめに — Vue.js …

春のオススメ【元新幹線車掌と巡るLiBエンジニア開発環境ツアー】

プロローグ 長かった冬が過ぎ去り、心地よい風が春の訪れを感じる今日この頃。 待ちわびていたかのように桜の花びらが満開となり、みなさまにおかれましてはお花見などを楽しまれたのではないでしょうか? 季節が過ぎるのが早いもので私、ヌカタがエンジニア…

Railsで複数モデルを扱うフォームをすっきり書く(Formオブジェクト)

はじめに Railsで1つのフォームで複数モデルを扱うときに、accepts_nested_attributes_forを使うサンプルをよく見るのですが、DHH氏が消したいと言っていたり バグが多かったりなど色々問題があるようです。 代わりにFormオブジェクトを使うのが良いと聞いた…

入社6か月間で駆け出しエンジニアがつまずいた4つのポイント

前回「入社2か月間で駆け出しエンジニアがつまずいた15のポイント」 tech.libinc.co.jp という記事を書かせて頂いてから早いもので入社6ヶ月目になりました。 たくさんの方に読んで頂けたようでありがとうございます。 未経験 ~ 駆け出しの間は特に不安だっ…

Kubernetes(GKE)にお安く入門する

目次 目次 はじめに 経緯 そもそもKubernetesとは なぜEKS(AWS)ではなくてGKE(GCP)なのか 無料のクラスタをつくる とりあえずk8sクラスタをつくってみる ノード(インスタンス)が1つだけのノードプールをつくる 3つのノードが登録されているノードプールを消…