takanorip blog

FOLIOのフロントエンドで働くということ

2019年12月2日

TOC

これはFOLIO Advent Calendar 2019 1日目の記事です。

みなさんこんにちは、株式会社FOLIOフロントエンドエンジニアのtakanoripです。

アドベントカレンダー1発目の記事ということで(すでに遅刻しているんですが)FOLIOのフロントエンドエンジニアが普段どんな仕事をしているのかについて書いてみよかなと思います。

フロントエンドエンジニアの仕事は会社やチームによって大きく違うので、何かの参考になれば嬉しいです。あとこの記事読んでFOLIOのフロントエンド面白そうだなって思った人がいたら、ぜひ僕あてにご連絡ください!うちに来てほしい!(弊社最近フロントエンド人材不足がすごいことになってるのでぜひ本当に皆さんの応募お待ちしております!!!

フレームワーク論争を横目に、フロントエンドの本質を追求するエンジニア募集! | 株式会社FOLIO
_株式会社FOLIOは、2015年12月に創業したオンライン証券会社です。…_hrmos.co

FOLIO?

採用サイトできたので見てください!

TOP | The Special One
_FOLIOの採用サイト「The Special One」のトップページです。募集職種、カルチャー、ブログ、FAQといったコンテンツで構成されています。_corp.folio-sec.com

FOLIOの技術構成について

ざっくり説明するとこんな感じになってます。

バックエンドはScalaで書かれていてマイクロサービスになっています。フロントエンドはNode.js(koa.js)で書かれたBFFとReactで書かれたクライアントアプリケーションがあり、BFFではマイクロサービスのAggregationとServer Side Renderingを行っています。

フロントエンドの記述構成はReact/Redux/Flow/CSS Moduleです。その他ライブラリは適宜いろいろ使ってます。

フロントエンドエンジニアの担当範囲

フロントエンドエンジニアはBFF〜React〜CSS全部やります。基本的には全員がBFFもCSSもやることにしていて、BFF担当、CSS担当、みたいな分け方はしていません。

こうしている理由は人数が少ないからではなく、機能開発にはアプリケーションのBFFからCSSまで把握していることが必要なので、できるだけ属人性を排除しつつ適切なコードを全員が書けるようにするため、というのがあります。

また、BFFのAPIはフロントエンドUIのためのデータを返すので、フロントエンドで何を表示するかに大きく依存します。なのでBFFとReactで担当を分けず、一人が一貫して開発を行うほうが品質の高いコードが書けると考えています。

しかし採用条件にBFF(Node.js)の業務経験があることは入れていません。ある程度の知識があれば入社後に十分キャッチアップできる範囲だと考えています。(キャッチアップできそうかどうかは面接時に見てます。)

会社の状況

これが一番気になるところかなと思います。

知りたい方は僕とご飯にでも行きましょう。

こんな人なら楽しめるかも

今のFOLIOのフロントエンド、こういう人なら楽しめるかもというのを書き出してみました。

制約が多くてもそれを楽しめる人

証券会社なので法律的な制約がとても多いです。しかもその法律はとても前時代的で非合理的で、今の時代では全く意味をなしていないものも多数存在します。

しかし証券会社である以上それらをきちんと遵守しなければなりません。これは会社を存続させるために非常に大切なことなのです。

よってFOLIOのフロントエンドエンジニアにはその制約を受け入れつつ、どのような工夫をすればより良いユーザー体験を提供できるか、を常に考えなければなりません。これはとても面倒なことですが、これが楽しめそうな人はFOLIOで活躍できそうな気がします。

カオスな状況を楽しめる人

正直、今FOLIOのフロントエンドはとてもカオスです。技術的にも組織的にも課題が山積みだし、担当する範囲は広く人数は少なくなり1つのことにまとまった時間を割くことが難しいときも多々あります。また事業的にも転換期であり様々なプロジェクトが並行して走っていたりします。

リファクタリングも正直後手に回っていて、良く言えば何でもできる、悪く言えば何をするか決まってない、状況にあります。

特定の作業だけやるのが好きな方には正直今のフェーズは向いていないと思いますが、逆に**フロントエンドに関することなら何でもやりたい!**という人にとってはとても面白く力を発揮する機会がたくさんあると思います。

サービスデザインやUIデザイン、UXデザインに興味がある人

FOLIOではエンジニアがサービスデザイン段階から関わることがよくあります。デザイナーやPdMがリードする部分はあるものの各フェーズでエンジニアの意見が取り入れられることも多いです。

またポジションやタイミングによっては、UXリードとしての役割をフロントエンドエンジニアが担うこともあります。

まとめ

みなさんの応募お待ちしております!

フレームワーク論争を横目に、フロントエンドの本質を追求するエンジニア募集! | 株式会社FOLIO
_株式会社FOLIOは、2015年12月に創業したオンライン証券会社です。…_hrmos.co

takanorip

digital design engineer. X: @takanoripe