見出し画像

プログリットのプロダクトに携わるエンジニアとして大事にしたいこと

こんにちは!プログリットのプロダクト開発部でエンジニアリング・マネージャーをしている島本( @diskshima, @diskshima@mastodon.cloud )です。

最近投稿しているのが技術的な話や一般的な話になってしまっていたので、今回はもう少しプログリットについての投稿をしたいと思います。

今回は プログリットのプロダクトに携わるエンジニアとして大事にしたいこと についてです。
これはプロダクトの開発を行う最初の正社員エンジニアであり、かつ、エンジニア・マネージャーとしてエンジニアのマネジメントをしている自分として思っていることになります。

FIVE GRIT

まず前提として、プログリットでは FIVE GRIT というバリューを定義しています。

  • Customer Oriented: 顧客起点で物事を考え、行動します。

  • Go Higher: 顧客起点で物事を考え、行動します。

  • Own Issues: 課題に対して当事者意識を持ち、解決に導きます。

  • Respect All: 仲間を尊重し、思いやりのあるコミュニケーションをとります。

  • Appreciate Feedback: 全てのフィードバックに感謝し、より良い価値を創造します。

プログリットのバリュー「FIVE GRIT」

日頃の仕事やコミュニケーションの中で心がけることはもちろんですが、評価システムに組み込んだり、また定期的に体現度合いが素晴らしい方に表彰するなどしています。

今回の記事は、このFIVE GRITとつなげる形で プログリットのエンジニアとして大切にしてほしい点 を3つにまとめてみました。

  • 自己組織化を目指す

  • T型人材を目指す

  • お客様視点で考える

自己組織化を目指す

まず、自己組織化について、簡潔な表現が東京大学のサイトにありましたのでてあってので引用させていただきます。

簡単な要素から、自発的に複雑なシステムが組み上がることを、「自己組織化」と呼びます。

東京大学の記事の方では化学物質の話ですが「システム」を「組織」、「簡単な要素」を「人・メンバー」として読み替えても当てはまる表現です。
ここのキーワードとして「自発的」がとても大事であり、他の人(特に上司)や会社から行動をすべて指示されることなく、自分たちで行動していき、それによって組織が成り立っていくことになります。

更にエンジニア組織においては、スクラム開発の Scrum Guide(2017年版) では

Development Teams are structured and empowered by the organization to organize and manage their own work.

と書かれており健康的な組織においては、能動的に自分たちの仕事を管理していくことが求められています。弊社はスクラムを採用しているわけではありませんが、同様の考え方を大事しております。

この「自己組織化」を実現するにはFIVE GRITの Own Issues が不可欠になります。今、会社にとって大事なイシューが何なのかを捉え、それを解決するために自ら行動していく、そういうエンジニアでいてほしいですし、そういうエンジニア組織にしていきたいと思っています。

T型人材を目指す

T型人材は「知識を広く持ちつつ、特定の分野では誰にも負けないぐらい強い人材」のことを指します。「T」という文字のヨコ棒を「知識を広く持つ」部分に相当し、タテ棒が「特定の分野に強い」部分に相当します。コンサルティング会社であるマッキンゼーから始まったものですが、今では広く知られるようになっています。
こちらの記事などが詳しく書かれており参考になります。

一般的には少し抽象度の高いスキルの話で使われ、例えば、「デザインとプロジェクトマネジメント、運用設計などもできる(←ここがヨコ棒)が、特にデザインが強い(←ここがタテ棒)」という形で使われているようですが「エンジニア」という仕事の中でも適用できる考え方だと思っております。
弊社では「フロントエンド」「サーバサイド」「iOS」「Android」とエンジニアの役割を分けておりますが、各エンジニアには 自身の分野で強くなる と共に、 他の分野への知識も広げて いってほしく思っております。例えば、フロントエンドエンジニアでありながら、サーバサイドにも興味を持ち、コードベースを読み、技術について調べ、あわよくば修正のプルリクエストを出すことを積極的に後押ししております。

そうすることにより、エンジニアとしての幅が広がるのはもちろんですが、他の分野のエンジニアともコミュニケーションが取りやすくなりますし、異なる分野の考え方が活きる場面も多くあります。例えば、弊社のフロントエンド開発で利用している React.js ですが、こちらで広く知られるようになった「Declarative UI(宣言的UI)」の考え方は、iOSの SwiftUI やAndroidの Jetpack Compose でも採用されており、React.jsで考え方を知っていることで他の分野も理解がしやすくなります。

これは「言うは易し」なことであり、1つの分野だけでも学ばないといけない内容は多く、なかなか時間を割くことは大変ですが、プログリットではFIVE GRITにおける Go Higher にあるように高い目標を掲げて、挑戦することを大事にしており、「T型人材」のヨコとタテを両方とも力を入れていくメンバー、そしてそれをお互いに応援するようなチームであってほしいと考えています。

お客様視点で考える

最後に「事業と一体となって」という点です。
これはFIVE GRITの一つ目に書いている Customer Oriented になります。
継続的に改善をしていくような開発では

  • 事業を考える人が必ずしもエンジニアではない

  • 継続的のため、保守性や運用のことも意識しないといけない

という面があり、エンジニア組織として「受け身」になりやすい環境にもなり得ると感じています。
受け身が更に一歩進むとエンジニアリングがただのタスクの積み重ねになってしまって「事業」として成し遂げたいことが見えにくくなります。また、規模が大きくなると必然的に分業する必要があり、弊社のように事業を考えることが主としているわけではないエンジニアにとって、その理解度は低くなりやすいです。

プログリットのような事業会社では常に「お客様」がおり、その方々に価値提供、願わくば最高の価値提供をしていくことが最重要課題になります。エンジニアとして「技術を使ってみたい」「ここを少しでも綺麗に書きたい」という考えも大事ですが、それだけに囚われず常に「お客様に価値を届けるために」という尺度をメインとして測りながら、日々の仕事を進めてほしいと思っております。

最後に

気付いたら、意外と長く、気持ちが全面に出てしまっているような文章になってしまいました。
エンジニアに特化した書き方ですが、コアの考え方などは他の職種でも当てはまると思いますので、もし、プログリットに興味を持っていただけた場合は、是非募集している一覧などをご覧いただき、カジュアルな面談でも構いませんので、お気軽にご連絡ください。

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