Classi開発者ブログ

教育プラットフォーム「Classi」を開発・運営するClassi株式会社の開発者ブログです。

【開発者インタビュー #1】onigra

こんにちは! この度、シリーズ企画としてClassiで働く開発者のインタビューを始めます。 記念すべき第一回目は、プロダクト開発部で部長を勤めているonigraさんです。

まず簡単に自己紹介をお願いします

黒猫のアイコンでお馴染みのonigraさん

onigraです。社内ではyudaiと呼ばれています。

Classiには2019年にソフトウェアエンジニアとして入社して、2022年から開発本部のプロダクト開発部という部署で部長をやっています。 結構色々なことをやったのですが、開発者ブログに書いた内容だとEC2からECSに移行する仕事をやったりしました。

tech.classi.jp

経歴は、20代半ばまでフリーターをやっていたんですが、流れでソフトウェアエンジニアになりました。ソフトウェアエンジニアになってからは、EC、SIer、介護業界の会社に勤めていました。

社内のesa自己紹介ページに記載の経歴

ー フリーターからの流れでソフトウェアエンジニアってとても珍しい経歴ですね?

フリーターをしていた時、元上司に声をかけてもらってローンチ前のサービスのPMOになったことがソフトウェア開発に携わった始まりでした。当時お金もなくて引き受けるしかない感じでした(笑)

そしてその後サービスをリリースしたはいいものの、リリースしたら不具合でトラブルが頻発しました。目の前のトラブルを解決しないといけないけどプログラマーが足りない、トラブルを解決するにはデータベースというものを修正しないといけないらしい、データベースを修正するにはSQLという言語を使う必要があるらしい、それならSQLの書き方を調べてみよう、という感じで勉強していったのがエンジニアキャリアの始まりです。

ー なぜ自分でやるようになったんですか?

お願いして待ってるだけという状況はフラストレーションがたまるので、自分ができるようになりたいと思ったんです。それを繰り返しているうちに、色々な社内の技術スタックに触れたり学んだりするようになりました。なので最初はほぼ独学です(笑)

ー ソフトウェアエンジニアを続けることができた理由は?

純粋にプログラミングが楽しかったからですね。

自分が書いたものが考えた通りに動く、それによってサービスが回っていく、課題を解決していくことが面白かったです。達成感もあったし自分は天才なのかなって思えたりもしました(笑) 問題は大小色々あるし形も変わっていくけれど、ソフトウェアエンジニアの面白さの原点はそこにあって、今でもこの仕事を続けれるのはそういう感覚が味わえるからですね。

Classiへの入社経緯、入社理由は?

転職を考えていた時期にスカウトがあったことが最初のきっかけです。

面談で話をしていく中で、事業内容が自分の今関心があることと一致していること、自分の得意領域が活かせそうなこと、技術に対するスタンスや考え方が食い違わないこと、ビジネスモデルがしっかりしていることなどが決め手となり入社を決めました。

その他に気が合いそうなメンバーがいたことも大きいかもしれません。今のVPoTのしんぺい id:nkgt_chkonkさんのブログは元々見ていて知っていました。

ー 面談の中で特に印象に残っていることはなんですか?

各面談の中で共通で投げかけていた「競合についてはどう考えているのか?」という問いに対して、「同じ課題に立ち向かってる会社だと思っている」と理啓さん(Classi社長)が熱弁してくれたことですね。それを聞いて真摯に社会課題に向き合っている会社だなと思い、共感して入社しようと思いました。

Classiでの仕事内容を教えてください

今は開発本部、プロダクト開発部で部長をしています。元々はソフトウェアエンジニアとしてClassi内に存在するさまざまなレガシーなコンポーネントを修正する仕事をしていました。

ー ソフトウェアエンジニアとして具体的に何をやっていたんですか?

デベロッパーサクセス(組織横断的な技術課題を解決するチーム)として入社したんですが、当時のClassiにはRuby、Railsのバージョンアップという大きなミッションがありました。そういうことが課題の会社はバージョンアップ以外にも色々な課題(インフラや組織など)があることが多いので、目につく課題をひたすら解決しようという感じで仕事をしていて、気がついたら部長になってました。

ー 部長になってからはどんな仕事をしていますか?

肩書がついて役割は変わりましたが、取り組むことは基本的に「課題解決とボトルネックの解消」であり、現場のプログラマとしてやっていたことと基本的に変わってないと思っています。 対象が組織課題や経営課題になっただけで、やっていることは最適化問題なんですよね。これは、故・岩田聡氏のおっしゃっていたことに影響を受けています。

(参考: 【岩田 聡氏 追悼企画】岩田さんは最後の最後まで“問題解決”に取り組んだエンジニアだった。「ゲーマーはもっと経営者を目指すべき!」特別編

部長になろうと思ったのも、「今の会社のボトルネックはマネジメントだ」と考えていた時に部長の打診を受けたからで、課題解決するには自分がマネージャーになるのが手っ取り早いと判断したからなんですよね。 なので、部長という役割にまったくこだわりはなくて、なりたくてなったわけではないんですよ。隙あらば部長をやめたい(笑)

組織というのは、トップの人間が組織力の上限になってしまうと思っているので、自分よりも優秀な人に一刻も早く蹴落とされたいと思っています(笑)

Classiでの仕事の面白さや、やりがいについて教えてください。

学校に向けたサービスというのは、個人的に関心がある社会問題へのアプローチにつながることになり、とても可能性とやりがいがあると思っています。学校へ訪問する機会があるのも楽しいですね。

最近は部長という役割を通して仕事のステージが変わってきたことを実感しています。管理職ならではの仕事の面白さがわかってきました。

ー 学校にアプローチすることはonigraさんにとってどういう意味を持つのでしょうか?

僕は貧困問題や機会の均等に興味があるんですが、教育水準を上げることによってその問題は改善に向かうと考えています。そしてClassiは教育の中でも塾とかアドオンのものではなく、多くの人が通うであろう「学校」にアプローチしている。

それは学校に行く人なら基本的に触れるClassiがよくなれば、その子どもの将来の可能性が広げられるということだと思っています。 それはすごく可能性があることだし面白いと思っています。

ー どういう時に学校に訪問するのですか?

Classiはユーザーヒアリングで直接学校に行く機会があります。 高校生と話す機会なんて社会人になったらなかなかないので、とても新鮮な気持ちになりますし純粋に楽しいです。以前訪問させていただいた学校では生徒さんから、エンジニアになるにはどうしたらいいかを質問されたことがあったんですが、つい饒舌に答えてしまいましたね(笑)

ー 管理職の仕事の面白さややりがいとは?

取り組む課題の質が変わることによって仕事のステージが変わった実感がありますし、それは純粋に面白いですね。

経験したことのない課題に取り組むには、コンフォートゾーンを出て新しい知識を学ぶ必要があります。それは新しく言語や技術を学ぶことと変わらないので、できることが増えていく実感もありますしやりがいも感じます。今後また現場に戻った時にも役に立つことも多いと感じています。

でも、プログラミングの方が楽しいのは今でも変わりません。隙あらば管理職をやめて現場に戻りたいと思っています(笑)

Classiでの仕事の難しさや課題について教えてください。

10年近く運営されてるサービスなので、やはりレガシーなものも多いです。特に、いわゆる「分断されたモノリス」状態によるコンポーネント間を跨った機能の影響で、仕事がコンポーネント内で収まらないことも多く、職能やチームを超える振る舞いが求められることが多いです。

ー レガシーなものがあるとどんな課題があるのでしょうか?

レガシーなものの対応でいっぱいいっぱいになっていて、ビジネスを伸ばすことに注力しきれていないというのが正直なところだと思っています。

レガシーへの対応は色々あるけれど小手先で何か直せるものは終わっていて、残っているのはアプリケーションに手を入れないといけないものが多く難しい課題が多いです。これらをさっさとやっつけて、サービスを成長させるための開発をもっとたくさんできるようにしていきたいですね。個人的にはこれまで所属していた会社でも同じような仕事をやっていたこともあり、技術的には面白い仕事だと思っています。

ー 職能やチームを超える振る舞いについて詳しく教えてください

ある程度規模のあるレガシーなサービスは大体複数のコンポーネントが協調して動いていることが多く、Classiも例に漏れずそういう状態です。自分が普段触るリポジトリの修正だけでは解決できない問題も多く、チームを越境する動きが必要になっていきます。その際、他のチームのことや他のコンポーネントの知識が必要になるためなかなか難しいところだと思っています。

社内で活躍しているメンバーはチームを超えてコミュニケーションしたり、別のチームのリポジトリにプルリクを出したりすることに抵抗がないメンバーが多いと思います。

働く上で大切にしていることは何ですか?

最小限の努力で最大限の結果を出すことですね。

ー そのために具体的に何をやっていますか?

僕は自分のことを怠惰な人間だと思っています。 どうしてもプログラマという職種は作ることを求められますが、「作らずにその問題を解決する方法はないか?」を考えるようにしています。提案されたソリューションは本当にやる必要あるのか?その方法しかないのか?最善策なのか?など現状を疑うところから始めます。 そして、もっと一発逆転できるような、簡単でコスパがいい方法はないのかを常に考えています。

最後にひとこと

カジュアル面談に出ることが多いので、是非Classiに興味を持っていただけましたらお話ししましょう!


Classiでは「子どもの無限の可能性を解き放ち、学びの形を進化させる」というミッションに、ともに向き合っていただける仲間を募集しています。ご興味をお持ちの方は、 お気軽にお問い合わせください!

corp.classi.jp

© 2020 Classi Corp.