プロジェクトを管理するときに大事にしていること

特に出典とかはありませんが僕の経験から大事にしていることなどを書きました。 社内向けのドキュメントに書いていましたが、外にも出せるかなと思い少しだけ修正しつつ記事にしました。 全体像をきちんと理解する 全体像を理解するとはプロジェクトの5W1Hを…

エンジニアのアウトプットについて社内勉強会で発表した

だいたい月に1回ほど福岡拠点のエンジニアが集まってtech talkというイベントをしていて、今回エンジニアのアウトプットというテーマで発表した。 前職はアウトプットすることが企業理念の1つとして入っている会社だった。社員みんなアウトプットを意識して…

styled-componentsのThemeProviderをつかってReactのスタイルを管理する

Reactのスタイル管理、どうしていますか。 いろいろな方法があると思いますが、大規模なReactでのフロントエンド開発においてCSSをどう管理するかとても悩みました。私の所属しているチームでは、styled-componentsのThemeProviderを使ってスタイルを管理す…

StorybookをCIでビルドしてPull Requestにコメントさせたらレビュー効率がアップする

最近Reactコンポーネントを実装、修正する機会が多い。コードレビューのときにコード的には大丈夫そうだけど見た目がどんな動きをするか気になるときがあり、レビュー時にStorybookを確認したい場面が増えた。 branchをcheckoutすれば手元で見れるが、自分も…

Storybookから出力したHTMLファイルをサブディレクトリで公開するにはbaseタグを使う

Storybookは build-storybook コマンドを利用すると静的なHTML、JSファイルとして出力できるので、どこか静的ファイルを公開できるところにホスティングするとすぐに公開することができます。 (参考: https://storybook.js.org/docs/basics/exporting-storyb…

マネーフォワードにジョインして3ヶ月で取り組んだフロントエンドの改善と所感

こちらはMoney Forward Advent Calendar 2019の13日目の記事です。マネーフォワード クラウド経費というBtoB向けサービスのフロントエンドエンジニアとして2019年9月に入社し3ヶ月が立ちました。開発はすべて福岡支社で行われており、私も福岡で働いています…

FlowからTypeScriptに段階的に移行する

この記事は TypeScript Advent Calendar 2019 の 3日目の記事です。 私の所属するマネーフォワード クラウド経費ではフロントエンドの基盤整備が進んでいます。もともとFlowでの型チェックが入っていたJavaScriptのソースコードをTypeScriptへ移行しましたの…

GMOペパボを退職しました

2015年から4年間努めたGMOペパボ株式会社を2019年8月いっぱいで退職しました。やってきたことはだいたい以下にまとめてあります。2019年からはシニアエンジニアとして主にサービスのセキュリティ周りの強化をしていました。 kimromi.hatenablog.jp 4年間たく…

DNSのTXTレコードに自己紹介を書いてみる

DNS

おもしろ自己紹介ができたので、ぜひコマンドを叩いてみてください。 % dig kimromi.me TXT +short "Work=Muumuu-domain.com at GMO Pepabo Inc." "GitHub=@kimromi" "Twitter=@kimromi" "Blog=http://kimromi.hatenablog.jp/" (追記) もし別の目的ですでにT…

MySQLでCREATE TRIGGERができなかったので調べてみた

You do not have the SUPER privilege and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable) というエラーが出ていて CREATE TRIGGER ができなかった。 結論から言うと、 CREATE TRIGGER など…

MySQL ストアドプログラムのバイナリロギング メモ

そもそもバイナリログって? MySQL :: MySQL 5.6 リファレンスマニュアル :: 5.2.4 バイナリログ テーブル作成操作やテーブルデータ変更などデータベース変更を記述する「イベント」が格納される マスターサーバーはスレーブサーバーへバイナリログに格納さ…

誰かに影響を受けるということ

hb.matsumoto-r.jp matsumotoryさんとはあまり関わりがなかったが、傍から見ていてもすごい人だなとずっと思っていた。技術的にものすごい方というのは言わずもがなだけど、すごく思慮が深くて自分の考えていることを言語化したり定型化したりするスペシャリ…

GMOペパボに入って3年、やってきたことを振り返った

2018年7月1日でGMOペパボに入社してから3年がたった。自分自身1つの会社で3年を超えて働いたことがなかったので、もう3年も経つのかという気持ちが大きい。3年間あっという間のような長かったような不思議な感覚がある。いい機会なので何をやってきたか振り…

【Rails】request.remote_ipの値がプライベートネットワークの通信で120.0.0.1になる

https://qiita.com/yasu/items/da7ebdb01cb3209583df こちら参考にした。 環境 Rails 4.2.10 結論 config/application.rbに以下を追加すればOK require 'ipaddr' module Kimromi class Application < Rails::Application # これを追加 config.action_dispatc…

php-activerecordのすすめ

PHP

GMOペパボ Advent Calendar 2017の初日のエントリーです! 私が所属しているムームードメインではPHP環境とRuby on Railsが並行で運用されています。その中でPHP環境はが統一されたWebフレームワークを使用しておらず、データベース接続のクエリビルダーも自…

「ぼくのかんがえたさいきょうのPull Request」というテーマで発表しました

8/28(月)夜、第9回ペパボテックカンファレンスにてVue.js on Railsというテーマで登壇したのですが、その2時間前、GMOペパボに今年4月に入社した新卒7期生向けに座学を行いました。テーマは自由ということで、これまでの経験してきたエンジニア生活の中で培…

第9回ペパボテックカンファレンスでVue.js on Railsというテーマで発表しました

8/28(月)、こちらのイベントで登壇しました。 pepabo.connpass.com Vue.jsは日本語ドキュメントもしっかりしており、チュートリアル的な知見は沢山あるのですが、実際の現場での導入事例はあまりないのではないかということで立ち上がったイベントでした。 …

立って仕事ができるモニターアームを導入した

(写真は同僚の先輩にいきなり撮られたもの) 弊社の@linyowsさんが既に導入していて身体によさそうだなぁと思っていたので上長に相談したところOKが出たので導入しました。本日昼から約4時間弱立って作業してみましたが足と腰の疲労がすごいです。肩こりに…

エンジニアチーム内LTを始めることになりました

私はGMOペパボのムームードメインというサービスのエンジニアをしています。2ヶ月ごとにロリポップ!、ヘテムル、ムームードメインと、サービスを横断するインフラチーム合同でTechMTGが開かれています。(1回目の模様はこちら) 昨日2回目が開催されたので…

Railsアプリを簡単にメンテナンス表示するにはturnout(+capistrano+whenever)が便利かもです

Railsアプリをメンテナンス表示にしたい時、みなさんどうされているのでしょうか。大規模サービスであればリバースプロキシでメンテ状態にするのが今風かもしれませんが、もっとお手軽にメンテナンスにしたいときはアプリケーション側でやってもいいかもしれ…

Capistranoでデプロイした時にGithubのどのPullRequestをリリースしたかをSlackに通知する

上のような感じで、Capistranoでデプロイした時にどのPullRequestがリリースされたかをSlackに通知するGemを作りました。 github.com Capistrano v3 のみ対応です。masterブランチにマージされた最新のPullRequestを取得して通知しますので、デプロイすると…

設計力が足りない

設計力が足りない。仕事の進め方にしても、コーディングにしても。もっと先を見据えて進めていかなければー。気まぐれに動いて行き当たりばったりなことばかりなので何においても先のことを考えて動くことを意識していこう。

エンジニアとしての目標

今日、エンジニアとしての次の半年の目標を立てました。その前にこの半年で気づいたことがあるのでメモ。 自分はエンジニアとして何がしたいのか? この半年はムームードメインのユーザー登録数を向上させるという目標を立てました。結果的には大成功と思っ…

モンテッソーリ教育

子供が最近2歳になりましたが、現在保育園に通っています。その保育園はモンテッソーリ教育というのを取り入れていたので、妻が図書館で借りた本を読みつつちょっと勉強中です。大体の説明はwikipediaがいい感じでした。 子供がする作業を「おしごと」と呼び…

郵便番号から住所を取得するgemを書いた(ローマ字あり)

郵便番号から住所を取得するgemを書きました。いろいろなgemを探してみたのですが、ローマ字に対応していなかったので、ローマ字表記にも対応しています。 github.com 使い方 address = JpZipCode.search '100-0001' address.pref_code # => 13 address.pref…

Ruby、Rails周りのコードレビュー時に先輩に指摘された点メモ

【Rails】Controllerに書く処理か、Modelに書く処理かを考えよう この処理はModelに書くべきだ、Controllerに書くべきだという指摘が多かった。きちんとMVCの役割を捉えつつ、どこで処理するのが自然でわかりやすいかを考えよう。 【Rails】Enumを使おう enu…

ペパボに入っての半年間で感じたこと

この記事はPepabo Advent Calendar 2015の23日目の記事です。 ※技術系のエントリではありません。 GMOペパボ株式会社に2015年7月に入社して半年間たちました。ムームードメインのエンジニアとして働いています。入社3ヶ月で試用期間が終わり、やっと半年経ち…

Gitコマンドについて調べる【git fetch】

Git

git fetch git fetchは、リモートリポジトリの変更をローカルリポジトリに取り込みます。ローカルリポジトリには取り込みますが、ワーキングツリーには反映されませんので、現在編集中のファイルが変更されることはありません。 $ git fetch 引数なしで実行…

Gitを勉強するときに役立ったもの

Git

Git勉強中ですが、いろいろなページやスライドを見てすごく参考になりましたのでまとめました。 Git入門編 この方のスライドは本当にわかりやすかったです。コマンドことに作業ディレクトリ、ステージングエリア、Gitディレクトリの流れを図で説明していただ…

Gitコマンドについて調べる【git checkout】

Git

git checkout ブランチを切り替えるコマンドです。 subversionを使用していた方は、チェックアウトというとリモートからローカルにコピーするイメージですが、gitのチェックアウトは意味が違い、ブランチを切り替えるコマンドになりますのでお気をつけくださ…