togami2864のゴミ箱

Cybozuのフロントエンドエキスパートチームで一週間インターンをした

2021-09-07

8月30日(月) ~ 9月3日(金)の一週間サイボウズのフロントエンドエキスパートチームにインターンをしました。
https://cybozu.co.jp/company/job/recruitment/intern/2021/frontend.html
このチームのインターンは今年初募集でした。もともとサイボウズフロントエンドウィークリー/マンスリーのリスナー?であったことからチームの存在は知っていたし面白そうだったので、応募しました。応募から2週間くらいでスピーディーに参加が決まった記憶があります。

なにやったん?

結論からいうと、

  • npm workspaceでkintoneのリポジトリ内にReactで書かれたフロントエンド資産を内包するmonorepoを作った
  • ↑に関するADR(Architecture Decision Record)の作成
  • フロントエンドマンスリー#14への参加

をしました。

monorepoづくり

インターン生二人がドライバー交代しながら、すべての工程をモブプロで行いました。
丁度いいことに、最近たまたま謎のmonorepoムーブメントに直面していました。結構、OSSはmonorepoになっていることが多いのに加えて、インクリメンタルビルドに関するOSSメンテナーのボヤキをたまたまみたり、zennでインクリメンタルビルドに関連する記事を見たりmercari shopsでbazel採用したのをみたりしてました。
しかし、実際に巨大なリポジトリに基盤を作るのは始めてで、良い経験になりました。

やったこと

  • ディレクトリの命名
  • 技術の選定
  • 依存の解決
  • CIの修復


特に依存の解決をするに当たり、みんなでデバックをしていった経験によって、pacage.jsonやpackage-lock.jsonにちょっとだけ立ち向かえるようになりました。このまえastroという静的サイトジェネレータの素振りをした時に遭遇した不具合に関して回避策をissueを出す時の解析にさっそく役立ちました。

また、大人数で技術の選定をするのは初めてでした。全く思いもしてなかった視点からの意見がたくさん出て勉強になりましたし、かなり具体的なところまで問題を絞り込んで(6つの候補を2つに)、さらにメリットとデメリットを戦わせて最終的に決断にもっていく過程を経験できて、単純に面白かったです。

後述するフロントエンドマンスリーの準備や、最終成果発表の準備もあったので実質3日間くらいで、開発チームがいつもどおり開発できる寸前のとこまで行けました。

フロントエンドマンスリー#14

ブンブンハローyoutubeをしました。
世界中に流される感覚を知りました。
https://cybozu.github.io/frontend-monthly/posts/2021-08
ちなみに"astroのwasm-powered conpiler"について話しました。(ちなみにwasm-powered compilerを直訳したせいで"wasm搭載コンパイラ"という謎単語を生み出してしまっているのは気にしないでほしい)
astroに関してはちょうど前回(#13)で共有されていたのでそちらを参照してください。

他にも色々
@__sosukesuzukiと話す会


いまや日本におけるprettierのエイリアスとなった(と勝手に僕が思っている)@__sosukesuzukiと年が近いとのことで話す会を設定してもらいました。

お品書き

  • swcの@kdy1、僕たちの1個か2個上ぐらいらしい & コミット量がやばい
  • babel、寄付問題とそのちょっとした裏話
  • ぼく: 筑波ってすげー
  • Romeのセバスチャンについて
  • denoもRomeも会社になったよね

などなど.....

あとやっぱOSSのメンテナーはどこも少なくなるorいなくなる傾向があるみたい(そもそも余暇にメンテナンスをするという行為自体が意欲がなくなるときつい)

青野社長と話す会


事前に質問が募集され、実際にお昼を食べながら直接しゃべるイベント。終始フランクな感じで進みました。
割と他の方と聞きたい内容がかぶっていた & プライベート枠の質問が全然なかったので、"ペットを飼っているかどうか"を聞いた。(今思えば場違い感が半端じゃなさすぎる)

チーム内ではポールパイソンを飼っているのではないかとか


ボルゾイを飼っているのではないかとか


話が挙がっていたが違った。

他にも現役エンジニア社員と話す会他のチームのインターン生とランチなど一週間にイベントもりだくさんでした。
会社自体も良い意味で外部に公開している通りのイメージそのままでした。
3日目に思いっきり寝坊して40分くらい遅れたのですが、「よくあること」と流されて特に何もありませんでした。それくらい心理的安全性もありました。
加えて、今までインターンをしてきた中で突出してメンバーの地方移住率が高かったです。

最後に

インターン中に関わった皆様、フロントエンドエキスパートチームの皆様、そして唯一の同期インターンである@wafuwafu13_、5日間本当にお世話になりました!!!!!!!!!

そして、チームのマスコット動物?であるハシビロコウ(サムネの鳥さん)に会いたくなった。


我々調査隊は感染防止対策を徹底した上で上野動物園"アフリカのどうぶつ"エリアの奥地へ向かう予定なので続報を期待してほしい。