初めてOSS貢献体験と、それにより変化した考え方について

こんにちは。
マネーフォワードのIDサービス開発部のダンです。

今日は、OSSを利用し貢献する過程における考え方の変化について共有します。

 

OSSとは?

OSSはOpen Source Softwareの略で、利用者の目的を問わずソースコードを使用、調査、再利用、修正、拡張、再配布が自由なソフトウェアの総称です。
OSSはオープンで、コミュニティなどで共同開発されます。

OSSは、「オープン」「共同開発」「自由」などのキーワードがあります。
このキーワードは意味として理解していましたが、私はその中身を充分に認識していませんでした。

Money Forwardは、OSSコミュニティを支える活動を行っております。
マネーフォワードとオープンソース・ソフトウェア | Engineers’ Blog
私たちはOSSのお陰で仕事ができており、自分もOSSに貢献する気持ちがだんだん大きくなりました。

 

OSS貢献前の私の考え方

プロジェクトにJoinして機能を開発する際、その機能のライブラリー(OSS)を探して、見つけたら導入します。

その時点での考え方は、、、

  • OSSプロジェクトは有用なblack-boxである
    • 先人が難しい課題に取り組み、解決してもらったので、我々はその課題に取り組まなくてよい
    • ただ、コードが難しくことも多く、コードを読むのは辛いなぁ
  • OSSは出来上がった食事である (Readme & using)
    • 問題解決のため、どのようにOSSを導入するか? → Readmeを読んで、事例を見てOSSを導入して、動作を確認 → 完了!
    • すぐに使えて、それにより自分のタスク(開発時間)を減らせます
  • OSSはalmost error-freeである (ほとんどエラーフリー)
    • 沢山の人がそのOSSを使っているため、実績もあり、安定しているため、安心してすぐ使えます。良かった!

つまり、私は完全にOSS依存していて、何もやりたくなかったのです!

続きを読む

iOS版マネーフォワードMEの開発環境について

この記事は Money Forward Advent Calendar 2019 6日目の記事です。

こんにちは。
iOSエンジニアの玉井(@tamadon3776)です。

今回はマネーフォワード MEのiOSアプリ開発環境がこの1年で結構変化したのでそれについて書こうと思います。

CIをJenkinsからBitriseに移行

元々CI用のMacが社内にあり、そのMac上にJenkinsサーバを立ててDeployGateへの配布やApp Store Connectへのバイナリアップロードを行っていました。

この方法には以下のような課題がありました

CI設定秘伝のタレ化問題

iOS用Jenkinsは4年以上前から運用されていて、色々な人がちょっとずつ設定を継ぎ足ししている状態でした。まさに秘伝のタレ。
当時設定を追加した人も退職済みだったりして、相談することも難しい状態でした。

CIマシンのメンテナンスが地味に手間

頻繁に発生するわけではありませんが、以下のようなメンテナンス作業が地味に手間でした

続きを読む

オフィスの便利ツール紹介:トイレ混雑チェッカー

マネーフォワードのコーポレートインフラを語るアドベントカレンダー
Money Forward CorporateIT Advent Calendar 2019、12/6(金)の窓です。


こんにちは。
コーポレートインフラ担当の坂本です。

今日はマネーフォワードで活用されている
『重要インフラではないけどちょっと便利なオフィスツール』
を紹介します。

第一弾はトイレの混雑チェッカーのご紹介。

 

トイレ混雑チェッカー

『トイレ個室5室』のうち『空き4室』のイメージ

続きを読む

エンジニアのマネーフォワード2019

こんにちは。マネーフォワード京都開発拠点の村上です。

Money Forward Advent Calendar 2019』12/2(月)の記事です。

昨日は広報視点で色々振り返りました。
今日はエンジニア視点でマネーフォワードを振り返ってみます。

人数推移

今年一年で社員数は約415名から約600名になりました。
エンジニア職は約120名から、約200名になりました。

めっちゃ増えてますね。それでもまだまだ採用しています。
サービス作りが好きな人はぜひ門戸を叩いてくださいね!

続きを読む

私の履歴書:マネーフォワードの会計開発チーム編

こんにちは!
マネーフォワード クラウド会計・確定申告のサーバーサイドエンジニア、藤井裕起です!

私は2019年4月にマネーフォワードにjoinし、マネーフォワード クラウド会計・確定申告の開発部署でQAや開発を担当しています。

今回初めてエンジニアブログを書いたのですが、実は私、このエンジニアブログには出演経験があります。
マネーフォワードのQAエンジニアのお話この一年の変遷に出ている元新聞記者F氏が私です。

そう。
私はマネーフォワードに入社する前は、日本経済新聞社の記者として働いていたのです…!

そんな元日経新聞記者の私が、
なぜエンジニアになってどうやってキャッチアップしていったか、
そして私が所属する会計チームはどのような歴史がある組織でどんな仕事をしているのか、

を日経新聞の名物コラムにちなんで私の履歴書として紹介いたします!

 

なぜエンジニアになったのか

私は2015年に日本経済新聞社に新卒で入社し、4年間記者として働いていました。

続きを読む

ACML2019 参加レポート

こんにちは。
Money Forward Lab 研究員 森田大樹です。

マネーフォワードには、データ活用を目的とした研究組織『Money Forward Lab』があります。
今回、研究に活用できそうな技術や先端の機械学習技術を調査するために、ACMLという国際会議に参加してきました。
その様子をレポートします。

学会名

Asian Conference on Machine Learning (ACML)
http://www.acml-conf.org/

開催日時

11月17日[日]〜11月19日[火](来年も11月開催

開催場所

名古屋 WINC AICHI (来年はタイ・バンコク !)

対象領域

機械学習系の基礎技術及びそのアプリケーション
(今回はアプリケーション系の成果が46%を占めていたそうです)

プログラム

こちらをどうぞ:http://www.acml-conf.org/2019/program/

概要

主にアジア・オセアニア領域の研究者が集う機械学習系国際会議です。
今回の記事では主にBest Student Paperの内容をご紹介しますが、取り扱う課題・手法・データは多岐に渡っており、満遍なく知見を得られる学会だったと思います。

続きを読む

Coding Talk:Rubyの20年を支えたのは「フルタイムコミッターの公共性」と「書く気持ちよさ」(社内イベントレポ)

こんにちは、CTO室のくりまおです。

10月30日に「Coding Talk」というマネーフォワード社内イベントを開催しました。
「Coding Talk」とは、「コードを書く」ということをテーマに、パネリストと参加者がディスカッションをする会です。

マネーフォワードには、さまざまな技術スタックやバックグラウンドを持つエンジニアがたくさん在籍しています。
一方でエンジニアの人数が増えたことで、以前に比べるとエンジニア同士の交流が少なくなっていました。

そこで、共通のテーマで話し合える・話を聞ける機会をつくり、エンジニア同士の交流を深めてほしい、という想いでイベントを実施しました。
当日はZoom中継も含め約40人が参加しました。

登壇者

卜部昌平

2016年2月入社。フルタイムRubyコミッター。Ruby本体の改善を中心に活動。日本Rubyの会監事。

松田明

2015年1月よりマネーフォワード技術顧問。Ruby / Ruby on Railsコミッター。RubyKaigiのチーフ・オーガナイザー。

加藤拓也

2015年8月入社。経理財務プロダクト本部 本部長。VPoEも務める。

モデレーター:水戸利奈

2019年4月入社。クラウド横断本部 横断グループ。Rails Girls スタッフ。

続きを読む

GitHub Actionsのワークフローを利用してクロスブラウザのE2Eテストを自動化する

こんにちは。
マネーフォワード クラウド経費』のフロントエンドエンジニアをしている木村(@kimromi)です。

Ruby on Railsを利用してサービス開発を進めているプロダクトのフロントエンドの環境を整えていき、UIの改善やフロントエンド側の開発効率アップなどにつなげていくような動きを現在やっています。

なぜクロスブラウザのE2Eテストが必要になったか

ある日、IE11のみでJavaScriptエラーが起こり動作しないとの連絡が入り、慌てて対象のプルリクエストをリバートしたということが起こりました。

原因としてはライブラリの追加によるものでした。
現在フロントエンドの改修を行っていく中で、ライブラリの追加やビルド方式の変更などドラスティックな変更をすることが多くなってきています。

そのたびにMicrosoftからダウンロードできるVM環境を立ち上げ手元で確認するのは手間がかかり確認漏れも発生する可能性があるため、クロスブラウザでのE2Eテストの必要性を感じました。
また、BtoB向けのクラウドサービスという特性上、IE11からのアクセスが全体の約23%とGoogle Chromeに次ぐ2番目にアクセスが多いブラウザです。
Microsoftがサポートを切らない限りサービスとしてIE11のサポートを切ることはできないという判断で今後も付き合っていく必要があります。
IE11での自動テストを導入することでリリース前に不具合を検知することができ品質を向上させる目的もあります。

GitHub Actionsを選んだ理由

続きを読む

Slackのデータを可視化してコミュニケーションを活性化させた話

こんにちは。
2019年新卒の原田大輔です。
普段は「マネーフォワード クラウド会計・確定申告」のサーバーサイドエンジニアをやっています。

今回新卒エンジニア研修をきっかけに今までに挑戦したことのなかった新しい技術に挑戦し、Slackでの活動を可視化するツールを作りました。

その時の話です。

 

Slackの行動可視化ツール作るに至った背景

きっかけは1ヶ月間の新卒エンジニア研修でした。
研修は「自分が今までに使ったことのない技術」を使って各自プロダクトを作るという内容です。なんと、RailsGuidesやRailsTutorialの日本語訳を作っているYassLab Incの安川さんもメンターとして参加いただきました。
(エンジニア研修の詳細は、同期の富田湧平くんのエンジニアブログにも書かれているのでぜひ読んでみてください。)

研修とはいえ、せっかくプロダクトを作るなら研修が終わっても継続して使っていけるものを作りたいと考えていました。
そんな中、思いついたのが「Slack上の行動を元に何か面白いことができないか?」でした。

続きを読む

2019年もマネーフォワード開発合宿を開催しました!


こんにちは。
CTO室のくりまお(@awa_kuri23)です。

マネーフォワードでは、毎年 開発合宿 を実施しています。

今年も前半・後半に分かれて、6月に開催しました。
その様子をお届けします。

 

開発合宿とは

開発合宿の目的

マネーフォワードの開発合宿は、新しい技術の習得や技術の活用に挑戦する「テクノロジーチャレンジ」を大きな目的としています。

マネーフォワードは、Valueのひとつとして『Technology Driven』を掲げています。
その実現には、中長期的な視点を持ってテクノロジーに対してチャレンジする気持ちと姿勢が必要です。

開発合宿では、非日常的な環境で、業務の割り込みなどをうけることなく、一泊二日で参加者各自がテクノロジーに対してじっくりと向き合います。

開発合宿のルール

  • チャレンジする内容は、業務に関係あってもなくてもOK
  • 必ずしも2日間でなにか成果物を完成させる必要はありません
  • 個人開発・チーム開発(1チーム3人まで)どちらでも可
  • 合宿内での成果発表では、「自分にとって何がテクノロジーチャレンジだったのか」について発表してもらう

続きを読む