見出し画像

スペースマーケットに中途入社したバックエンドエンジニアのリアル

はじめまして、バックエンドエンジニアの北島です。

シニアエンジニアとして9月の中頃に入社致しました。早いもので、もう入社から三ヶ月も経ちます。すこしずつ仕事には慣れてきましたが、スペースマーケットの持つ幅広い技術スタックに毎日刺激を受けながら、まだまだ学びを深めている最中です。

弊社は現在も引き続きバックエンドエンジニアを募集しております。少しでもご興味を持たれた方のご参考になるよう、私が入社してから現在までにやってきたこと、また主観的に感じていることをお伝えできればと思います。

募集要項は下記リンクからご確認いただけますので、ぜひ一度ご覧ください。

掲題の通りリアルな状況をお伝えしたいため、なるべく事実を織り交ぜつつお話するよう心がけて参ります。ご参考にしていただければ幸いです。

前歴

エンジニア歴としては6年ほどです。直近ではフリーランスとして活動しておりました。

メイン言語はPHPで、企画〜プロトタイプ開発〜実装〜保守運用までを幅広くお仕事をさせていただいておりました。特に多かったのは企画周りのお仕事です。コンセプト設計からエンジニアの知見を生かす形で参画し、ユーザのペルソナやターゲットを一緒に考え、ユーザストーリーマッピングを作成しつつ設計に落とし実装、という一連の作業を担っておりました。

過去にはweb広告企業で正社員としてエンジニアを経験しており、その際は広告配信システムや内部向け管理ツールの開発などに従事しておりました。

入社した経緯

私の場合は採用サービスでスカウトをいただき、最初の接触から内定までおおよそ一ヶ月程度の期間でした。あれよあれよという内に気がついたら内定をいただけた、という感覚です。

スペースマーケットのメイン技術スタックであるRuby on RailsやNode.js,TypeScriptあたりの経験はほとんど持ち合わせておらず「なぜスカウトされたんだろう」と不思議に思った記憶があります。

実際選考の場面で「技術スタックが適合していない気がするが大丈夫か」と質問してみたところ「別言語での開発経験があれば十分キャッチアップ可能と捉えている。現在はとくに縛りを設けていない。」とのお答えをいただき、それならばという形で選考を受けることと致しました。募集要項によってその辺りは変化するかと思います。

基本的な方針として、シニアエンジニア枠として入社したからといって即戦力で初日から全力で頑張らねばならない訳ではなく、しっかりと慣らし運転の期間があります。その点をもし不安に思っている方がいらしたらご安心ください。弊社は幅広い技術を採用しておりますが、技術スタック的に未経験の分野が多くともしっかりとキャッチアップする意識さえ持てばやっていける、なんとかやっていけていると考えています。

仕事の流れ・体制

この三ヶ月で携わった実際の仕事内容に関しましては、バックエンドの機能追加・バグ修正等がメインとなります。その他、通常の業務とは少し違う負債解消やプロダクト改善の取り組みも多々ありますが、そちらはまた別の機会に触れられればと思います。

日々の基本的な仕事の流れは以下のような形です。

1. ユニット毎の施策にアサインされる

2. 要件定義

3. 事前調査・設計

4. 開発・テスト・コードレビュー

4. リリース・保守

このように、一般的なシステム開発の流れとほぼ同様となります。弊社独自の特徴は1のユニットという部分になります。弊社ではユニットという職能横断型のマトリックス組織単位で日々プロダクト改善を進めており、採用するソフトウェア開発サイクル(ウォーターフォールやスクラム等の手法)はそれぞれのユニットに委ねられています。

画像1

それぞれのユニットが独立した目標を持ち、目標達成のためのロードマップ・マイルストーンをプロダクトマネージャが設定します。そのロードマップに従って施策を企画し開発していくという流れとなります。このあたりは弊社三重野の記事が詳しいのでご覧いただければより具体的にご理解いただけるかと思います。

個人的な感想といたしまして、この体制は非常にやりやすいです。主に感じる利点は以下3点です。

1. 企画立案プロセスからオープンになっていることで、全体の見通しがよくボトムアップの意見も通りやすい

2. デザイナー、フロントエンジニアとのコミュニケーションが取りやすい

3. 施策をリリースした際、チーム一丸となって喜べる

全体を通し「目標に対し職能を超えてみんなで頑張る感」が強く、チームとして一丸となりやすい体制という印象です。フリーランスとして個人で働いていた背景もあり、このような越境性・チームの力を感じながら仕事ができるのは非常に嬉しく思います。

1のオープン性につきましては、施策のコンセプト・目的をしっかりと把握した上で要件定義・開発に入ることが可能となりますので、エンジニアとしてはやりやすいです。「なんでこの開発をしているんだろう」という状況がなくなり、開発効率やモチベーションも上がります。実際に、リリース後の数値を定期的に観察する習慣が自然とできるなど「自分ごと意識」がより高まる効果を感じております。また、企画段階で意見を投げかけることも可能です。私自身プロダクトマネージャやデザイナーに代案や改善できそうな点を挙げることも少なくないです。この際、プロダクトマネージャにエンジニア出身の方が多い弊社の特徴から、仕様に関する会話が非常にスムーズです。そのおかげでユーザ体験に関する議論がプロダクトマネージャ・デザイナー・エンジニアの間で平等に繰り広げられるなどユニット体制が持つ越境性を感じられる瞬間も多いです。

2と3のコミュニケーションに関しましては会社全体として言えることですが、チームとしてのグルーヴ感が本当にすごいです。大きな施策はもちろん、ちょっとした仕様変更や修正の際も各職能の方を巻き込んで迅速に進めることが可能です。そしてなにより、それがリリースされた際はみんなで一緒になって喜ぶ雰囲気が当然のように存在しています。こうした世界を実現できているのも、このユニット体制のおかげと感じています。

実績としての作業量

次に、ファクトベースのデータとしてgithubから私がこの三ヶ月でリリースした案件数、書いたコード量を確認してまとめてみました。

実開発日:40日程度

リリース数:25

変更行数:8,400

リリース頻度:0.625/day

リリース数と表記しておりますが、厳密にはマイクロサービス化されている各リポジトリのマージ数をカウントしております。一案件で複数リポジトリのマージを行うこともあり、リリース数と案件数はイコールではありません。コードの記述量に関しましては、処理コードとテストコードの比率は5:5程度になるかと思います。

データを見るに、開発が出来た日は一日平均200行程度コードを記述二日に一度程度の頻度でリリースをしていることとなります。

コード生産性/リリース数は評価に困るところですが、主観の振り返りとしましては思ったよりもコードを書けなかったという認識です。大きな原因は、組織体制や開発フローの問題ではなく、私個人の慣れ不足に起因すると捉えています。弊社の環境はマイクロサービス化によってリポジトリ分割がなされており、慣れないうちはどうしても開発対象のリポジトリの調査・コードリーディングに時間がかかってしまいます。この点はドメイン知識や開発フローへの慣れによって解消されることが期待できますので、今後はより生産性が向上していくと考えられます。

働き方

コロナ禍という状況もあり、基本はリモートで勤務しております。私は社員の方とコミュニケーションを取るため出来るだけ週に一度出社するようしておりますが、コロナへの不安等事情があればフルリモートを選択することも可能と聞いております。

勤務時間につきましては、私の場合は裁量労働制の契約となっているため8h/day必ず勤務しなければならないなどの制約はございません。しかしながらある程度決まった時間に勤務をした方が会議等予定が合わせやすいため、基本的に11:00~20:00の間に勤務をするようしております。これから入社される方の場合や、他の部署の場合は契約内容によって異なる可能性がございますのでご注意ください。

次に残業に関する実績値をご紹介しますと、この三ヶ月で一般的な月160h勤務を大きく超えるようなことはありませんでした。超えたとしても10~20h程度です。私の場合はキリのいいところまで終わらせたいという自主的な理由で勤務時間を伸ばしたことがほとんどで、会社として残業をしなければいけない雰囲気は一切ないです。むしろやることが終わった日は早くあがることも多いです。やることをやっているならその辺りは全く気にされない雰囲気なので、働き方の自由度は非常に高いと感じます。特殊な事情がなくともまったく残業していない者も当然おりますので、ご安心ください。

入社後に感じたギャップ

1. マイクロサービスの大変さ

2. スピーディな改善サイクルとリリース頻度

3. 褒める文化が定着している

1. マイクロサービスの大変さに関しましては、実績としての作業量の項目でも記載致しましたが、マイクロサービス化が進行中であることからコードの全体感が掴みづらいという感想です。マイクロサービス化には当然メリットもあり、リポジトリごとに責務が明確化されつつあるので「これはどこに書いたら良いんだろう」と悩むことは少なくなるかと思います。しかし、そういった感覚はある程度慣れないと中々養えないものですから、最初のうちは苦労することもございます。一方で、弊社にはリポジトリオーナー制度という制度があり、各リポジトリに誰が詳しいのかいつでも確認できるようになっています。そちらを確認しつつリポジトリオーナーに確認をとれば大体のことは解決できます。トランザクティブメモリー(「誰が知っているか」という知識が組織内ではより重要という組織的な学習概念)を実践している良い制度だと感じます。

2. スピーディな改善サイクルとリリース頻度に関しましては、想像よりも高速に改善が進んでいるという感想です。最近衝撃を受けたのですが「この施策は1人月程度かかります」という工数見積もりを出したところ「あー、かなり重いんだね」というコメントを頂戴しました。私のこれまでの経験からの感覚ですと、1人月というとかなり軽い業務に類します。しかしスペースマーケットのスピード感に照らし合わせると、1人月という工数は「重い」という感覚になります。この辺りは50人月以上のウォーターフォールプロジェクトに関わっていた個人的な感覚とは随分ギャップを覚えました。改めてスピード感についていけるよう頑張らねばと感じます。

ファクトベースの資料として、直近1週間における弊社のgithub activityを紹介します。50人もいないエンジニア組織で161/weekものPRがmergeされていることから、開発のスピード感が読み取れるかと思います(PRのclosedが増えているのは年末大掃除の結果です)。

スクリーンショット 2020-12-24 14.29.17

3. 褒める文化が定着しているに関しましては、特に嬉しかったギャップです。この点に関しましてはデザイン部の方々が積極的に文化を醸成されており、そちらから波及して全社的に定着しているのかと思います。エンジニアで言えば、例えばテストコードをしっかり書いてプルリクエストを作成するだけで褒められます。「テストを書くのは当然」というスタンスの会社は多々ありますが、弊社にはそれに対しポジティブなリアクションを明示する文化があります。私の好きな本に『Team Geek――Googleのギークたちはいかにしてチームを作るのか』という本があるのですが、そちらで提唱されているHRT(Humility:謙虚, Respect:尊敬, Trust:信頼)の精神が自然と体現されています。こういった文化や精神があることで、コードレビューが荒んだ戦場と化すことも少なくなっていると感じます。

事業の面白み

入社する前からスペースマーケットというサービスのことは存じておりましたが、入社してからよりその事業の魅力に気づきつつあります。

初めはなんとなく「BtoCtoCのサービスなんだなあ」程度に捉えておりましたが、実際には企業がスペースを貸し出しているケース(BtoBtoC)や個人が企業にスペースを貸し出しているケース(BtoCtoB)もあり、想像以上の可能性を感じるようになりました。

関連して、こうしたプラットフォームサービスを運営する以上当然のことではありますが、貸し出す方・借りる方・サービス自体の三方良し(シェアリングエコノミー業界自体や関連企業を含めると四方にも六方にも)の状態を実現しなければならないというプレッシャーも強く感じます。

例えば借りる方(ゲスト)に向けた改善施策を重ねることで、貸し出す方(ホスト)の体験も向上しスペースマーケットとしての価値も向上します。同じように、ホストに向けた改善施策を打ち出すことで登録スペースの増加が見込め、ゲストの需要を広くカバーできるより良いサービスとなっていきます。弊サービスは本質的にはステークホルダやターゲットごとに価値切り分けができるものではなく、三者で互いに相関を持っています。このように、ビジネスの根本的な構造として関係者全体が相乗的に向上していかなければ成り立たないサービスですから、それに従事する一人一人の社員にも当然その意識が求められます。難しくも面白みを感じる部分です。

関わる方全員が幸せになるサービス。

この世界観に共感を覚える方であれば毎日情熱を持って働ける会社であると私は思います。

まとめ

入社を考えられている方に向けて、改めて私が感じる弊社の推しポイントをまとめます。

1. ユニット体制によるチームのグルーヴ感

2. 褒める文化の優しみ

3. 働き方の自由さ

4. 開発サイクルのスピード

5. 皆が幸せにならないと成り立たない事業コンセプトの魅力

以上が個人的に特にオススメのポイントです。ご査収ください。

最後に

長文となってしまいましたが、この投稿がこれから入社される方の一助になれば心より嬉しく思います。ここまで読まれて、もし少しでもご興味をいただけましたら是非下記ページよりご連絡をお待ちしております。

最後に、私が個人的に「こんなに豪華なところを借りられるの?」と驚いたゴージャスなスペースをまとめてみました。一度は行ってみたいですね!


この記事が気に入ったらサポートをしてみませんか?