Small Changes

2021年6月の振返り


Metadata


先月から始めた取り組みですが、

少し先のことを考えてみたり先月の成果を振返ったりと大事な時間なので

今月も先月の振返りをやっていこうと思います。

2021年6月にやったこと

仕事

  • 自社(週1日)

    • 退会機能実装

    • OKR設定

    • MVP作成

    • 3Q振返り

    • 1on1

  • 開発支援先(週4日)

    • 開発環境構築

    • オンボーディング

    • issue対応

    • Rails勉強会参加

    • 1on1

勉強

  • もくもく会

  • JavaScript

  • CompositionAPI + TypeScript

  • WebRTC(Media Capture and Streams API, MediaStream Recording API)

仕事環境

  • starship, fisherman, tig, リポジトリ毎のgitconfig導入

  • ビデオチャットツールをPragliからSpatialChatへ

振返り

転職してようやく1か月経ちました!

正直あっという間の一か月で初めてやったことがたくさん…

慣れるだけでも大変だなーと思った一方で新しい環境のおかげで成長できたこともたくさんあったなーというのが感想です。

自社

フルリモートの感想

6月からスタートアップ企業で働いています。

今は自社が週1日、開発支援先が週4日という割合で稼働させて頂いています。

5月の有給消化期間中にオンボーディング等を進めながらコミュニケーションを取っていたこともあり、

初のフルリモートでの仕事ですがコミュニケーションの壁を感じることはなく、

個人的にはすんなりジョインすることができました。

自社のプロダクト

自社のプロダクトの使っている技術は元々Railsのみだったところから

最近は一部Vue導入を行ったり、テストをfeature specやrequest specで追加したり、Circle CIを導入したりしたそうで

一部画面はVue2のCompositionAPI + TypeScriptで書かれていたりと結構モダンな環境になっています。

特にテスト周りは前職ではほぼ書いてこなかったこともあり、キャッチアップが大変です。

新たにテストを書く際はそれなりに時間がかかりますが、それ以上にテストがあることのメリットはやはり大きいなーと感じます。

一度書いたテストの工程は担保される。

テストがあることでリファクタリングしやすい。

テストを書くときにテストがしやすい実装になっているかも重要だったりとテストを書くからこそコードの品質も高くなったり。

時間とのトレードオフですがスタートアップの場合は初期にテストを導入するメリットのほうが大きいと思われるのでテストは積極的にかけるようになりたいなと思います。

OKR設定

OKRとは、会社のゴールに紐づいた目標と主要な成果を管理する手法です。

ただやみくもに進んでも大きな成果は得られないと思うので、

全員で会社のゴールに向けて目標や主要な成果を設定するのは足並みを揃える上で大事だなーと思いました。

弊社だと3か月に一度設定しているみたいなのですが、やるべきことが明確になるので

そのうえで自分はどこを頑張ろうかということを考えられたりするので結構いいです。

MVP作成

今弊社として新しい試みに挑戦するタイミングでそのための最小限のプロダクトを新たに作っています。

個々が動いて素早くプロダクトができあがる様は素晴らしいですね!

なかなか経験ができないことだと思います。

新しい試みは実現したらすごいことだなーと思うのでワクワクしていますし、

MVPを作っているときは何としてでも実現させてやるという思いがモチベーションになって

すごいスピードでいいものができていると思います。

このメンバーで自分が面白いと思えることに挑戦できるのはすごくありがたいなーと思うので

何としてでも成功させます!

3Q振返り

メンバー全員で3Qを振返るいい時間でした。

メンバーが少ないスタートアップだからこそ全員で話合って、こんなことをやったとかここはだめだったとかいろんな意見が素直に出てきて良い時間でした!

まだジョインして1か月で振返っても大きく貢献できた!といえることは少ないですが、

逆に考えれば貢献の余地があるといえるので次の4Qではさらに貢献していきたいです。

1on1

最初は話すことあるかなーという感じでしたが、案外話すことはありました。

そして2週に一度あるので、自分の中で小さな問題のうちにいろんなことを吐き出せるので

個人的にはとても助かってます!

開発支援先

まず自社があるのに、なんで開発支援先も?という疑問に答えると、

スタートアップは外部から資金調達するか、自分たちで資金調達するかという話があります。

外部から資金調達できれば自分たちのやりたいことに時間を投資できます!最高ですね!

でもその分外部からチャチャが入る可能性もありますし、やりたいことよりビジネスを優先しないといけないケースもあるかと思います。

ですが、自分たちで資金調達できればほんとの意味でやりたいことに挑戦できます。

そういうことも踏まえて、自分たちで資金調達するために開発支援という事業も行っている感じです。

自社サービスが軌道に乗るまでは2足のわらじを履きつつなので、

それはそれで大変ではありますが、開発支援先の知見を自社サービスに活かせたり

エンジニアとしてはいい環境だなーと思います。

ほんとにやりたい領域へのコミットへは経営陣がコミットしてくれていますし、いい感じです!

開発支援先のプロダクト

開発支援先も同じくスタートアップ企業で、サービス自体も有名になってきていろんな企業さんに導入されて

人もたくさん入社してどんどん会社規模もサービス規模も大きくなっているすごい企業さんです。

結構大きいサービスで常に改善されているため、gem数も100を超えて全体像を理解するのは正直無理なレベルです。

Rails + Vue + TypeScriptでモダンな環境です。

同じくすべてを移行できているわけではないので、slimで書かれている古い実装もあります。

issue対応

オンボーディング後はissue対応を進めていました。

主にファイルアップロード周りの対応でした。

refileからshrineに移行しているようで、refileの実装とshrineの実装が存在していたりで色々と細かい箇所ではまったりしました。

このissueではサーバーサイド、フロント(Vue(OptionsAPI))、テスト、qa環境へのデプロイなど幅広く対応する必要があったため、開発フローまわりはだいぶ理解を深めることができ大変ではありましたが結果良かったと思います。

勉強

5月からVueのキャッチアップをしていることもあり、6月もフロント周りの技術をキャッチアップしてました。

MVPがCompositionAPI + TypeScriptで書かれていることもあり、フロントのキャッチアップのため個人的にいじくりまわしてました。

そのおかげもあり、だいぶCompositionAPI + TypeScriptのキャッチアップできました。

また、MVPでWebRTCまわりの技術も使うためMedia Capture and Streams API, MediaStream Recording APIも少し詳しくなりました。

2つの動画をcanvasに表示して、その映像を録画し音声を載せて保存したりできたり夢中になって実装してました。

仕事環境

少しずつ環境改善ということで、 starship, fisherman, tig, リポジトリ毎のgitconfig導入を行いました。

starshipはコンソールの表示をいい感じにしてくれます。

fishermanはfishのプラグイン管理マネージャーです。

tigはgitログが視覚的に見やすくなったり、ログからさらに変更ファイルが見れたりするGitクライアントです。

git周りはとくにGUIアプリを使っているわけではなかったのでかなり便利になったと感じます。

あとは仕事でGitHubアカウントを複数使うのでリポジトリ毎に使うアカウントを切り替えられるようにgitconfigを設定しました。

大きな変化でいうと、ビデオチャットアプリがPragliからSpatialChatになりました。

雑談が生まれやすくなったり、自分の顔が小さく表示されるので気を使わなくてよかったりと色々改善された気がします。

Dockerを使うのですが16GBだと足りなくなってしまったので、PCについては、メモリ16GB→32GBに増築しました。

ゲーミングPCを仕事用で使ってるのですが、マザーボードのメモリのスロットが4つあってよかったです。

ネクストアクション

現状はフロント、バックで分業するほどの規模の会社ではないこともあり、

フロント・バック両方それなりにできる必要があると感じてます。

とはいえ、開発支援先ではサーバーサイドを専門としています。

フロント周りは以前よりは5,6月でキャッチアップできたと思うので、

7月はバックエンドまわりを改めて深ぼっていきます。

そのために、SQL・Rails・メタプロの本を買いました!

また、開発支援先ではGraphQLを導入しているのですが、全く知識がないのでGraphQLも積極的にキャッチアップしなきゃなーという感じです。

まとめ

細かいことをあげればキリがないくらいに自分の環境が変わりました。

感じたのは「いい人たちがいい環境を作り、いい環境にはさらにいい人が集まる」ということです。

だからこそ「この人たちともっと仕事したいし、もっと役に立ちたい」という気持ちが出てきて、

技術に対しても前向きにキャッチアップし、会社に対しても貢献したい欲が出てくるようになってきました。

転職して本当によかったなーと思います。

さらに上を目指して頑張ります。

References