今回はMERY開発部、サーバーサイドエンジニアとして活躍するメンバーを紹介します。
星野 裕樹 (Yuki Hoshino)
1991年生まれ。2016年4月、新卒で株式会社ディー・エヌ・エー(DeNA)に入社。2016年6月より株式会社ペロリへ出向し、サーバーサイドエンジニアとしてMERYのEC事業に携わる。2017年10月より株式会社MERYへ出向し、サーバーサイドを起点として幅広く担当している。
複数のアプリケーションのサーバーサイドからフロント、インフラ等の対応までを担うマルチプレイヤー
ー現在の業務内容を教えてください。
MERYの裏側では多くのアプリケーションが稼働しており、残念ながら各アプリケーションは密につながっていることが多く、一箇所の修正によって複数箇所に影響が出てしまうこともあります。私は長期間MERYのアプリケーションを触っていることもあり、MERYでは20個以上のアプリケーションが稼働していますが、どこを修正すれば良いのか、それによってどのような影響が出てしまうのかを瞬時に考えることができます。
それ故に、複数のアプリケーションが関わる対応をすることが多く、その他にも新規アプリケーション開発など、主にサーバーサイドの担当をしています。必要に応じて、フロントやインフラ、分析、運用など幅広く対応をすることもあります。
ー幅広くMERYのシステムに関わってらっしゃるのですね。星野さんは新卒でDeNAに入りMERYへと出向となりましたね。どのように開発に関わってきたのでしょうか。
ペロリに配属後は、EC事業で使用していた商品や注文を管理するアプリケーションを担当していました。2016年12月にサービスが停止することになり、それに伴い担当していたアプリケーションの開発も停止しました。
その後、担当するアプリケーションがなくなった私は記事の編集・校閲をするためのアプリケーションを担当することになりました。2017年11月に新しいMERYのサービスが開始したのですが、その頃には開発部のメンバーが少人数になっていたこともあり、記事を制作・配信するためのアプリケーションを起点として徐々に担当するアプリケーションの範囲が広がっていきました。
サーバーサイドだけ対応していれば良いというわけではなく、少人数だからこそ、自分で全て解決しなければいけない場面もあり、自然にフロントやインフラにも対応するようになっていきました。そうこうしているうちに担当領域が曖昧になり、アプリケーションの開発以外にも、SEOや分析、ユーザーの問い合わせ対応など、幅広く対応するようになりました。
多くの方に貢献したいから、まずはメンバーと話す機会を大事にする
ー関わった各担当者からも星野さんに対する感謝の声を聞くことが多いのですが、実際には事業部のメンバーとどのような関わり方をしているのでしょうか?
他部署のメンバーが行っている作業を知る機会があった際、「システムに機能を追加することで簡単に効率化できるな」と感じることが何度かありました。システムで自動化して他のことに時間を利用できるようにすればサービスの成長につなげられる可能性があるので、社内のメンバーだけでなく、サービスを利用していただいているユーザーにとっても良いことなのではないかと考え自動化を行っています。自動化することでメンバーもすごく喜んでくれて、私も嬉しくなりました。
私自身にとって誰かの役に立てることは原動力になっているので、社内外問わず多くの方に貢献したいと思い、他部署のメンバーと話す機会があるときは何か困っていることがないか聞いて、解決できそうであれば対応するようにしました。いつからか他部署のメンバーと話しやすくなっていき、開発に関わらないことでも相談していただけるようになりました。
困っていることがあってもあまり関わりがないと相談してくれないことがあったり、システムで自動化できることでもそれを知らずに作業していることもあります。入社したばかりのときに、「他部署のメンバーとコミュニケーションを取れるようにしておくことで、相談しやすくなったり、仕事で連携しやすくなるので、積極的に自分から話しかけるようにした方が良い」と教えていただいたことがあります。
当時はあまり実感することがなかったのですが、他部署のメンバーとの関わりを増やすことで実感するようになり、今ではコミュニケーションを取れるようにすることを大事にしています。
▲久しぶりの出社です。数ヶ月間主にリモートワークを行っています。物理的な距離はありますが、オンライン上であってもメンバーとのコミュニケーションを大切にしています。
自分自身の限界値を乗り越えることが成長につながっている
ー業務の幅を広げるために苦労した点や工夫した点を教えてください。
新卒で入社した頃は、技術的な知識が乏しく、頭が切れるわけでもないので、一つ何かをする度に複数の人から指摘を受けるという状態でした。入社する前から自分に自信が持てていなかったり、他の人はできるけど自分にはできないということが多くあったので、他の人が数十分で終わるような仕事を数時間掛けて丁寧に対応するようにしました。
少しでも自信が持てるように何をするにしても一切手を抜かず、自分なりのベストを尽くすとともに、時間を掛けて勉強や調査などをして、自分にとって質の高い経験を得られるようにしていました。それを継続していると、いつの間にか仕事の進め方のテンプレートのようなものができていて、仕事内容が変わってもテンプレートに沿って進めることで、アウトプットの質を落とすことなく、早く仕事を終わらせられるようになりました。
仕事を早く終わらせられるようになったことで時間に余裕ができたので、より多く経験を積むために、自分にとって難度の高いことでも率先して対応するようにしました。その一つが障害対応になります。
障害が発生したら状況を整理しつつ、どこに原因があるのか調査することになりますが、当然自分が触ったことのないアプリケーションが関わってくることもあります。障害の内容によっては、時間が経過するほど被害が拡大してしまうこともあり、最短ルートで行動することが重要になります。考える時間に制限がある中で、初めて見るものを把握しつつ、問題を解決するといったことを何度も繰り返しているうちに、問題解決能力が向上するとともに、触ることのできるアプリケーションの幅が広がっていき、自然と業務の幅も広がっていきました。
また、複数の障害が同時に発生することもあり、一人で対応することもあったためか、複数の仕事を同時にこなすこともできるようになりました。例えば、MERYで配信する記事の入稿処理にバグがあり、データ不整合が発生して編集部によるチェック作業が滞ってしまうことがありました。原因を調査すると複数のバグが見つかり、バグごとに発生した問題が異なっていて、複数の障害が発生していることがわかりました。作業が滞ってしまうのはMERYにとって深刻な問題であり時間的猶予はなかったので、バグの修正を行いつつ、作業が滞ってしまわないように1件ずつ手動でデータの修正を行って解決しました。
某アニメのように、窮地に立たされて、それを何度も乗り越えることで成長していく感じですかね(笑)。
今まで以上に新しいことにチャレンジし、視野を広げられるようにしていきたい
ーひとつひとつの積み重ねが星野さんをレベルアップさせているのですね。今後行っていきたいことは何ですか
未経験の領域がまだ多くあり、今は一つの問題に対して少しの答えしか導き出すことができないのですが、より良い答えがあるのではないかと思っています。経験を増やして視野が広がれば考え方を変えることができ、より多くの答えを導き出して、より良い答えにたどり着けるのではないかと思っています。
隔週1回上長との1on1があり、仕事に関係のないことでも気軽に話すことができます。上長からやりたいことがないか聞かれることがあり、相談すると新たなチャレンジの機会をもらえたりして視野を広げることができて、自身の成長につながっているのでとてもありがたいです。
今後は今まで以上に新しいことにチャレンジしていき、視野を広げられるようにしたいです。
▲チャレンジの一つが技術書典のための執筆活動です。これは、2020年9月に開催された技術書典9にて頒布した『INSIDE MERY vol.3』の表紙です。新しいことにチャレンジすることで得た知見は、有志のメンバーで作成している技術書に書くことでアウトプットし、不足している知識があった場合は勉強して補えるようにしています。
その他にも、MERYで稼働中の複数のアプリケーションを作り直したいと思っています。メンテナンス性が悪い部分が多いと感じており、開発時間が確保できず、やりたいことができないといったことが多々あります。開発時間を多く取られることで、新しいことにチャレンジする余裕がなくなってしまうので、作り直すことでメンテナンス性を高くし、開発時間を短くできるようにしていきたいです。