RubyKaigi Takeout 2021 のプラチナスポンサーでの協賛をします!

RubyKaigi Takeout 2021 に参加を予定している皆さん、こんにちは。
マネーフォワードで技術広報をしているluccafortです。

この度マネーフォワードはタイトルにもあります通り RubyKaigi Takeout 2021にプラチナスポンサーとして協賛することとなりました。

RubyKaigi Takeout2021 のスポンサー一覧は↓↓↓を御覧ください。
https://rubykaigi.org/2021-takeout/sponsors

国内最大級かつ国際的カンファレンスであるRubyのテックカンファレンスに対して貢献できることを嬉しく思います。
今年もオンラインでの開催ということでインターネットを通して日本全国、そして世界各国の参加者の皆さんと交流できることを楽しみにしています!

マネーフォワードでは「マネーフォワード ME」に始まり、多くのサービスがRubyを使って開発、運用が行われています。
これらのオープンソースを活用させていただくことでマネーフォワードのユーザーさまに素早い価値提供が行なえ、弊社のバリューである User Focus をお届けすることが出来ていると感じています。

続きを読む

Googleフォームで参加者募集して、自動でGoogleカレンダーに申込者を招待する小技

こんにちは。
マネーフォワードでインターンをしております赤羽です。
最近、「営業戦略部」から「CIO室 コーポレートエンジニアリンググループ」に異動しました。

社内イベントの開催者向けに、イベント参加希望者を自動でカレンダー招待する仕組みを作ってみたので紹介します。

 

↓↓ 完成品 使用例 ↓↓

 

ツール作成の背景

社内でイベントを開催する際の手順として、

  1. カレンダーで社内イベントの予定を設定
  2. イベント告知
  3. 参加希望者を一人ひとり手作業でカレンダーに招待

が一般的な流れでした。
ですがこの場合、「3. 参加希望者を一人ひとり手作業でカレンダーに招待」が地味に手間が掛かります。

Slackで告知して、参加希望者はスレッドにリアクションするという方法などがありますが、100人200人の参加者をポチポチやるのは大変ですし、何より時間のロスです。
マネーフォワードでは、社内イベントや勉強会が日々開催されていますので、効率化のため申込からカレンダー招待を自動化するGoogleフォームを作成しました。

 

手法

ツールは「Googleカレンダー」と「Googleフォーム」を使用します。
Googleカレンダーで作成する予定名と、Googleフォームのタイトルを一致させることで、GASが自動で予定を識別する仕組みです。

続きを読む

マネーフォワードは何をモデル化するか

こんにちは、第一楽章だけでも月光は早すぎた内波です。

皆さんは「モデル」と聞くと何を思い浮かべるでしょうか。
Googleに聞けばイメージにはファッションモデルが、強調スニペットには辞書の文言が並んでいます。
「モデラー」というとプラモデル(模型)を作る人が浮かぶ人もいれば、機械学習をやっている方ならまたそれとは違う職業を思い浮かべるかもしれません。

エンジニアブログの読者に多そうなソフトウェアエンジニアの方にとっては「データモデル」が一番馴染み深いのではないかと思いますが、僕は長らく物理学の分野にいたことも手伝って “Standard Model”(標準模型) と呼ばれる物理理論が浮かびます。
(余談ですが、僕が現役の頃は「ヒッグス粒子も見つかってないのに theory=理論と呼ぶな」と言われていましたが、それが見つかった今はまた違う呼び名かもしれません。というのとさらに追加の余談で、マネーフォワード社にはこの発見論文の著者の一人が在籍しています。)

物理学は自然科学の一分野で、自然界の物理現象を対象とし、それらを理解し法則性を明らかにしようとする学問です。ピアノの鍵盤を叩いて音が鳴る機序から、先に引いた研究が目指すような我々が生きる世界が究極的には何によって形作られているか、といった半ば哲学的なことまで対象とします。
自然科学は対象とする現象を観察し、どのようなモデルであればシンプルかつ矛盾なくその現象を記述できるかを考えます。例えば太陽や惑星といった天体の観測から太陽系と呼ばれるモデルを考えて理解することもその一つです。天動説の時代、地球を不動の中心としたイメージでは説明が難しかったものを、明快に理解し、その動きを予測することを可能にしてくれた優れたツールです。

僕はそういう分野のバックボーンがあるせいか、今の仕事の中では、データ化すべき対象を観察し、それをどのようなモデルとして捉えるか、既存のモデルとどのように整合をとらせて解釈するか、といったことを考えるのが好きです。

続きを読む

StepFunctionsとSageMakerでML学習パイプラインをつくる

初カキコ…ども…

俺みたいなインターネットミームおじさん、他に、いますかっていねーか、はは

今日の社内の会話
あのシステムかっこいい とか あの機能ほしい とか
ま、それが普通ですわな

かたや俺は電子の砂漠でデッドロックしたレコードを見て、呟くんすわ
it’a true wolrd.狂ってる?それ、誉め言葉ね。

好きなエディタ neovim
尊敬する人間 弊社CTO

なんつってる間に4時っすよ(笑) あ~あ、会社員の辛いとこね、これ

というわけで初めましての方は初めまして、@ken11です。
最近はマネーフォワードのCTO室AI推進部という部署で、MLとかML Opsとかクソコラ職人とかやってます。
冒頭自己紹介がわりに古のコピペをぶっこんだけど大丈夫そ?

さて、そんなインターネットミームについて語る時間も欲しいところですが、今日はAI推進部らしくML学習パイプラインの話をしようと思います。

AWSにおけるML学習パイプラインの作成

いきなりですがAWSは好きですか?
僕は大好きです、AWS大好き芸人を自称しております。

続きを読む

[関西開発拠点] オンラインミートアップ開催のお知らせ

関西開発拠点でバックエンドエンジニアをしている上野です。

今回は 7/30 (金) 19 時から関西開発拠点で採用イベントを実施するのでそのイベントの概要を紹介します!

関西拠点の現状

「そもそもマネーフォワードって関西に開発拠点あるの?」と思った方もいると思うので、まずはイベントの詳細に入る前に関西拠点の紹介をさせてください。

それまで、東京、福岡、ベトナムに開発拠点を構えていましたが、プロダクト開発を加速させるため京都拠点が 2 年前に誕生しました(立ち上げ当時のエンジニアブログ)。それに加えて、2021年3月に大阪にもオフィスを作り、今は大阪と京都の 2 つのオフィスで 1 つの拠点としてプロダクト開発をしています。当社のこれまでについてさらに詳しく知りたい方は沿革をご覧ください。

関西拠点では主にIPO準備企業や上場企業の成長に伴う課題を解決するマネーフォワードクラウド会計Plusの開発をしています。会計Plusはありがたいことにお客様も着実に増えてきており、喜びの声を多く頂いています。

続きを読む

GraphQL Federation – API Gatewayの進化

こんにちは、マネーフォワード 福岡開発拠点のStart up Studio部で新規プロダクトを開発しているバックエンドエンジニアのダンと申します。

今回の記事は私たちのチームでマイクロサービスアーキテクチャにあるAPI Gatewayの課題を解決できるソリューションを検討の経緯、そして辿り着けた優れたGraphQL Federationについて紹介させていただきます。

  1. 課題
  2. GraphQL Federationの前の世界
  3. GraphQLの誕生
  4. GraphQL Federation登場 – “One endpoint to rule them all”

 

1. 課題

まずは、マイクロサービスアーキテクチャによく出会うパターンの例を説明します。

製品をレビューするシステムを構築するプロジェクトで、フロントエンドとバックエンド二つのコンポーネントがある。
バックエンド側はドメインによる三つのサービスに分けて、それぞれのサービスは以下の情報を管理する:

  • Users Service: ユーザー情報を管理するサービス
  • Products Service: 製品情報を管理するサービス
  • Reviews Service: 製品に対するレビューを管理するサービス

続きを読む

エンジニアが技術広報に取り組んだ奮闘記 2021年上期

数カ月ぶりにおはようこんにちはこんばんは。
マネーをフォワードする会社で技術広報してるluccafortです。
皆さん元気ですか?
私は応援するマンチェスター・シティがチャンピオンズリーグの優勝を逃してしまいやる気の全てが虚無に消え去ってしまいました。
でもコパ・アメリカでアルゼンチンがグループ首位になったのでこれを糧に日々をなんとか過ごしています。
選手ではアグエロが好きです。

今年の3月から技術広報を本格始動してはや3ヶ月、怒涛の時間を過ごしたので技術広報立ち上げ期の壮絶ハードな活動を書いておこうと思います。
めちゃくちゃ頑張ったので 全力でシェアしてください!!!

エンジニアが技術広報としていろいろ貢献したり、失敗したことも会社の資産だと考えたので今回エンジニアブログに投稿させてもらいました。
技術的な内容ではないのですが、プロダクト開発でも技術広報でも根底となる思考プロセスやカイゼンの手法は同じなので広義の意味でエンジニアリングで技術広報をしていると捉えてもらえればと思います。

いきなりですが宣伝させてください!

GoCon 2021 Springでスポンサーをされていたカミナシさんと合同でイベントを開催します。
弊社マネーフォワードからは2名のエンジニアが登壇予定となっています。

岩村からは確定申告が技術的負債を如何にして返済して、フルリニューアルを成し遂げたのか?
木吉からは経費精算の自動化をさらなる推進を実現するためにGoでマイクロサービス開発をおこなった話をそれぞれ登壇していただく予定になっています。

6月30日(水曜) 19時開催予定となっています、まだ定員に空きがありますので是非ご参加ください。
「現場の声にとことん応える!ペーパーレス最前線のプロダクト開発」

閑話休題。

続きを読む

長期エンジニアインターンで得た学び

こんにちは。松本と申します。

2020年8月から2021年5月までの約10ヶ月間、クラウド横断本部のわり算グループという技術的負債を解消するチームでエンジニアとしてインターンをしていました。

メインタスクとして社内向け管理画面のリプレイスを担当しつつ、他にも実際にユーザーに使われているサービスの一部機能を改修したり、共通基盤のコードを数千行消してリファクタリングするなど本当に多くのことを経験させてもらいました。


(共通基盤のコードを数千行消した PR)

今回は振り返りの意味も兼ねて、インターンで得た学びを書き残しておこうと思います。

  • 具体的な技術の話をすると収まりきらないので、今回は省略します。
  • 記事にする関係上、詳細を割愛・簡略化している部分もあります。

要求の裏にある「やりたいこと」を常に意識する

続きを読む

Rails のモデルのコールバックを削除したら、とある処理を 33 倍速くできた話

こんにちは!
マネーフォワード クラウド経費 というサービスでサーバサイドエンジニアをやっている 福岡拠点 (九州・沖縄支社) の野田 (@quanon_jp) と申します。
最近は 狩猟 に勤しむ日々で、ハンターランクは 333 を超えました 💪

先日、クラウド経費で大規模な事業者 (ユーザ) 様の環境で実用に耐えないほどのパフォーマンスの劣化が発生しました。
そのときに行ったパフォーマンス改善についてお話します。

モデル構造と問題点

ユーザ (User) モデルとプロジェクト (Project) モデルがあり、1 人のユーザに対して複数のプロジェクトを割り当てることができます。
その割り当てをプロジェクト割り当て (ProjectAssignment) モデルで表現します。

続きを読む

マネーフォワードCTOが考えていること(2021年6月)

こんにちは。
マネーフォワード CTOの中出(なかで)です。

CTOの私が、普段「なにを感じて、どんなことを考えているか」について、四半期に一回社内へ共有している内容を一部編集し、エンジニアブログに公開したいと思います。

前回はこちら:マネーフォワードCTOが考えていること(2021年3月)

 

目次

  • 技術的負債からの脱却
  • リードエンジニアへの期待値
  • 採用へのコミット

 

技術的負債からの脱却

多くの企業が抱えているであろう技術的負債を、例外でなくマネーフォワードも抱えています。技術的負債からの脱却は、マネーフォワードの多くのエンジニアにとっての悲願です。先日9周年を迎えたマネーフォワードは、2016年12月頃からその負債を解消するプロジェクトをスタートし、実に歴史の半分をかけて負債からの脱却を図っています。
過去の判断はマネーフォワードが成長していくために最善のものであり、負債であると同時に資産でもあります。その結果、今も多くのユーザーに価値を提供できています。

続きを読む