こんにちは、マネーフォワード 福岡開発拠点の中里です。 クラウド経費本部でフロントエンドエンジニアをしています。
今回は、マネーフォワード 福岡開発拠点の取り組みのひとつ、「テックトーク」についてご紹介します。
テックトークとは
私たちが開催している「テックトーク」は、日々の業務やプライベートなどで学んだ技術ネタを整理して、アウトプットする機会を増やすために始まりました。
だいたい月に1度のペースで開催されており、10分ほどのLTとディスカッションをいくつか行うといった内容で、発表する側も聴く側もカジュアルに参加することができます。
どんな内容か、気になりませんか? 今回は特別に、最近のテックトークの内容を少しだけ公開してみようと思います。 私たちの日々の取り組みについて、知っていただけたら嬉しいです。
社内gemを公開した話
一番バッターは、バックエンドエンジニアの江藤さん。卓球が大好きです。
先日リリースした「マネーフォワード Pay for Business」と、既存プロダクトを連携させるために開発したgemについての発表です。プロダクトの間の認証には、現在OminiAuthを利用しており、新しいプロダクト用のStrategyのgemを開発しました。gemとして切り出すことで、プロダクト側のコードを薄くしつつ、社内の様々なプロダクトで使えるというメリットがあります。
社内で使うgemを初めて作ったとのことですが、開発はとてもスムーズだったそうです。社内リポジトリは、申請いらずでSlackを経由してさくっと作成でき、コードレビューも社内メンバーが協力してくれて、無事公開することができました。今後は社外のプロダクトでも利用してもらえるといいなと言っていました。
Parsletで構文解析やってみよう
次は、バックエンドチームのリーダー兼猫のしもべ、中久喜さんです。
Parsletというライブラリを使って、小さな構文解析を実装した取り組みについて発表しました。Parsletを使えば、PEG(Parsing Expression Grammer)形式で構文解析をすることができます。DSLでRubyっぽくルールを定義することができ、Parser(字句解析+構文解析)とTransform(インタプリタ)で解析し、構文木を出力します。
この技術をプロダクトに活用し、シンプルな関数の組み合わせで値を加工できるようにしました。既存の関数を置き換えていくことで、コードの量を大幅に減らすことができます。例えば、金額によってUI上で「限度内」などのラベルを切り替えたい場合に、追加の実装・リリースを必要とせず、画面上の設定のみで実現できるようになります。「ExFunction(=エクセルライクなファンクション)」と命名してあり、今後はgem化して横展開する予定だそうです。
Raspberry Piを用いた空室状況判定アプリ
3番目は、ハードも得意な長谷川さん。すごい。通称はせぴょん。
エンジニア研修の成果物である、オフィスに人が残っているかを判定する仕組みについての発表です。ラズパイを使って、室内環境のデータを定期的にサーバーにポストし、Slackでオフィスの空室状況を確認できるようになっています。
ハード面での工夫もしっかりされており、メンテナンスのしやすさからプラグで接続できるセンサーを利用したり、熱対策でヒートシンクの設置やサーマルスロットリングなどのチューニングを行ったとのことです。ガスセンサーなどの環境センサーをつけて、室内の不快指数を出すのもありだなと次のチャレンジの意欲を見せていました。
PyCallとたわむれる
最後は飛び入りで参加した、小説好きな野田さん。村上春樹推しです。
一見するとPythonのライブラリっぽいですが、RubyからPythonのコードを呼び出すことができる「PyCall」gemについての紹介です。PythonをあたかもRubyの関数として使えるようになっており、数値計算やグラフ描画などのライブラリも同じ作者さんが用意されています。
RubyでPythonが使えて感動した野田さん。RubyについてのSlackワークスペースである「ruby-jp」で、作者の方に直接お礼を伝えることができて、嬉しかったとのことでした。発表の後で、どのように実装しているのかについて、ディスカッションが行われていました。
最後に
福岡開発拠点のテックトークについて、ちょっとだけご紹介しました。準備期間はだいたい2週間くらいでできる範囲内の資料があればOKで、気合を入れて準備しなくてもアウトプットできます。参加者は、普段の仕事だけではなかなか触れることのできない技術についてカジュアルにインプットできる、とても良い学びの機会だと、私は思います。
参加者それぞれの専門性を越えて、活発に技術の交換ができるのが、福岡開発拠点の魅力のひとつです。現在、エンジニアを大募集中ですので、もし気になった方はカジュアル面談など、気軽にお申し込みください。
マネーフォワードでは、エンジニアを募集しています。 ご応募お待ちしています。
【サイトのご案内】 ■マネーフォワード採用サイト ■Wantedly ■京都開発拠点
【プロダクトのご紹介】 ■お金の見える化サービス 『マネーフォワード ME』 iPhone,iPad Android
■ビジネス向けバックオフィス向け業務効率化ソリューション 『マネーフォワード クラウド』
■だれでも貯まって増える お金の体質改善サービス 『マネーフォワード おかねせんせい』