
KotlinとIntelliJ IDEAに魅せられた―シニアエンジニアが見た「スマートラウンドで働くこと」
こんにちは!スマートラウンドでエンジニアをしている福本です。
皆さまにスマートラウンドの中の人を知ってもらいたく、今回はシニアエンジニアとしてコードと育児をバリバリやっている塩入さん(社内でのあだ名: しおしおさん)にインタビューしました。
KotlinやIntelliJ IDEAなど、多くのOSSにもコントリビュートされているしおしおさん。そんなしおしおさんのこれまでと、スマートラウンドで働いてみて感じていることを聞いてみました。
話す人
塩入 央淳(シニアエンジニア)
主に金融機関(銀行やリース、カード会社など)のシステム開発を長年経験。その後、株式会社ユーザベースでマーケターや営業向けのサービスの開発を行う。2022年11月より株式会社スマートラウンドに入社。シニアエンジニアとして、主にサービスの起業家・スタートアップ側の機能開発を行うマイクロチームをリードしている。

聞く人
福本 晃之(フルサイクルエンジニア)
2023年5月よりスマートラウンド入社。フルサイクルエンジニアとして、主にスタートアップと投資家の横断機能を開発するマイクロチームに所属。書くのと喋るのが好きなので、スマートラウンドの良さを社外にもっと伝えたいと思っている。
スマートラウンドに入社するまで
金融ドメインで設計と構築をする毎日
福本:早速ですが、よろしくお願いします!いきなりですが、まずはこれまでの経歴を改めて聞いてみたいなと思いまして。
しおしおさん(以下、敬称略):10年ほど前の話になりますが、クレジットカード会社の基幹システムの構築をやってました。社名はオープンにできないんですけど、皆さんが名前を聞いたことのあるようなクレジットカード会社のWebのシステム構築をしてましたね。
福本:「クレジットカード会社のWebシステム」と聞いて自分が最初にイメージするのは、カードを発行したユーザーのマイページ的なものなんですが、そういう理解であってますか?
しおしお:というよりは顧客情報や残高の管理といった部分ですね。例えば、クレジットカードを発行するときにお客さんの与信・審査をやるんですが、そういう処理をWebでできるようにしたり。
福本:あ、なるほど。そのあたりの機能もWebでやってたんですね。
しおしお:僕はそのシステムのアーキテクトチームで、サービス全体の設計をしてました。他にもパフォーマンスチューニングをひたすらやったりとか...。
福本:(今のしおしおさんを見て「とても想像がつく...」と思いながら)はいはい。
しおしお:とにかく設計をたくさんして、ガッツリとシステム作っていくことをずっとやってましたね。
Javaとはずっと縁があった
しおしお:そこまでいわゆるSIerでずっと仕事をしてたのですが、JavaでWebサービスをたくさん作っている会社でした。社内で「オープンソースのJavaのフレームワークを作るぞ」という雰囲気があったので、それに携わりました。
福本:フレームワークの開発もそこで経験されたんですね!それまでは、受託開発でサービスを作るお仕事をしてきた感じですよね?
しおしお:そうですね。その後、(2018年当時)株式会社ユーザベース子会社だったFORCASに入社して、そこから自社サービスの開発に関わっていきました。そちらでもJavaで開発をしてましたね。
福本:ありがとうございます!少し話が逸れますが、しおしおさんは「Javaのベテランだ」という印象を僕は勝手に持っていて...。
しおしお:もう20年くらいやってますね(笑)
福本:そんな中でKotlinに出会ったのって、いつごろでしょうか?以前、かなり初期にKotlinを触っていたという話を聞いたので...。
しおしお:この時期よりもう少し前ですね。自分の過去のブログを見直してみたんですが、記事にKotlinが最初に登場したのが2012年でした(以下参照)。
福本:2012年!
しおしお:確か当時はまだ正式リリース前どころか、ベータ版ですらなかったですね。
福本:古参ユーザーだ!ちなみになんですが、Kotlinを知ったきっかけって何だったんでしょうか?
しおしお:きっかけは、JetBrainsのIntelliJ IDEAを使ってたことですね。確かJetBrainsが「Scalaっぽい言語を作るぞ」みたいなノリのことを言っていて、発表した時から知ってました。
福本:元からIntelliJ IDEAを使っていた...という経緯があったんですね。IntelliJ IDEAはずっと使ってたんですか?
しおしお:そうですね、昔から個人で買ってました。
福本:面白そうなので、その話も後で聞かせてください。ちなみに、Kotlinを最初に書いたときの感想って覚えてます?
しおしお:覚えてますね。当時は機能もまだ少なかったんですけど、言語仕様的にNonNullをサポートするようになったのは「おっ、アツいな」って思いました。
福本:ぬるぽとオサラバできるんじゃないか的な(笑)
しおしお:まぁ実際はできないんですけど(笑) 当時はAltJavaでGroovyとかがあったりして、できることも全然多かったので「これ流行るんだろうか」という疑問は少しありました。
福本:「これは来るな!」というところまでの可能性は当時感じなかったんですね。
しおしお:正直なかったですね。ただ、触ってみて「手によく馴染む」という感覚はありました。当時Javaもできることが限られていたこともあり、個人のブログではKotlinをよく扱ってましたね。
福本:お仕事でKotlinを使い出したのも、先ほどお話いただいたユーザベースさんの時期からですか?
しおしお:そうですね。当時Kotlinと(フロントエンドで採用されていた)Vue.jsも実務経験はなかったんですけど、その時期からお仕事で触ってました。
IntelliJ IDEA、そしてOSSとの関わり
福本: 話が少し変わるんですが、しおしおさんがたまに「これIntelliJ IDEAのバグかもしれないね」という話をしてるのを見かけて、その度に「よくそんなこと気づくなあ」と思っているんですけど(笑)。見つけ方というか、勘所みたいなのがあるんですか?

しおしお:自分はそもそもEAP(Early Access Program)を気軽に使うので、その中にバグは普通にあったりするんですよね。すると、挙動とか動作に納得いかないところがあったりするので、ひたすら原因を探ってしまいます。
福本:なるほどです。IntelliJ IDEAにもいくつかPR出されてマージもされてましたよね(以下例)。深くまで追っていくと見つかるんですね。
しおしお:自分は何でも深くまで調べるのが好きなので、忙しい時でも分からないことがあったら、そっちを先に理解しようとしちゃいます。
福本:ありがとうございます。しおしおさんはKotlinにもPRが取り込まれてたりして、OSSにもコミットしてるイメージがあるのですが、どういう考えでコミットされてますか?自分が欲しい機能や直したいバグを直す人も居れば、コミット自体を目的にする人もいますよね。
しおしお:割と後者ですね。「ちょっとヒマだからなんか貢献しようかな」ぐらいのテンションで、自分で対応できそうなチケットを探したり。IntelliJ IDEAは本体に入っているプラグインが動かなくて困ってる人がいたので、自分でPR出したりしてました。
福本:いい話ですね。
しおしお:自分はIntelliJ IDEAが結構好きなんですよ。買って困ってる人が居たらなんか手助けしてあげたくて。受託開発時代に、お客さんで困ってる人が居たのでプラグインを作ったりもしました。
福本:すごい。そこまでIntelliJ IDEAが好きになった理由ってありますか?
しおしお:名前は出せないんですけど、当時よく使われてたIDEの使い方がピンとこなくて、あんまり好きじゃなかったんですよね(笑)。IntelliJ IDEAは(当時)英語版しかなくても直感的に使えたので、トライアルして3日後くらいに気づいたらお金を払ってました。
そしてスマートラウンドへ
スカウトを1回無視しました(笑)
福本:ありがとうございます!開発者として面白い話を聞けました。お仕事に話を戻すと、その後スマートラウンドに入社されますが、きっかけは何だったのでしょうか?
しおしお:きっかけは採用媒体で(CTOの)小山さんからスカウトをもらったことですね。別の採用媒体で、それも2回(笑)。多分たまたまなんですけど(笑)。
福本:そんなことあるんですか!1回無視したってことですよね(笑)。
しおしお:1回目は完全に無視しちゃってましたね(笑)。その半年後に2回目のスカウトをもらって返事しました。ユーザベースとスマートラウンドって、以前からKotlinの勉強会をやっていて。1回目のスカウトで社名を覚えた後にそれを知って、後から繋がったんですよね。

福本:勉強会がきっかけだったんですね。今からちょうど1年前くらいですよね。
しおしお:そうですね。ちょうどコロナ禍も収まり出していて、会社とか自分を取り巻く環境も変わってきている中で、「このまま同じ仕事をしていていいんだろうか」と少し悩んでるタイミングでした。小山さんからのスカウトが1週間ズレてたら、多分返信してなかったです(笑)。
福本:文字通り「縁があった」感じですね。ふと思ったのですが、まだ入社して1年経ってなかったんですね。後から入った僕からすると、3年くらいは居るのかなという雰囲気がありました...!!
しおしお:まだ全然、ペーペーですよ。その後は小山さんと面談して「スタートアップのためのサービス」という事業がとても面白そうだったのと、自分がやっていきたい技術スタックともマッチしたので、選考に進んで今に至ります。
「スタートアップの業務を支える」現在
福本:ありがとうございます。では、入社してからの話をしたいんですけど、今やってることを改めて教えてもらえますか?
しおしお:smartroundはスタートアップ側に向けたサービスと投資家側に向けたサービスを両面で提供していますが、その中でも主にスタートアップ側の機能を作っています。分かりやすい機能だと”株主総会”のサービスあたりが良い例ですね。
福本:株主総会はスタートアップ側の主要機能ですよね。開発してる中で腕が鳴るところや面白さを感じる瞬間はありますか?
しおしお:作った機能に対して、すぐにフィードバックがもらえる点でしょうか。社内のカスタマーサクセスの方から喜んでもらえたり、お客さんから「便利になった」という声を直接聞けるのはいいですよね。逆に、ダメ出しもちゃんと貰えたりしますし。

福本:確かに、自分たちがユーザーになれなかったり(※注: スマートラウンドは自社でもsmartroundを使っている)、お客さんから直接声が届きづらいサービスもありますから、開発者としては良い環境ですよね。
しおしお:開発したもの、やったことをきちんと評価してもらえるのはやりがいがありますよね。
子育てとリモートワークに向き合って...
福本:視点を少し変えて、普段のお仕事の進め方みたいな部分を聞かせてください。スマートラウンドはフルリモートですが、お子さんも2人いらっしゃる中で意識してることや工夫してることはありますか?
しおしお: フルリモートだと個人で作業を進める時間が長くなるので、どうでもいいことも含めて、Slackの分報に色んな情報とか考えを書くようにしてます。誰かに反応を期待してるわけじゃないんですが、自分のやってることをアウトプットするイメージです。

福本:結構大事ですよね。自分なりの考えはあっても、もっといいやり方が他の人から出てきたり...。僕はそれで、しおしおさんによく救われています(笑)。
しおしお:リモートだと周りの雰囲気を感じ取ることもできないので、自分は困ってる人の書き込みは、手伝えそう・解決できそうなものは極力反応するように心がけていますね。
福本:他に工夫されてることはありますか?
しおしお:工夫と少し違うんですけど、育児の面では、平日の日中に子供の付き添いとか送り迎えで抜けることが結構あるのですが、そのあたりは気軽にできるのでありがたいです。
福本:スマートラウンドは経営陣を含め育児をしてる方が多いこともあって、組織として「家族を優先しよう」という文化は結構根付いてますよね。
しおしお:そうですね。明言しつつも形骸化しちゃってるケースも世の中にあると思うのですが、そのあたりはみんなも意識しているので自然と気を遣わずにできてます。おかげで、PCの前にいる間はちゃんと集中して仕事できるので、とても働きやすいです。

こんな人と働きたい
福本:最後に、「自分はこんな人と働きたい」というイメージなどは何か持ってますか?
しおしお:「オープンな人と働きたい」というのはありますね。分報の話にも通じるんですけど、自分も成長するけど一緒に働いている人も成長して、結果として組織全体も成長する...という環境を作っていきたいなと思っています。スマートラウンドは若いメンバーも多いので、みんなで成長していきながら、会社も成長して、結果的にみんなのお給料も上がって幸せになれればいいなぁという気持ちはあります。

福本:めちゃくちゃ大事ですよね。自分から見ても、Slackの雰囲気とかも含め、かなりオープンなメンバーが多いですし。経営メンバーからも週次で経営方針とか事業計画も共有されますしね。改めて、本日はありがとうございました!
さいごに
シニアエンジニアであるしおしおさんの、普段なかなかできないような深いお話や技術の昔話も聞けて、とても楽しかったです。
社内でシニアエンジニアとして開発をリードし、一方でOSSに貢献したり育児にコミットしたりと、スマートラウンドで実現できるキャリアの一例をご紹介できたのではないかと思います。
この記事を読んでスマートラウンドにご興味を持った方、もしくはしおしおさん・福本とお話してみたい方がいらっしゃれば、ぜひ以下の採用ページをご覧ください!
カジュアル面談は、こちらのフォームからお申し込みいただけますのでぜひお気軽にご応募ください!
https://docs.google.com/forms/d/e/1FAIpQLSdZohQE7f4wLhkSXfUhXbUM2tJoH0XCrM9T7o-X9P5WWyb4Og/viewform