1
/
5

大手クライアントの開発プロジェクトやプロダクトの立ち上げに裁量高く携われる環境。おかげでエンジニアとして一回り大きく成長できました。

今回お話を伺ったのは、ニジボックス入社7年目になるフロントエンドエンジニアの高木さんです。ニジボックスでは、日本を代表する企業をクライアントとするプロダクト開発への参画実績が数多くあり、現在も業界分野問わず多くの企業の成長を支えています。高木さんは、入社以来大手クライアントの制作案件を数多く担当し、そこで培った経験を生かし、現在開発組織のマネジメント職を担当されています。ニジボックスのフロントエンドエンジニアのクライアントワークの実際や、開発組織のマネジメント業務についてのリアルエピソードを語っていただきました!

大手クライアントのプロジェクトに立ち上げの段階から参画し、裁量を持って仕事ができる。

--大手クライアントの案件に、どのような立場で、どのくらいの範囲まで携わっていますか?

案件ごとに携わる範囲や業務内容は異なりますが、現在メインで携わっている案件を例にお話します。この案件は、アパレル系ECサイトを運営する大手クライアントとなり、アパレル製品の制作フローを効率化するというプロジェクトです。

業務の効率化という目的は定まっていましたが、具体的にプロダクトの仕様や方針は定まっていなかったため、クライアントの担当者様にヒアリングをしながら少しずつ基盤構築を進めていきました。具体的には、React、Next.jsなど、どんな技術を使うのかを選定するところから始まり、システム設計、ブランチ戦略など、プロダクト開発におけるさまざまな方針決めです。デザイナーが不在のプロジェクトなので、デザインシステム部分の提案も一部担っています。

--どんなチーム構成でプロジェクトは進んでいるのでしょうか?また、そのチームにおける高木さんの裁量範囲はどの程度あるのか、どんな雰囲気なのかを教えてください。

フロントエンドエンジニアは、私を含めたニジボックスメンバー2名です。クライアント側のメンバーはプロジェクトリーダーをはじめ、バックエンドやインフラエンジニアの構成で、所属や立ち位置にとらわれずチーム感高く連携しながら業務を進めていくイメージです。そのような現場ですので、クライアント目線での一方的な「これを作ってください」というようなコミュニケーションはなく、「こんな目的があるんだけど」と言ったような構想段階から相談をいただき、クライアントも私たちも一緒に考えながらプロジェクトを進めるケースが多いです。私たちも先方の意図をくみ取り、他のエンジニアと議論をしながら骨子を作り、フロントエンド領域に関してはメンバーにタスクを振り分け、主体的にプロジェクトを進めていきます。ある程度固まったらリーダーとすり合わせ、方針を最終決定していきます。かなりの裁量を持って仕事をすることができていて、チームの雰囲気もとても良いです。事業全体の方向性や現状の課題など内部情報も共有してくださるので、チーム全員で同じ目的に向かって進んでいくことができているのではないかと思います。

高難易度の案件への挑戦が自分自身の力に。その経験がエンジニアとしての転機につながった。

--エンジニアとして開発に携われることの喜び、やりがい、面白さはどんなところにあると思いますか? 

自分たちが作ったシステムによってユーザーの課題を解決することができたり、企業の事業的価値を生むことができたりすると、やりがいを感じます。

例えば、先ほどの一つ前に携わった案件では、クライアントに対してユーザーの課題をヒアリングするところからスタートし、開発を進めたんですが、リリース直後からたくさんの好評をいただき、とてもうれしかったです。実績の数値としても良い結果となったらしく、頑張ってきたかいがあったなと思いました。既存の仕様に則してシステムを忠実に作る業務ももちろん大切ではありますが、課題をヒアリングするところからスタートし、クライアントと一緒になって方針を考え、リリースまで走り抜ける。その面白さは、クライアントとの関係性がしっかりと構築されているニジボックスで働くからこそのものだと思います。

--高木さんのエンジニア人生において転機になった案件やエピソードがありましたら、教えてください。

こちらも先ほどの案件でのお話になりますが、まさにエンジニアとしての価値観が180度変わりました。具体的なアプローチとして、既存の開発基盤で動く機能を、私たちで全くのゼロからソリューションを考えて開発をするという、案件の難易度としても非常に高いものでした。これまで担当してきたものとは違い、ユーザー課題のヒアリングからスタートし、何を作るのか?なぜ作るのか?というところまで考えるのは、初めての経験でした。実は参画したばかりの頃は、フロントエンドエンジニアの業務領域を超えているのでは?と戸惑ってしまったんです。でも、そのうち自分が考えた案がクライアントの担当者様に認められ、採用されるとやはりうれしくなっていきました。その経験がターニングポイントとなって、考え方が変わり、エンジニアとして一回り大きく成長できたなと感じました。

リクルートグループや社外のクライアントワークで多様な案件に参画してきた。幅広く積み重ねた経験がエンジニアとしての強みにつながった。

--ちなみに、現在の案件に参画する前やニジボックスの入社当初はどのような経験をされてきたのでしょうか?

ニジボックス入社前は他業界で働いていたため、個人的にプログラミングを学んでいたものの、実務経験はなく、ゼロから学び直す思いで多くの制作案件に携わってきました。入社して2年半ほどは、会計システムサービスを運営するクライアントの案件に参画し、バックエンドエンジニアとして、Ruby on Railsを使用したWebアプリケーションの運用と機能強化に力を注ぎました。

その後、フロントエンドエンジニアに挑戦する機会をいただき、仕事の幅を広げるチャンスだと思い、思い切って取り組みました。それから4年間ほど、レガシーな技術を扱うものからモダンな技術を扱う案件、短納期のものから長期的に携わるものまで、既存のWebアプリケーションのエンハンスをはじめ、新施策のアイデア創出段階から参画する案件まで、規模も領域も多様な案件に携わってきました。

--多様な案件を経験されてきたことで得たもの、良かったことを教えてください。

先ほどお話した、まさに現在担当中の業務でこれまでの経験が生きていると実感していますし、目の前の案件に自信を持って臨めるのも、過去のこれらの積み重ねがあったからこそだと思っています。

私たちニジボックスのメンバーは、リクルートグループのサービス運営の現場に特定領域のプロフェッショナルとして参画し、価値発揮をしています。

このような案件では、基本リクルート側の経験豊富なエンジニアがプロジェクトのリードエンジニアや開発リーダーになっているケースが多いのが特徴の1つだと思います。そのため、技術選定やコーディングガイドライン、アーキテクチャなどの開発の基盤がすでにできている状態で参画することが多く、当時エンジニアとしての経験値が少なかった僕にとってはその環境が非常にありがたかったです。自分のタスクを早めに終わらせて、既存の基盤やコードを調べながら隅から隅まで眺めたりデバッグしたりして、できるだけ自分の知識として吸収しようという気持ちで業務に携わっていました。その経験があったからこそ、今ある程度の引き出しが持てていると思います。

また環境面で良かったことは、大規模なアプリケーション開発に携わることが多いというのもあったと思います。そのため、大規模なアプリケーションを作るときはアーキテクチャが重要になってきたり、さまざまな工夫が必要になってきます。その取り組みを実際に現場で見れたことはすごく良い経験でした。また大規模かつ長く続いているアプリケーションだからこそ出てくる問題を体感できたのも良かった点です。例を1つ挙げると、複数の機能を複数のチームが同時並行で開発していた時に、各機能ごとにブランチを切って開発を進めたのですが、リリースの際にブランチ間で大規模なコンフリクトが起きたり、新規機能のブランチをどこで切るかなど、ブランチ自体の構造も複雑になっていたりして、ブランチのマージタスク量だけでもリリーススケジュールに影響していました。その経験から、今の私が担当するプロジェクトではトランクベース開発を検討しています。トランクベース開発とは、基本的にmainブランチ1つだけで開発していき、できるだけ細かい粒度でmainブランチにコミットし、都度リリースしていく手法です。継続的デリバリーというソフトウェア開発手法の中の1つのプラクティスなのですが、こういう手法を検討できるのも、過去にブランチ開発の辛みを経験したからこそのことだと思います。

--マネジメント職も兼任されているそうですね。日々どのような立場でどんな業務を担当されているのかを教えてください。

現在はマネジメントが主務ですが、私はどちらかというとプレイングマネージャー的なスタンスで、現場のリーダー業務や、エンジニアとしてWebアプリケーションの開発にも意欲的に携わっています。主にReactやNext.jsを使った、いわゆるモダンフロントエンド開発を担当することが多いですね。開発現場では、案件ごとに進捗のモニタリングを行い、スムーズにリリースまで運ぶことができるようにプロジェクトを推進していきます。また、フロントエンドエンジニア組織のマネジメント業務として、メンバーが個々に参画する案件の進捗管理を行いながら、必要に応じて技術的面のアドバイスや、モチベーション管理など、個別の面談などを通じてサポートしています。

今後は開発組織の代表としてクライアントとの打ち合わせの場に出向き、契約条件の交渉をことも増えることでしょう。組織運営面でもリソース管理やメンバーの育成業務など、まだまだ新米マネジャーではありますが、一つ一つの業務をしっかりと丁寧にこなしていけたらと思っています。

ニジボックスならではの機会を大いに生かし、壁に立ち向かう。その体験が、エンジニアとしてこれ以上ない成長の機会に。

--エンジニアとして大切にしていること、これまでの経験を経て大切だと感じたことを教えてください。

信頼、尊敬、謙虚をモットーに仕事をしています。これは、僕のバイブルである『Googleのソフトウェアエンジニアリング』からの受け売りなんですが、高度に機能しているチームこそが成功の鍵で、そのチーム作りのためには信頼、尊敬、謙虚が大切であると。これまでの実体験から、この考えにはとても共感できるところがあります。当たり前のようですが、日頃から意識しないとうっかり忘れてしまいそうなので常に見えるところに貼っています。

また、「なぜ作るのか?」という根本部分から考えることも大切にしています。これによって、例え開発コストが高くなってしまう案件に際しても、目的をずらさずに別のソリューションを提案することもできると思うんです。作るものが決まっている案件でも、この考え方はかなり生かせているなと感じます。

--最後に、高木さんが今後挑戦したいこと、目指すキャリアについて教えてください。

現在担当している案件の基盤構築が完了すれば、次はいよいよ開発段階に入ります。まずは開発に関して開発リーダーとしてしっかりと責任を背負い、クライアントの事業を最大限に成長させていくためのお手伝いをしていきたいと思います。とても魅力的なプロダクトになりそうで、今からワクワクしています。この貴重な経験を含め、これまで培ってきた経験を生かして、自分の中に経験値として積み上げていきながら、新たな開発案件の立ち上げやサービスグロースに貢献していけたらと思っています。ニジボックスは、明確に目指すキャリアが定まっていない人でも、さまざまな機会を与えてもらうことで、自分のやりたいことを見つけることができ、手を挙げればさまざまなことにチャレンジできる会社です。この先も自分自身でチャンスを切り開きながら、エンジニアとしてステップアップしていきたいですね。


株式会社ニジボックス's job postings
3 Likes
3 Likes

Weekly ranking

Show other rankings